From 2ac9ef7bb758ad40cc820fef82b4e081626884b0 Mon Sep 17 00:00:00 2001 From: zhaoke Date: Thu, 7 Sep 2023 17:04:24 +0800 Subject: [PATCH] * Fix bug #38377,38382,38380. --- module/instance/js/view.ui.js | 27 +- module/instance/model.php | 2 +- module/instance/ui/view.html.php | 3 +- www/js/zeneditor/index.esm.js | 2 +- www/js/zeneditor/p-0ac27715.js | 2 + www/js/zeneditor/p-2a179bd3.js | 8 + www/js/zeneditor/p-2f984b56.js | 8 + www/js/zeneditor/p-38ad54cb.entry.js | 2 + www/js/zeneditor/p-424dab77.entry.js | 2 + www/js/zeneditor/p-4699db89.js | 8 + www/js/zeneditor/p-6badbcb0.js | 8 + www/js/zeneditor/p-78ddf3b4.js | 8 + www/js/zeneditor/p-8ca4033a.js | 8 + www/js/zeneditor/p-aebcbb44.js | 8 + www/js/zeneditor/p-b80ff9a8.js | 507 +++++++++++++++++++++++ www/js/zeneditor/p-c25de211.entry.js | 2 + www/js/zeneditor/p-c2b7d374.js | 8 + www/js/zeneditor/p-c44acb8b.js | 8 + www/js/zeneditor/p-cd03f47c.js | 8 + www/js/zeneditor/p-d4f0ebdc.js | 8 + www/js/zeneditor/p-e3cc72be.js | 8 + www/js/zeneditor/p-e79ce8c5.js | 8 + www/js/zeneditor/p-f027b047.js | 3 + www/js/zeneditor/p-f29f709f.js | 8 + www/js/zeneditor/tiptap-component.esm.js | 2 +- 25 files changed, 647 insertions(+), 19 deletions(-) create mode 100644 www/js/zeneditor/p-0ac27715.js create mode 100644 www/js/zeneditor/p-2a179bd3.js create mode 100644 www/js/zeneditor/p-2f984b56.js create mode 100644 www/js/zeneditor/p-38ad54cb.entry.js create mode 100644 www/js/zeneditor/p-424dab77.entry.js create mode 100644 www/js/zeneditor/p-4699db89.js create mode 100644 www/js/zeneditor/p-6badbcb0.js create mode 100644 www/js/zeneditor/p-78ddf3b4.js create mode 100644 www/js/zeneditor/p-8ca4033a.js create mode 100644 www/js/zeneditor/p-aebcbb44.js create mode 100644 www/js/zeneditor/p-b80ff9a8.js create mode 100644 www/js/zeneditor/p-c25de211.entry.js create mode 100644 www/js/zeneditor/p-c2b7d374.js create mode 100644 www/js/zeneditor/p-c44acb8b.js create mode 100644 www/js/zeneditor/p-cd03f47c.js create mode 100644 www/js/zeneditor/p-d4f0ebdc.js create mode 100644 www/js/zeneditor/p-e3cc72be.js create mode 100644 www/js/zeneditor/p-e79ce8c5.js create mode 100644 www/js/zeneditor/p-f027b047.js create mode 100644 www/js/zeneditor/p-f29f709f.js diff --git a/module/instance/js/view.ui.js b/module/instance/js/view.ui.js index e6cc927fcc..a10d1c3cc0 100644 --- a/module/instance/js/view.ui.js +++ b/module/instance/js/view.ui.js @@ -1,4 +1,4 @@ -window.openAdminer = function() +$('#mainContent').on('click', '.db-management', function() { var dbName = $(this).data('dbname'); var dbType = $(this).data('dbtype'); @@ -22,25 +22,24 @@ window.openAdminer = function() } } ); -} +}); var reloadTimes = 0; window.afterPageUpdate = function() { + if(reloadTimes > 100 || instanceType != 'store') return; + if($('#statusTD').data('reload') !== true && $('#memoryRate').data('load') !== true) return; + // $('.db-management').addClass('disabled'); setTimeout(function() { - if(reloadTimes > 100 || instanceType != 'store') return; - if($('#statusTD').data('reload') === true || $('#memoryRate').data('load') == true) - { - reloadTimes++; - fetchContent - ({ - url: $.createLink('instance', 'view', 'id=' + instanceID), - selector: '#instanceInfoContainer', - id: 'instanceInfoContainer', - target: '#instanceInfoContainer', - }); - } + reloadTimes++; + loadPage + ({ + url: $.createLink('instance', 'view', 'id=' + instanceID), + selector: '#instanceInfoContainer', + id: 'instanceInfoContainer', + target: '#instanceInfoContainer', + }); }, 4000); } diff --git a/module/instance/model.php b/module/instance/model.php index ba36c6ceff..c345d0647e 100644 --- a/module/instance/model.php +++ b/module/instance/model.php @@ -2053,7 +2053,7 @@ class InstanceModel extends model if($action == 'ajaxStop') return $this->canDo('stop', $instance); if($action == 'ajaxUninstall') return $this->canDo('uninstall', $instance); if($action == 'visit') return !empty($instance->domain) && $this->canDo('visit', $instance); - if($action == 'upgrade') return !empty($instance->latestVersion); + if($action == 'upgrade') return !empty($instance->latestVersion) && in_array($instance->status, array('stopped', 'running')); if($action == 'edit') return false; if($action == 'bindUser') return in_array($instance->appName, array('GitLab', 'Gitea', 'Gogs')); diff --git a/module/instance/ui/view.html.php b/module/instance/ui/view.html.php index 2f4f793160..0de1bf49a4 100644 --- a/module/instance/ui/view.html.php +++ b/module/instance/ui/view.html.php @@ -52,11 +52,10 @@ foreach($dbList as $db) btn ( $lang->instance->management, - setClass('btn text-primary ghost ' . $disabledClass), + setClass('btn text-primary ghost db-management ' . $disabledClass), setData('dbname', $db->name), setData('dbtype', $db->db_type), setData('id', $instance->id), - on::click('openAdminer'), ) ), ); diff --git a/www/js/zeneditor/index.esm.js b/www/js/zeneditor/index.esm.js index 38d4d5e318..3f633e2f27 100644 --- a/www/js/zeneditor/index.esm.js +++ b/www/js/zeneditor/index.esm.js @@ -1,2 +1,2 @@ -export{M as MonacoEditor,T as TiptapEditor}from"./p-9cb0c48e.js";import"./p-fa667546.js";import"./p-0d1d1366.js"; +export{M as MonacoEditor,T as TiptapEditor}from"./p-b80ff9a8.js";import"./p-f027b047.js";import"./p-0d1d1366.js"; //# sourceMappingURL=index.esm.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-0ac27715.js b/www/js/zeneditor/p-0ac27715.js new file mode 100644 index 0000000000..36da7e9be6 --- /dev/null +++ b/www/js/zeneditor/p-0ac27715.js @@ -0,0 +1,2 @@ +var e;ShadowRoot.prototype["createRange"]=document.createRange.bind(document);document.head.insertAdjacentHTML("beforeend",``);const o="tiptap-component.esm.js";const n=(e=performance.getEntriesByType("resource").find((e=>e.name.includes(o))))===null||e===void 0?void 0:e.name;if(n){const e=n.substring(0,n.length-o.length);document.head.insertAdjacentHTML("beforeend",``)} +//# sourceMappingURL=p-0ac27715.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-2a179bd3.js b/www/js/zeneditor/p-2a179bd3.js new file mode 100644 index 0000000000..eddfd86213 --- /dev/null +++ b/www/js/zeneditor/p-2a179bd3.js @@ -0,0 +1,8 @@ +import{b as e}from"./p-b80ff9a8.js";import"./p-f027b047.js";import"./p-0d1d1366.js"; +/*!----------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Version: 0.37.1(20a8d5a651d057aaed7875ad1c1f2ecf13c4e773) + * Released under the MIT license + * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt + *-----------------------------------------------------------------------------*/var t=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var n=Object.prototype.hasOwnProperty;var m=(e,m,l,i)=>{if(m&&typeof m==="object"||typeof m==="function"){for(let o of r(m))if(!n.call(e,o)&&o!==l)t(e,o,{get:()=>m[o],enumerable:!(i=a(m,o))||i.enumerable})}return e};var l=(e,t,a)=>(m(e,t,"default"),a&&m(a,t,"default"));var i={};l(i,e);var o=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"];var s={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["{{!--","--}}"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{{","}}"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp(`<(?!(?:${o.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:i.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp(`<(?!(?:${o.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),action:{indentAction:i.languages.IndentAction.Indent}}]};var d={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/\{\{!--/,"comment.block.start.handlebars","@commentBlock"],[/\{\{!/,"comment.start.handlebars","@comment"],[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.root"}],[/)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)(\w+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/\}\}/,"comment.end.handlebars","@pop"],[/./,"comment.content.handlebars"]],commentBlock:[[/--\}\}/,"comment.block.end.handlebars","@pop"],[/./,"comment.content.handlebars"]],commentHtml:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/\{\{/,{token:"@rematch",switchTo:"@handlebarsInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],handlebarsInSimpleState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3"}],{include:"handlebarsRoot"}],handlebarsInEmbeddedState:[[/\{\{\{?/,"delimiter.handlebars"],[/\}\}\}?/,{token:"delimiter.handlebars",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],{include:"handlebarsRoot"}],handlebarsRoot:[[/"[^"]*"/,"string.handlebars"],[/[#/][^\s}]+/,"keyword.helper.handlebars"],[/else\b/,"keyword.helper.handlebars"],[/[\s]+/],[/[^}]/,"variable.parameter.handlebars"]]}};export{s as conf,d as language}; +//# sourceMappingURL=p-2a179bd3.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-2f984b56.js b/www/js/zeneditor/p-2f984b56.js new file mode 100644 index 0000000000..3719d4adef --- /dev/null +++ b/www/js/zeneditor/p-2f984b56.js @@ -0,0 +1,8 @@ +import{b as e}from"./p-b80ff9a8.js";import"./p-f027b047.js";import"./p-0d1d1366.js"; +/*!----------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Version: 0.37.1(20a8d5a651d057aaed7875ad1c1f2ecf13c4e773) + * Released under the MIT license + * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt + *-----------------------------------------------------------------------------*/var n=Object.defineProperty;var t=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var o=Object.prototype.hasOwnProperty;var l=(e,l,a,i)=>{if(l&&typeof l==="object"||typeof l==="function"){for(let c of r(l))if(!o.call(e,c)&&c!==a)n(e,c,{get:()=>l[c],enumerable:!(i=t(l,c))||i.enumerable})}return e};var a=(e,n,t)=>(l(e,n,"default"),t&&l(t,n,"default"));var i={};a(i,e);var c={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{offSide:true},onEnterRules:[{beforeText:/:\s*$/,action:{indentAction:i.languages.IndentAction.Indent}}]};var u={tokenPostfix:".yaml",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["true","True","TRUE","false","False","FALSE","null","Null","Null","~"],numberInteger:/(?:0|[+-]?[0-9]+)/,numberFloat:/(?:0|[+-]?[0-9]+)(?:\.[0-9]+)?(?:e[-+][1-9][0-9]*)?/,numberOctal:/0o[0-7]+/,numberHex:/0x[0-9a-fA-F]+/,numberInfinity:/[+-]?\.(?:inf|Inf|INF)/,numberNaN:/\.(?:nan|Nan|NAN)/,numberDate:/\d{4}-\d\d-\d\d([Tt ]\d\d:\d\d:\d\d(\.\d+)?(( ?[+-]\d\d?(:\d\d)?)|Z)?)?/,escapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},[/%[^ ]+.*$/,"meta.directive"],[/---/,"operators.directivesEnd"],[/\.{3}/,"operators.documentEnd"],[/[-?:](?= )/,"operators"],{include:"@anchor"},{include:"@tagHandle"},{include:"@flowCollections"},{include:"@blockStyle"},[/@numberInteger(?![ \t]*\S+)/,"number"],[/@numberFloat(?![ \t]*\S+)/,"number.float"],[/@numberOctal(?![ \t]*\S+)/,"number.octal"],[/@numberHex(?![ \t]*\S+)/,"number.hex"],[/@numberInfinity(?![ \t]*\S+)/,"number.infinity"],[/@numberNaN(?![ \t]*\S+)/,"number.nan"],[/@numberDate(?![ \t]*\S+)/,"number.date"],[/(".*?"|'.*?'|[^#'"]*?)([ \t]*)(:)( |$)/,["type","white","operators","white"]],{include:"@flowScalars"},[/.+?(?=(\s+#|$))/,{cases:{"@keywords":"keyword","@default":"string"}}]],object:[{include:"@whitespace"},{include:"@comment"},[/\}/,"@brackets","@pop"],[/,/,"delimiter.comma"],[/:(?= )/,"operators"],[/(?:".*?"|'.*?'|[^,\{\[]+?)(?=: )/,"type"],{include:"@flowCollections"},{include:"@flowScalars"},{include:"@tagHandle"},{include:"@anchor"},{include:"@flowNumber"},[/[^\},]+/,{cases:{"@keywords":"keyword","@default":"string"}}]],array:[{include:"@whitespace"},{include:"@comment"},[/\]/,"@brackets","@pop"],[/,/,"delimiter.comma"],{include:"@flowCollections"},{include:"@flowScalars"},{include:"@tagHandle"},{include:"@anchor"},{include:"@flowNumber"},[/[^\],]+/,{cases:{"@keywords":"keyword","@default":"string"}}]],multiString:[[/^( +).+$/,"string","@multiStringContinued.$1"]],multiStringContinued:[[/^( *).+$/,{cases:{"$1==$S2":"string","@default":{token:"@rematch",next:"@popall"}}}]],whitespace:[[/[ \t\r\n]+/,"white"]],comment:[[/#.*$/,"comment"]],flowCollections:[[/\[/,"@brackets","@array"],[/\{/,"@brackets","@object"]],flowScalars:[[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'[^']*'/,"string"],[/"/,"string","@doubleQuotedString"]],doubleQuotedString:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],blockStyle:[[/[>|][0-9]*[+-]?$/,"operators","@multiString"]],flowNumber:[[/@numberInteger(?=[ \t]*[,\]\}])/,"number"],[/@numberFloat(?=[ \t]*[,\]\}])/,"number.float"],[/@numberOctal(?=[ \t]*[,\]\}])/,"number.octal"],[/@numberHex(?=[ \t]*[,\]\}])/,"number.hex"],[/@numberInfinity(?=[ \t]*[,\]\}])/,"number.infinity"],[/@numberNaN(?=[ \t]*[,\]\}])/,"number.nan"],[/@numberDate(?=[ \t]*[,\]\}])/,"number.date"]],tagHandle:[[/\![^ ]*/,"tag"]],anchor:[[/[&*][^ ]+/,"namespace"]]}};export{c as conf,u as language}; +//# sourceMappingURL=p-2f984b56.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-38ad54cb.entry.js b/www/js/zeneditor/p-38ad54cb.entry.js new file mode 100644 index 0000000000..2041152c8a --- /dev/null +++ b/www/js/zeneditor/p-38ad54cb.entry.js @@ -0,0 +1,2 @@ +import{B as A,m as B,f as E,a as Q,l as g}from"./p-b80ff9a8.js";export{M as monaco_editor,T as tiptap_editor}from"./p-b80ff9a8.js";import{r as R,h as I,F as c,g as w}from"./p-f027b047.js";import{o as G,r as C}from"./p-0d1d1366.js";const Y=".bubble-menu.sc-tiptap-bubble-menu{padding:0.1em;border-radius:0.3em;background-color:#fff;border:1px solid #d8dbde}";var D=undefined&&undefined.__rest||function(A,B){var E={};for(var Q in A)if(Object.prototype.hasOwnProperty.call(A,Q)&&B.indexOf(Q)<0)E[Q]=A[Q];if(A!=null&&typeof Object.getOwnPropertySymbols==="function")for(var g=0,Q=Object.getOwnPropertySymbols(A);gfalse:({view:A,state:B,from:E,to:Q})=>{var g;if((g=A.input)===null||g===void 0?void 0:g.mouseDown){return false}const{doc:M,selection:R}=B;const I=!Boolean(M.textBetween(E,Q).length)&&G(R);if(!A.hasFocus()||R.empty||I){return false}return true})}=this.menuProps;const g=A({pluginKey:B,editor:this.editor,element:this.element,tippyOptions:E,shouldShow:Q});this.editor.registerPlugin(g)}render(){const{editor:A}=this;const B=[{icon:"ci-bold",title:"Bold",action:()=>A.chain().focus().toggleBold().run(),isActive:()=>A.isActive("bold")},{icon:"ci-italic",title:"Italic",action:()=>A.chain().focus().toggleItalic().run(),isActive:()=>A.isActive("italic")},{icon:"ci-strikethrough",title:"Strike",action:()=>A.chain().focus().toggleStrike().run(),isActive:()=>A.isActive("strike")},{icon:"ci-code",title:"Code",action:()=>A.chain().focus().toggleCode().run(),isActive:()=>A.isActive("code")},{icon:"ci-bulb",title:"Highlight",action:()=>A.chain().focus().toggleHighlight().run(),isActive:()=>A.isActive("highlight")}];return I("div",{ref:A=>this.element=A,class:"bubble-menu",style:{visibility:"hidden"}},B.map(((A,B)=>{const E=A,{isHidden:Q,type:g}=E,M=D(E,["isHidden","type"]);if(Q&&Q()){return}return g==="divider"?I("div",{class:"divider",key:B}):I("tiptap-menu-item",{itemProps:Object.assign({},M),key:B})})))}};i.style=Y;const e='.ProseMirror>*+*{margin-top:0.75em}.ProseMirror ul,.ProseMirror ol{padding:0 1em}.ProseMirror h1,.ProseMirror h2,.ProseMirror h3,.ProseMirror h4,.ProseMirror h5,.ProseMirror h6{line-height:1.1}.ProseMirror code{background-color:rgba(97, 97, 97, 0.1);color:#616161}.ProseMirror pre{background:#0d0d0d;border-radius:0.5em;color:#fff;font-family:"JetBrainsMono", monospace;padding:0.75em 1em}.ProseMirror pre code{background:none;color:inherit;font-size:0.8em;padding:0}.ProseMirror pre .hljs-comment,.ProseMirror pre .hljs-quote{color:#616161}.ProseMirror pre .hljs-variable,.ProseMirror pre .hljs-template-variable,.ProseMirror pre .hljs-attribute,.ProseMirror pre .hljs-tag,.ProseMirror pre .hljs-name,.ProseMirror pre .hljs-regexp,.ProseMirror pre .hljs-link,.ProseMirror pre .hljs-selector-id,.ProseMirror pre .hljs-selector-class{color:#f98181}.ProseMirror pre .hljs-number,.ProseMirror pre .hljs-meta,.ProseMirror pre .hljs-built_in,.ProseMirror pre .hljs-builtin-name,.ProseMirror pre .hljs-literal,.ProseMirror pre .hljs-type,.ProseMirror pre .hljs-params{color:#fbbc88}.ProseMirror pre .hljs-string,.ProseMirror pre .hljs-symbol,.ProseMirror pre .hljs-bullet{color:#b9f18d}.ProseMirror pre .hljs-title,.ProseMirror pre .hljs-section{color:#faf594}.ProseMirror pre .hljs-keyword,.ProseMirror pre .hljs-selector-tag{color:#70cff8}.ProseMirror pre .hljs-emphasis{font-style:italic}.ProseMirror pre .hljs-strong{font-weight:700}.ProseMirror mark{background-color:#faf594}.ProseMirror img{height:auto;max-width:100%}.ProseMirror blockquote{border-left:2px solid rgba(13, 13, 13, 0.1);padding-left:1em}.ProseMirror hr{border:none;border-top:2px solid rgba(13, 13, 13, 0.1);margin:2em 0}.ProseMirror ul[data-type=taskList]{list-style:none;padding:0}.ProseMirror ul[data-type=taskList] li{align-items:center;display:flex}.ProseMirror ul[data-type=taskList] li>label{flex:0 0 auto;margin-right:0.5em;user-select:none}.ProseMirror ul[data-type=taskList] li>div{flex:1 1 auto}.ProseMirror ul[data-type=taskList] li>div>p{margin:0.1em 0}.ProseMirror table{border-collapse:collapse;table-layout:fixed;margin:8px 0;overflow:hidden}.ProseMirror table td,.ProseMirror table th{min-width:1em;border:1px solid #616161;padding:3px 5px;vertical-align:top;box-sizing:border-box;position:relative}.ProseMirror table td>*,.ProseMirror table th>*{margin-bottom:0}.ProseMirror table th{font-weight:bold;text-align:left;background-color:#f1f3f5}.ProseMirror table .selectedCell:after{z-index:2;position:absolute;content:"";left:0;right:0;top:0;bottom:0;background:rgba(200, 200, 255, 0.4);pointer-events:none}.ProseMirror table .column-resize-handle{position:absolute;right:-2px;top:0;bottom:-2px;width:3px;background-color:#ace;pointer-events:none}.ProseMirror p.is-editor-empty:first-child::before{color:#adb5bd;content:attr(data-placeholder);float:left;height:0;pointer-events:none}.ProseMirror.resize-cursor{cursor:ew-resize;cursor:col-resize}.ProseMirror:focus{outline:none}';var F=undefined&&undefined.__rest||function(A,B){var E={};for(var Q in A)if(Object.prototype.hasOwnProperty.call(A,Q)&&B.indexOf(Q)<0)E[Q]=A[Q];if(A!=null&&typeof Object.getOwnPropertySymbols==="function")for(var g=0,Q=Object.getOwnPropertySymbols(A);gthis.editorContentRef=A},B)))}};k.style=e;const U='@font-face{font-family:\'coolicons\';src:url(data:application/font-woff;base64,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BAAAgAQAAIAEAACABAAAgAQAAKsEAACrBAAA1QQAAKsEAACrBAAAqwQAAKsEAACrBAAAqwQAAKsEAACABAAAqwQAAKsEAACrBAAAVQQAAIAEAACABAAAVQQAAIAEAABVBAAAVQQAAFUEAABVBAAAVQQAAFUEAABVBAAAVQQAAFUEAABVBAAAVQQAAFUEAABVBAAAVQQAAFUEAABVBAAAVQQAAFUEAACrBAAAZwQAAFUEAABVBAAAVQQAAFUEAABVBAAAVQQAAQAEAABVBAAAVQQAAG0EAAEzBAAARgQAAIAEAACABAAAKwQAAIAEAACABAAAgAQAAIAEAABVBAAAVQQAAFUEAAA0BAABKwQAACsEAACABAAAKwQAAFUEAABVBAAAqwQAAdUEAAHVBAAB1QQAAdUEAACABAAAVQQAAFUEAAErBAAAlAQAAFUEAACABAAAgAQAAH8EAABVBAAAqwQAAKsEAACABAAAgAQAAIAEAABVBAAAVQQAAFUEAABVBAAANAQAAKsEAABVBAAAqQQAAKsEAACrBAAAqwQAAKsEAACrBAAAVQQAAKsEAAEABAABAAQAAIAEAACABAAAVQQAAKsEAAErBAAAqwQAAasEAADVBAAAVQQAAVUEAABVBAAAVQQAAG8EAACABAAAgAQAAIAEAACABAAAVQQAAFUEAABVBAAAVQQAAFUEAABIBAAAKwQAAJcEAAEABAAAVQQAAFUEAACABAAAVQQAADAEAABVBAAAqwQAAFUEAABVBAAAgAQAAIAEAACABAAAVQQAAIAEAABVBAAA1QQAAFUEAACABAAAcAQAAFUEAABVBAAAVQQAAGQEAAArBAAAVQQAAIAEAACABAAAgAQAAIAEAABVBAAAZwQAAFUEAABVBAAARgQAAKsEAABVBAABgAQAAYAEAAEABAAA1QQAAFUEAABVBAAAVQQAAIAEAACABAAAVQQAAFUEAABVBAAAVQQAAEcEAABVBAAAVQQAAKsEAACABAAAVQQAACsEAABVBAAAKwQAACsEAABVBAAAVQQAAIAEAABVBAAAgAQAAJEEAABVBAAAgAQAAIAEAACABAAAgAQAANUEAABVBAAAgAQAAIAEAACABAAAgAQAAIAEAACABAAAgAQAAIAEAABZBAAAWQQAAFkEAADVBAAAqwQAASsEAAErBAAAqwQAAIAEAADV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)\n format(\'woff\');font-weight:normal;font-style:normal;font-display:block}i.coolicons.sc-tiptap-menu-item{font-family:\'coolicons\' !important;speak:never;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ci-add_column.sc-tiptap-menu-item:before{content:"\\e900"}.ci-add_minus_square.sc-tiptap-menu-item:before{content:"\\e901"}.ci-add_plus_circle.sc-tiptap-menu-item:before{content:"\\e902"}.ci-add_plus_square.sc-tiptap-menu-item:before{content:"\\e903"}.ci-add_plus.sc-tiptap-menu-item:before{content:"\\e904"}.ci-add_row.sc-tiptap-menu-item:before{content:"\\e905"}.ci-add_to_queue.sc-tiptap-menu-item:before{content:"\\e906"}.ci-airplay.sc-tiptap-menu-item:before{content:"\\e907"}.ci-alarm.sc-tiptap-menu-item:before{content:"\\e908"}.ci-archive.sc-tiptap-menu-item:before{content:"\\e909"}.ci-arrow_circle_down_left.sc-tiptap-menu-item:before{content:"\\e90a"}.ci-arrow_circle_down_right.sc-tiptap-menu-item:before{content:"\\e90b"}.ci-arrow_circle_down.sc-tiptap-menu-item:before{content:"\\e90c"}.ci-arrow_circle_left.sc-tiptap-menu-item:before{content:"\\e90d"}.ci-arrow_circle_right.sc-tiptap-menu-item:before{content:"\\e90e"}.ci-arrow_circle_up_left.sc-tiptap-menu-item:before{content:"\\e90f"}.ci-arrow_circle_up_right.sc-tiptap-menu-item:before{content:"\\e910"}.ci-arrow_circle_up.sc-tiptap-menu-item:before{content:"\\e911"}.ci-arrow_down_left_lg.sc-tiptap-menu-item:before{content:"\\e912"}.ci-arrow_down_left_md.sc-tiptap-menu-item:before{content:"\\e913"}.ci-arrow_down_left_sm.sc-tiptap-menu-item:before{content:"\\e914"}.ci-arrow_down_lg.sc-tiptap-menu-item:before{content:"\\e915"}.ci-arrow_down_md.sc-tiptap-menu-item:before{content:"\\e916"}.ci-arrow_down_right_lg.sc-tiptap-menu-item:before{content:"\\e917"}.ci-arrow_down_right_md.sc-tiptap-menu-item:before{content:"\\e918"}.ci-arrow_down_right_sm.sc-tiptap-menu-item:before{content:"\\e919"}.ci-arrow_down_sm.sc-tiptap-menu-item:before{content:"\\e91a"}.ci-arrow_down_up.sc-tiptap-menu-item:before{content:"\\e91b"}.ci-arrow_left_lg.sc-tiptap-menu-item:before{content:"\\e91c"}.ci-arrow_left_md.sc-tiptap-menu-item:before{content:"\\e91d"}.ci-arrow_left_right.sc-tiptap-menu-item:before{content:"\\e91e"}.ci-arrow_left_sm.sc-tiptap-menu-item:before{content:"\\e91f"}.ci-arrow_reload_02.sc-tiptap-menu-item:before{content:"\\e920"}.ci-arrow_right_lg.sc-tiptap-menu-item:before{content:"\\e921"}.ci-arrow_right_md.sc-tiptap-menu-item:before{content:"\\e922"}.ci-arrow_right_sm.sc-tiptap-menu-item:before{content:"\\e923"}.ci-arrow_sub_down_left.sc-tiptap-menu-item:before{content:"\\e924"}.ci-arrow_sub_down_right.sc-tiptap-menu-item:before{content:"\\e925"}.ci-arrow_sub_left_down.sc-tiptap-menu-item:before{content:"\\e926"}.ci-arrow_sub_left_up.sc-tiptap-menu-item:before{content:"\\e927"}.ci-arrow_sub_right_down.sc-tiptap-menu-item:before{content:"\\e928"}.ci-arrow_sub_right_up.sc-tiptap-menu-item:before{content:"\\e929"}.ci-arrow_sub_up_left.sc-tiptap-menu-item:before{content:"\\e92a"}.ci-arrow_sub_up_right.sc-tiptap-menu-item:before{content:"\\e92b"}.ci-arrow_undo_down_left.sc-tiptap-menu-item:before{content:"\\e92c"}.ci-arrow_undo_down_right.sc-tiptap-menu-item:before{content:"\\e92d"}.ci-arrow_undo_up_left.sc-tiptap-menu-item:before{content:"\\e92e"}.ci-arrow_undo_up_right.sc-tiptap-menu-item:before{content:"\\e92f"}.ci-arrow_up_left_lg.sc-tiptap-menu-item:before{content:"\\e930"}.ci-arrow_up_left_md.sc-tiptap-menu-item:before{content:"\\e931"}.ci-arrow_up_left_sm.sc-tiptap-menu-item:before{content:"\\e932"}.ci-arrow_up_lg.sc-tiptap-menu-item:before{content:"\\e933"}.ci-arrow_up_md.sc-tiptap-menu-item:before{content:"\\e934"}.ci-arrow_up_right_lg.sc-tiptap-menu-item:before{content:"\\e935"}.ci-arrow_up_right_md.sc-tiptap-menu-item:before{content:"\\e936"}.ci-arrow_up_right_sm.sc-tiptap-menu-item:before{content:"\\e937"}.ci-arrow_up_sm.sc-tiptap-menu-item:before{content:"\\e938"}.ci-arrows_reload_01.sc-tiptap-menu-item:before{content:"\\e939"}.ci-bar_bottom.sc-tiptap-menu-item:before{content:"\\e93a"}.ci-bar_left.sc-tiptap-menu-item:before{content:"\\e93b"}.ci-bar_right.sc-tiptap-menu-item:before{content:"\\e93c"}.ci-bar_top.sc-tiptap-menu-item:before{content:"\\e93d"}.ci-bell_add.sc-tiptap-menu-item:before{content:"\\e93e"}.ci-bell_close.sc-tiptap-menu-item:before{content:"\\e93f"}.ci-bell_notification.sc-tiptap-menu-item:before{content:"\\e940"}.ci-bell_off.sc-tiptap-menu-item:before{content:"\\e941"}.ci-bell_remove.sc-tiptap-menu-item:before{content:"\\e942"}.ci-bell_ring.sc-tiptap-menu-item:before{content:"\\e943"}.ci-bell.sc-tiptap-menu-item:before{content:"\\e944"}.ci-bold.sc-tiptap-menu-item:before{content:"\\e945"}.ci-book_open.sc-tiptap-menu-item:before{content:"\\e946"}.ci-book.sc-tiptap-menu-item:before{content:"\\e947"}.ci-bookmark.sc-tiptap-menu-item:before{content:"\\e948"}.ci-building_01.sc-tiptap-menu-item:before{content:"\\e949"}.ci-building_02.sc-tiptap-menu-item:before{content:"\\e94a"}.ci-building_03.sc-tiptap-menu-item:before{content:"\\e94b"}.ci-building_04.sc-tiptap-menu-item:before{content:"\\e94c"}.ci-bulb.sc-tiptap-menu-item:before{content:"\\e94d"}.ci-calendar_add.sc-tiptap-menu-item:before{content:"\\e94e"}.ci-calendar_check.sc-tiptap-menu-item:before{content:"\\e94f"}.ci-calendar_close.sc-tiptap-menu-item:before{content:"\\e950"}.ci-calendar_days.sc-tiptap-menu-item:before{content:"\\e951"}.ci-calendar_event.sc-tiptap-menu-item:before{content:"\\e952"}.ci-calendar_remove.sc-tiptap-menu-item:before{content:"\\e953"}.ci-calendar_week.sc-tiptap-menu-item:before{content:"\\e954"}.ci-calendar.sc-tiptap-menu-item:before{content:"\\e955"}.ci-camera.sc-tiptap-menu-item:before{content:"\\e956"}.ci-car_auto.sc-tiptap-menu-item:before{content:"\\e957"}.ci-caret_circle_down.sc-tiptap-menu-item:before{content:"\\e958"}.ci-caret_circle_left.sc-tiptap-menu-item:before{content:"\\e959"}.ci-caret_circle_right.sc-tiptap-menu-item:before{content:"\\e95a"}.ci-caret_circle_up.sc-tiptap-menu-item:before{content:"\\e95b"}.ci-caret_down_md.sc-tiptap-menu-item:before{content:"\\e95c"}.ci-caret_down_sm.sc-tiptap-menu-item:before{content:"\\e95d"}.ci-caret_left_sm.sc-tiptap-menu-item:before{content:"\\e95e"}.ci-caret_right_sm.sc-tiptap-menu-item:before{content:"\\e95f"}.ci-caret_up_md.sc-tiptap-menu-item:before{content:"\\e960"}.ci-caret_up_sm.sc-tiptap-menu-item:before{content:"\\e961"}.ci-chart_bar_horizontal_01.sc-tiptap-menu-item:before{content:"\\e962"}.ci-chart_bar_vertical_01.sc-tiptap-menu-item:before{content:"\\e963"}.ci-chart_line.sc-tiptap-menu-item:before{content:"\\e964"}.ci-chart_pie.sc-tiptap-menu-item:before{content:"\\e965"}.ci-chat_add.sc-tiptap-menu-item:before{content:"\\e966"}.ci-chat_check.sc-tiptap-menu-item:before{content:"\\e967"}.ci-chat_circle_add.sc-tiptap-menu-item:before{content:"\\e968"}.ci-chat_circle_check.sc-tiptap-menu-item:before{content:"\\e969"}.ci-chat_circle_close.sc-tiptap-menu-item:before{content:"\\e96a"}.ci-chat_circle_dots.sc-tiptap-menu-item:before{content:"\\e96b"}.ci-chat_circle_remove.sc-tiptap-menu-item:before{content:"\\e96c"}.ci-chat_circle.sc-tiptap-menu-item:before{content:"\\e96d"}.ci-chat_close.sc-tiptap-menu-item:before{content:"\\e96e"}.ci-chat_conversation_circle.sc-tiptap-menu-item:before{content:"\\e96f"}.ci-chat_conversation.sc-tiptap-menu-item:before{content:"\\e970"}.ci-chat_dots.sc-tiptap-menu-item:before{content:"\\e971"}.ci-chat_remove.sc-tiptap-menu-item:before{content:"\\e972"}.ci-chat.sc-tiptap-menu-item:before{content:"\\e973"}.ci-check_all_big.sc-tiptap-menu-item:before{content:"\\e974"}.ci-check_all.sc-tiptap-menu-item:before{content:"\\e975"}.ci-check_big.sc-tiptap-menu-item:before{content:"\\e976"}.ci-check.sc-tiptap-menu-item:before{content:"\\e977"}.ci-checkbox_check.sc-tiptap-menu-item:before{content:"\\e978"}.ci-checkbox_fill.sc-tiptap-menu-item:before{content:"\\e979"}.ci-checkbox_unchecked.sc-tiptap-menu-item:before{content:"\\e97a"}.ci-chevron_down_duo.sc-tiptap-menu-item:before{content:"\\e97b"}.ci-chevron_down.sc-tiptap-menu-item:before{content:"\\e97c"}.ci-chevron_left_duo.sc-tiptap-menu-item:before{content:"\\e97d"}.ci-chevron_left_md.sc-tiptap-menu-item:before{content:"\\e97e"}.ci-chevron_left.sc-tiptap-menu-item:before{content:"\\e97f"}.ci-chevron_right_duo.sc-tiptap-menu-item:before{content:"\\e980"}.ci-chevron_right_md.sc-tiptap-menu-item:before{content:"\\e981"}.ci-chevron_right.sc-tiptap-menu-item:before{content:"\\e982"}.ci-chevron_up_duo.sc-tiptap-menu-item:before{content:"\\e983"}.ci-chevron_up.sc-tiptap-menu-item:before{content:"\\e984"}.ci-chromecast.sc-tiptap-menu-item:before{content:"\\e985"}.ci-circle_check.sc-tiptap-menu-item:before{content:"\\e986"}.ci-circle_help.sc-tiptap-menu-item:before{content:"\\e987"}.ci-circle_warning.sc-tiptap-menu-item:before{content:"\\e988"}.ci-circle.sc-tiptap-menu-item:before{content:"\\e989"}.ci-clock.sc-tiptap-menu-item:before{content:"\\e98a"}.ci-close_circle.sc-tiptap-menu-item:before{content:"\\e98b"}.ci-close_lg.sc-tiptap-menu-item:before{content:"\\e98c"}.ci-close_md.sc-tiptap-menu-item:before{content:"\\e98d"}.ci-close_sm.sc-tiptap-menu-item:before{content:"\\e98e"}.ci-close_square.sc-tiptap-menu-item:before{content:"\\e98f"}.ci-cloud_add.sc-tiptap-menu-item:before{content:"\\e990"}.ci-cloud_check.sc-tiptap-menu-item:before{content:"\\e991"}.ci-cloud_close.sc-tiptap-menu-item:before{content:"\\e992"}.ci-cloud_download.sc-tiptap-menu-item:before{content:"\\e993"}.ci-cloud_off.sc-tiptap-menu-item:before{content:"\\e994"}.ci-cloud_remove.sc-tiptap-menu-item:before{content:"\\e995"}.ci-cloud_upload.sc-tiptap-menu-item:before{content:"\\e996"}.ci-cloud.sc-tiptap-menu-item:before{content:"\\e997"}.ci-code.sc-tiptap-menu-item:before{content:"\\e998"}.ci-coffe_to_go.sc-tiptap-menu-item:before{content:"\\e999"}.ci-coffee.sc-tiptap-menu-item:before{content:"\\e99a"}.ci-columns.sc-tiptap-menu-item:before{content:"\\e99b"}.ci-combine_cells.sc-tiptap-menu-item:before{content:"\\e99c"}.ci-command.sc-tiptap-menu-item:before{content:"\\e99d"}.ci-compass.sc-tiptap-menu-item:before{content:"\\e99e"}.ci-cookie.sc-tiptap-menu-item:before{content:"\\e99f"}.ci-copy.sc-tiptap-menu-item:before{content:"\\e9a0"}.ci-credit_card_01.sc-tiptap-menu-item:before{content:"\\e9a1"}.ci-credit_card_02.sc-tiptap-menu-item:before{content:"\\e9a2"}.ci-crop.sc-tiptap-menu-item:before{content:"\\e9a3"}.ci-cupcake.sc-tiptap-menu-item:before{content:"\\e9a4"}.ci-cylinder.sc-tiptap-menu-item:before{content:"\\e9a5"}.ci-data.sc-tiptap-menu-item:before{content:"\\e9a6"}.ci-delete_column.sc-tiptap-menu-item:before{content:"\\e9a7"}.ci-delete_row.sc-tiptap-menu-item:before{content:"\\e9a8"}.ci-desktop_tower.sc-tiptap-menu-item:before{content:"\\e9a9"}.ci-desktop.sc-tiptap-menu-item:before{content:"\\e9aa"}.ci-devices.sc-tiptap-menu-item:before{content:"\\e9ab"}.ci-double_quotes_l.sc-tiptap-menu-item:before{content:"\\e9ac"}.ci-double_quotes_r.sc-tiptap-menu-item:before{content:"\\e9ad"}.ci-download_package.sc-tiptap-menu-item:before{content:"\\e9ae"}.ci-download.sc-tiptap-menu-item:before{content:"\\e9af"}.ci-drag_horizontal.sc-tiptap-menu-item:before{content:"\\e9b0"}.ci-drag_vertical.sc-tiptap-menu-item:before{content:"\\e9b1"}.ci-dummy_circle_small.sc-tiptap-menu-item:before{content:"\\e9b2"}.ci-dummy_circle.sc-tiptap-menu-item:before{content:"\\e9b3"}.ci-dummy_square_small.sc-tiptap-menu-item:before{content:"\\e9b4"}.ci-dummy_square.sc-tiptap-menu-item:before{content:"\\e9b5"}.ci-edit_pencil_01.sc-tiptap-menu-item:before{content:"\\e9b6"}.ci-edit_pencil_02.sc-tiptap-menu-item:before{content:"\\e9b7"}.ci-edit_pencil_line_01.sc-tiptap-menu-item:before{content:"\\e9b8"}.ci-edit_pencil_line_02.sc-tiptap-menu-item:before{content:"\\e9b9"}.ci-exit.sc-tiptap-menu-item:before{content:"\\e9ba"}.ci-expand.sc-tiptap-menu-item:before{content:"\\e9bb"}.ci-external_link.sc-tiptap-menu-item:before{content:"\\e9bc"}.ci-figma.sc-tiptap-menu-item:before{content:"\\e9bd"}.ci-file_add.sc-tiptap-menu-item:before{content:"\\e9be"}.ci-file_blank.sc-tiptap-menu-item:before{content:"\\e9bf"}.ci-file_check.sc-tiptap-menu-item:before{content:"\\e9c0"}.ci-file_close.sc-tiptap-menu-item:before{content:"\\e9c1"}.ci-file_code.sc-tiptap-menu-item:before{content:"\\e9c2"}.ci-file_document.sc-tiptap-menu-item:before{content:"\\e9c3"}.ci-file_download.sc-tiptap-menu-item:before{content:"\\e9c4"}.ci-file_edit.sc-tiptap-menu-item:before{content:"\\e9c5"}.ci-file_remove.sc-tiptap-menu-item:before{content:"\\e9c6"}.ci-file_search.sc-tiptap-menu-item:before{content:"\\e9c7"}.ci-file_upload.sc-tiptap-menu-item:before{content:"\\e9c8"}.ci-files.sc-tiptap-menu-item:before{content:"\\e9c9"}.ci-filter_off.sc-tiptap-menu-item:before{content:"\\e9ca"}.ci-filter.sc-tiptap-menu-item:before{content:"\\e9cb"}.ci-first_aid.sc-tiptap-menu-item:before{content:"\\e9cc"}.ci-flag.sc-tiptap-menu-item:before{content:"\\e9cd"}.ci-folder_add.sc-tiptap-menu-item:before{content:"\\e9ce"}.ci-folder_check.sc-tiptap-menu-item:before{content:"\\e9cf"}.ci-folder_close.sc-tiptap-menu-item:before{content:"\\e9d0"}.ci-folder_code.sc-tiptap-menu-item:before{content:"\\e9d1"}.ci-folder_document.sc-tiptap-menu-item:before{content:"\\e9d2"}.ci-folder_download.sc-tiptap-menu-item:before{content:"\\e9d3"}.ci-folder_edit.sc-tiptap-menu-item:before{content:"\\e9d4"}.ci-folder_open.sc-tiptap-menu-item:before{content:"\\e9d5"}.ci-folder_remove.sc-tiptap-menu-item:before{content:"\\e9d6"}.ci-folder_search.sc-tiptap-menu-item:before{content:"\\e9d7"}.ci-folder_upload.sc-tiptap-menu-item:before{content:"\\e9d8"}.ci-folder.sc-tiptap-menu-item:before{content:"\\e9d9"}.ci-folders.sc-tiptap-menu-item:before{content:"\\e9da"}.ci-font.sc-tiptap-menu-item:before{content:"\\e9db"}.ci-forward.sc-tiptap-menu-item:before{content:"\\e9dc"}.ci-gift.sc-tiptap-menu-item:before{content:"\\e9dd"}.ci-globe.sc-tiptap-menu-item:before{content:"\\e9de"}.ci-hamburger_lg.sc-tiptap-menu-item:before{content:"\\e9df"}.ci-hamburger_md.sc-tiptap-menu-item:before{content:"\\e9e0"}.ci-handbag.sc-tiptap-menu-item:before{content:"\\e9e1"}.ci-heading_h1.sc-tiptap-menu-item:before{content:"\\e9e2"}.ci-heading_h2.sc-tiptap-menu-item:before{content:"\\e9e3"}.ci-heading_h3.sc-tiptap-menu-item:before{content:"\\e9e4"}.ci-heading_h4.sc-tiptap-menu-item:before{content:"\\e9e5"}.ci-heading_h5.sc-tiptap-menu-item:before{content:"\\e9e6"}.ci-heading_h6.sc-tiptap-menu-item:before{content:"\\e9e7"}.ci-heading.sc-tiptap-menu-item:before{content:"\\e9e8"}.ci-headphones.sc-tiptap-menu-item:before{content:"\\e9e9"}.ci-heart_01.sc-tiptap-menu-item:before{content:"\\e9ea"}.ci-heart_02.sc-tiptap-menu-item:before{content:"\\e9eb"}.ci-help.sc-tiptap-menu-item:before{content:"\\e9ec"}.ci-hide.sc-tiptap-menu-item:before{content:"\\e9ed"}.ci-house_01.sc-tiptap-menu-item:before{content:"\\e9ee"}.ci-house_02.sc-tiptap-menu-item:before{content:"\\e9ef"}.ci-house_03.sc-tiptap-menu-item:before{content:"\\e9f0"}.ci-house_add.sc-tiptap-menu-item:before{content:"\\e9f1"}.ci-house_check.sc-tiptap-menu-item:before{content:"\\e9f2"}.ci-house_close.sc-tiptap-menu-item:before{content:"\\e9f3"}.ci-house_remove.sc-tiptap-menu-item:before{content:"\\e9f4"}.ci-image_01.sc-tiptap-menu-item:before{content:"\\e9f5"}.ci-image_02.sc-tiptap-menu-item:before{content:"\\e9f6"}.ci-info.sc-tiptap-menu-item:before{content:"\\e9f7"}.ci-instance.sc-tiptap-menu-item:before{content:"\\e9f8"}.ci-italic.sc-tiptap-menu-item:before{content:"\\e9f9"}.ci-keyboard.sc-tiptap-menu-item:before{content:"\\e9fa"}.ci-label.sc-tiptap-menu-item:before{content:"\\e9fb"}.ci-laptop.sc-tiptap-menu-item:before{content:"\\e9fc"}.ci-layer.sc-tiptap-menu-item:before{content:"\\e9fd"}.ci-layers.sc-tiptap-menu-item:before{content:"\\e9fe"}.ci-leaf.sc-tiptap-menu-item:before{content:"\\e9ff"}.ci-line_l.sc-tiptap-menu-item:before{content:"\\ea00"}.ci-line_m.sc-tiptap-menu-item:before{content:"\\ea01"}.ci-line_s.sc-tiptap-menu-item:before{content:"\\ea02"}.ci-line_xl.sc-tiptap-menu-item:before{content:"\\ea03"}.ci-link_break.sc-tiptap-menu-item:before{content:"\\ea04"}.ci-link_horizontal_off.sc-tiptap-menu-item:before{content:"\\ea05"}.ci-link_horizontal.sc-tiptap-menu-item:before{content:"\\ea06"}.ci-link_vertical.sc-tiptap-menu-item:before{content:"\\ea07"}.ci-link.sc-tiptap-menu-item:before{content:"\\ea08"}.ci-list_add.sc-tiptap-menu-item:before{content:"\\ea09"}.ci-list_check.sc-tiptap-menu-item:before{content:"\\ea0a"}.ci-list_checklist.sc-tiptap-menu-item:before{content:"\\ea0b"}.ci-list_ordered.sc-tiptap-menu-item:before{content:"\\ea0c"}.ci-list_remove.sc-tiptap-menu-item:before{content:"\\ea0d"}.ci-list_unordered.sc-tiptap-menu-item:before{content:"\\ea0e"}.ci-loading.sc-tiptap-menu-item:before{content:"\\ea0f"}.ci-lock_open.sc-tiptap-menu-item:before{content:"\\ea10"}.ci-lock.sc-tiptap-menu-item:before{content:"\\ea11"}.ci-log_out.sc-tiptap-menu-item:before{content:"\\ea12"}.ci-magnifying_glass_minus.sc-tiptap-menu-item:before{content:"\\ea13"}.ci-magnifying_glass_plus.sc-tiptap-menu-item:before{content:"\\ea14"}.ci-mail_open.sc-tiptap-menu-item:before{content:"\\ea15"}.ci-mail.sc-tiptap-menu-item:before{content:"\\ea16"}.ci-main_component.sc-tiptap-menu-item:before{content:"\\ea17"}.ci-map_pin.sc-tiptap-menu-item:before{content:"\\ea18"}.ci-map.sc-tiptap-menu-item:before{content:"\\ea19"}.ci-mention.sc-tiptap-menu-item:before{content:"\\ea1a"}.ci-menu_alt_01.sc-tiptap-menu-item:before{content:"\\ea1b"}.ci-menu_alt_02.sc-tiptap-menu-item:before{content:"\\ea1c"}.ci-menu_alt_03.sc-tiptap-menu-item:before{content:"\\ea1d"}.ci-menu_alt_04.sc-tiptap-menu-item:before{content:"\\ea1e"}.ci-menu_alt_05.sc-tiptap-menu-item:before{content:"\\ea1f"}.ci-menu_duo_lg.sc-tiptap-menu-item:before{content:"\\ea20"}.ci-menu_duo_md.sc-tiptap-menu-item:before{content:"\\ea21"}.ci-mobile_button.sc-tiptap-menu-item:before{content:"\\ea22"}.ci-mobile.sc-tiptap-menu-item:before{content:"\\ea23"}.ci-monitor_play.sc-tiptap-menu-item:before{content:"\\ea24"}.ci-monitor.sc-tiptap-menu-item:before{content:"\\ea25"}.ci-moon.sc-tiptap-menu-item:before{content:"\\ea26"}.ci-more_grid_big.sc-tiptap-menu-item:before{content:"\\ea27"}.ci-more_grid_small.sc-tiptap-menu-item:before{content:"\\ea28"}.ci-more_horizontal.sc-tiptap-menu-item:before{content:"\\ea29"}.ci-more_vertical.sc-tiptap-menu-item:before{content:"\\ea2a"}.ci-mouse.sc-tiptap-menu-item:before{content:"\\ea2b"}.ci-move_horizontal.sc-tiptap-menu-item:before{content:"\\ea2c"}.ci-move_vertical.sc-tiptap-menu-item:before{content:"\\ea2d"}.ci-move.sc-tiptap-menu-item:before{content:"\\ea2e"}.ci-moving_desk.sc-tiptap-menu-item:before{content:"\\ea2f"}.ci-navigation.sc-tiptap-menu-item:before{content:"\\ea30"}.ci-note_edit.sc-tiptap-menu-item:before{content:"\\ea31"}.ci-note_search.sc-tiptap-menu-item:before{content:"\\ea32"}.ci-note.sc-tiptap-menu-item:before{content:"\\ea33"}.ci-notebook.sc-tiptap-menu-item:before{content:"\\ea34"}.ci-octagon_check.sc-tiptap-menu-item:before{content:"\\ea35"}.ci-octagon_help.sc-tiptap-menu-item:before{content:"\\ea36"}.ci-octagon_warning.sc-tiptap-menu-item:before{content:"\\ea37"}.ci-octagon.sc-tiptap-menu-item:before{content:"\\ea38"}.ci-option.sc-tiptap-menu-item:before{content:"\\ea39"}.ci-paper_plane.sc-tiptap-menu-item:before{content:"\\ea3a"}.ci-paperclip_attechment_horizontal.sc-tiptap-menu-item:before{content:"\\ea3b"}.ci-paperclip_attechment_tilt.sc-tiptap-menu-item:before{content:"\\ea3c"}.ci-paragraph.sc-tiptap-menu-item:before{content:"\\ea3d"}.ci-path.sc-tiptap-menu-item:before{content:"\\ea3e"}.ci-pause_circle.sc-tiptap-menu-item:before{content:"\\ea3f"}.ci-pause.sc-tiptap-menu-item:before{content:"\\ea40"}.ci-phone.sc-tiptap-menu-item:before{content:"\\ea41"}.ci-planet.sc-tiptap-menu-item:before{content:"\\ea42"}.ci-play_circle.sc-tiptap-menu-item:before{content:"\\ea43"}.ci-play.sc-tiptap-menu-item:before{content:"\\ea44"}.ci-printer.sc-tiptap-menu-item:before{content:"\\ea45"}.ci-puzzle.sc-tiptap-menu-item:before{content:"\\ea46"}.ci-qr_code.sc-tiptap-menu-item:before{content:"\\ea47"}.ci-radio_fill.sc-tiptap-menu-item:before{content:"\\ea48"}.ci-radio_unchecked.sc-tiptap-menu-item:before{content:"\\ea49"}.ci-rainbow.sc-tiptap-menu-item:before{content:"\\ea4a"}.ci-redo.sc-tiptap-menu-item:before{content:"\\ea4b"}.ci-remove_minus_circle.sc-tiptap-menu-item:before{content:"\\ea4c"}.ci-remove_minus.sc-tiptap-menu-item:before{content:"\\ea4d"}.ci-rewind.sc-tiptap-menu-item:before{content:"\\ea4e"}.ci-rows.sc-tiptap-menu-item:before{content:"\\ea4f"}.ci-ruler.sc-tiptap-menu-item:before{content:"\\ea50"}.ci-save.sc-tiptap-menu-item:before{content:"\\ea51"}.ci-search_magnifying_glass.sc-tiptap-menu-item:before{content:"\\ea52"}.ci-select_multiple.sc-tiptap-menu-item:before{content:"\\ea53"}.ci-settings_future.sc-tiptap-menu-item:before{content:"\\ea54"}.ci-settings.sc-tiptap-menu-item:before{content:"\\ea55"}.ci-share_android.sc-tiptap-menu-item:before{content:"\\ea56"}.ci-share_ios_export.sc-tiptap-menu-item:before{content:"\\ea57"}.ci-shield_check.sc-tiptap-menu-item:before{content:"\\ea58"}.ci-shield_warning.sc-tiptap-menu-item:before{content:"\\ea59"}.ci-shield.sc-tiptap-menu-item:before{content:"\\ea5a"}.ci-shopping_bag_01.sc-tiptap-menu-item:before{content:"\\ea5b"}.ci-shopping_bag_02.sc-tiptap-menu-item:before{content:"\\ea5c"}.ci-shopping_cart_01.sc-tiptap-menu-item:before{content:"\\ea5d"}.ci-shopping_cart_02.sc-tiptap-menu-item:before{content:"\\ea5e"}.ci-show.sc-tiptap-menu-item:before{content:"\\ea5f"}.ci-shrink.sc-tiptap-menu-item:before{content:"\\ea60"}.ci-shuffle.sc-tiptap-menu-item:before{content:"\\ea61"}.ci-single_quotes_l.sc-tiptap-menu-item:before{content:"\\ea62"}.ci-single_quotes_r.sc-tiptap-menu-item:before{content:"\\ea63"}.ci-skip_back.sc-tiptap-menu-item:before{content:"\\ea64"}.ci-skip_forward.sc-tiptap-menu-item:before{content:"\\ea65"}.ci-slider_01.sc-tiptap-menu-item:before{content:"\\ea66"}.ci-slider_02.sc-tiptap-menu-item:before{content:"\\ea67"}.ci-slider_03.sc-tiptap-menu-item:before{content:"\\ea68"}.ci-sort_ascending.sc-tiptap-menu-item:before{content:"\\ea69"}.ci-sort_descending.sc-tiptap-menu-item:before{content:"\\ea6a"}.ci-square_check.sc-tiptap-menu-item:before{content:"\\ea6b"}.ci-square_help.sc-tiptap-menu-item:before{content:"\\ea6c"}.ci-square_warning.sc-tiptap-menu-item:before{content:"\\ea6d"}.ci-square.sc-tiptap-menu-item:before{content:"\\ea6e"}.ci-star.sc-tiptap-menu-item:before{content:"\\ea6f"}.ci-stop_circle.sc-tiptap-menu-item:before{content:"\\ea70"}.ci-stop_sign.sc-tiptap-menu-item:before{content:"\\ea71"}.ci-stop.sc-tiptap-menu-item:before{content:"\\ea72"}.ci-strikethrough.sc-tiptap-menu-item:before{content:"\\ea73"}.ci-suitcase.sc-tiptap-menu-item:before{content:"\\ea74"}.ci-sun.sc-tiptap-menu-item:before{content:"\\ea75"}.ci-swatches_palette.sc-tiptap-menu-item:before{content:"\\ea76"}.ci-swicht_left.sc-tiptap-menu-item:before{content:"\\ea77"}.ci-swicht_right.sc-tiptap-menu-item:before{content:"\\ea78"}.ci-table_add.sc-tiptap-menu-item:before{content:"\\ea79"}.ci-table_remove.sc-tiptap-menu-item:before{content:"\\ea7a"}.ci-table.sc-tiptap-menu-item:before{content:"\\ea7b"}.ci-tablet_button.sc-tiptap-menu-item:before{content:"\\ea7c"}.ci-tablet.sc-tiptap-menu-item:before{content:"\\ea7d"}.ci-tag.sc-tiptap-menu-item:before{content:"\\ea7e"}.ci-terminal.sc-tiptap-menu-item:before{content:"\\ea7f"}.ci-text_align_center.sc-tiptap-menu-item:before{content:"\\ea80"}.ci-text_align_justify.sc-tiptap-menu-item:before{content:"\\ea81"}.ci-text_align_left.sc-tiptap-menu-item:before{content:"\\ea82"}.ci-text_align_right.sc-tiptap-menu-item:before{content:"\\ea83"}.ci-text.sc-tiptap-menu-item:before{content:"\\ea84"}.ci-ticket_voucher.sc-tiptap-menu-item:before{content:"\\ea85"}.ci-timer_add.sc-tiptap-menu-item:before{content:"\\ea86"}.ci-timer_close.sc-tiptap-menu-item:before{content:"\\ea87"}.ci-timer_remove.sc-tiptap-menu-item:before{content:"\\ea88"}.ci-timer.sc-tiptap-menu-item:before{content:"\\ea89"}.ci-trash_empty.sc-tiptap-menu-item:before{content:"\\ea8a"}.ci-trash_full.sc-tiptap-menu-item:before{content:"\\ea8b"}.ci-trending_down.sc-tiptap-menu-item:before{content:"\\ea8c"}.ci-trending_up.sc-tiptap-menu-item:before{content:"\\ea8d"}.ci-triangle_check.sc-tiptap-menu-item:before{content:"\\ea8e"}.ci-triangle_warning.sc-tiptap-menu-item:before{content:"\\ea8f"}.ci-triangle.sc-tiptap-menu-item:before{content:"\\ea90"}.ci-underline.sc-tiptap-menu-item:before{content:"\\ea91"}.ci-undo.sc-tiptap-menu-item:before{content:"\\ea92"}.ci-unfold_less.sc-tiptap-menu-item:before{content:"\\ea93"}.ci-unfold_more.sc-tiptap-menu-item:before{content:"\\ea94"}.ci-user_01.sc-tiptap-menu-item:before{content:"\\ea95"}.ci-user_02.sc-tiptap-menu-item:before{content:"\\ea96"}.ci-user_03.sc-tiptap-menu-item:before{content:"\\ea97"}.ci-user_add.sc-tiptap-menu-item:before{content:"\\ea98"}.ci-user_card_id.sc-tiptap-menu-item:before{content:"\\ea99"}.ci-user_check.sc-tiptap-menu-item:before{content:"\\ea9a"}.ci-user_circle.sc-tiptap-menu-item:before{content:"\\ea9b"}.ci-user_close.sc-tiptap-menu-item:before{content:"\\ea9c"}.ci-user_remove.sc-tiptap-menu-item:before{content:"\\ea9d"}.ci-user_square.sc-tiptap-menu-item:before{content:"\\ea9e"}.ci-user_voice.sc-tiptap-menu-item:before{content:"\\ea9f"}.ci-users_group.sc-tiptap-menu-item:before{content:"\\eaa0"}.ci-users.sc-tiptap-menu-item:before{content:"\\eaa1"}.ci-volume_max.sc-tiptap-menu-item:before{content:"\\eaa2"}.ci-volume_min.sc-tiptap-menu-item:before{content:"\\eaa3"}.ci-volume_minus.sc-tiptap-menu-item:before{content:"\\eaa4"}.ci-volume_off_02.sc-tiptap-menu-item:before{content:"\\eaa5"}.ci-volume_off.sc-tiptap-menu-item:before{content:"\\eaa6"}.ci-volume_plus.sc-tiptap-menu-item:before{content:"\\eaa7"}.ci-warning.sc-tiptap-menu-item:before{content:"\\eaa8"}.ci-water_drop.sc-tiptap-menu-item:before{content:"\\eaa9"}.ci-wavy_check.sc-tiptap-menu-item:before{content:"\\eaaa"}.ci-wavy_help.sc-tiptap-menu-item:before{content:"\\eaab"}.ci-wavy_warning.sc-tiptap-menu-item:before{content:"\\eaac"}.ci-wavy.sc-tiptap-menu-item:before{content:"\\eaad"}.ci-wifi_high.sc-tiptap-menu-item:before{content:"\\eaae"}.ci-wifi_low.sc-tiptap-menu-item:before{content:"\\eaaf"}.ci-wifi_medium.sc-tiptap-menu-item:before{content:"\\eab0"}.ci-wifi_none.sc-tiptap-menu-item:before{content:"\\eab1"}.ci-wifi_off.sc-tiptap-menu-item:before{content:"\\eab2"}.ci-wifi_problem.sc-tiptap-menu-item:before{content:"\\eab3"}.ci-window_check.sc-tiptap-menu-item:before{content:"\\eab4"}.ci-window_close.sc-tiptap-menu-item:before{content:"\\eab5"}.ci-window_code_block.sc-tiptap-menu-item:before{content:"\\eab6"}.ci-window_sidebar.sc-tiptap-menu-item:before{content:"\\eab7"}.ci-window_terminal.sc-tiptap-menu-item:before{content:"\\eab8"}.ci-window.sc-tiptap-menu-item:before{content:"\\eab9"}.menu-item.sc-tiptap-menu-item{background-color:transparent;border:none;border-radius:0.4em;color:#9ea3b0;height:1.75em;margin-right:0.25em;padding:0.25em;min-width:1.75em;cursor:pointer}.menu-item.sc-tiptap-menu-item i.sc-tiptap-menu-item{font-size:1.25em}.menu-item.flip-h.sc-tiptap-menu-item{transform:scaleX(-1)}.menu-item.flip-v.sc-tiptap-menu-item{transform:scaleY(-1)}.menu-item.is-disabled.sc-tiptap-menu-item{opacity:0.5;cursor:unset}.menu-item.is-disabled.sc-tiptap-menu-item:hover{background-color:transparent;color:#525252}.menu-item.sc-tiptap-menu-item:hover,.menu-item.is-active.sc-tiptap-menu-item{background-color:var(--color-primary-500);color:#fff}.menu-item.has-submenu.sc-tiptap-menu-item+.menu-item.sc-tiptap-menu-item>i.ci-caret_down_sm.sc-tiptap-menu-item{margin:0 -0.25em}.menu-item.has-submenu.sc-tiptap-menu-item{margin-right:0}.menu-item.has-submenu.sc-tiptap-menu-item:hover{border-radius:0.4em 0 0 0.4em}.has-submenu.sc-tiptap-menu-item+.menu-item.sc-tiptap-menu-item{border-radius:0 0.4em 0.4em 0;margin-left:0;padding:0.25em 0;min-width:0.75em}tiptap-menu-item.sc-tiptap-menu-item:hover .menu-item.has-submenu.sc-tiptap-menu-item{border-radius:0.4em 0 0 0.4em}tiptap-menu-item.sc-tiptap-menu-item:last-of-type .menu-item.sc-tiptap-menu-item{margin-right:0}.menu-item.sc-tiptap-menu-item i.color-crimson.sc-tiptap-menu-item{color:crimson}.menu-item.sc-tiptap-menu-item i.color-deeppink.sc-tiptap-menu-item{color:deeppink}.menu-item.sc-tiptap-menu-item i.color-darkorange.sc-tiptap-menu-item{color:darkorange}.menu-item.sc-tiptap-menu-item i.color-darkviolet.sc-tiptap-menu-item{color:darkviolet}.menu-item.sc-tiptap-menu-item i.color-forestgreen.sc-tiptap-menu-item{color:forestgreen}.menu-item.sc-tiptap-menu-item i.color-royalblue.sc-tiptap-menu-item{color:royalblue}.menu-item.sc-tiptap-menu-item i.color-saddlebrown.sc-tiptap-menu-item{color:saddlebrown}.menu-item.sc-tiptap-menu-item i.color-dimgray.sc-tiptap-menu-item{color:dimgray}.menu-item.sc-tiptap-menu-item:has(.color):hover,.menu-item.sc-tiptap-menu-item:has(.color).is-active{background-color:transparent;box-shadow:inset 0 0 0 1px #525252}';const h=class{constructor(A){R(this,A);this.itemProps=undefined;this.menubarMode=undefined}updateMenu(){if(this.menuTippy){const{menuItems:A}=this.itemProps;this.menuContent=document.createElement("div");this.menuContent.style.padding="0.1em";this.menuContent.style.borderRadius="0.3em";this.menuContent.style.backgroundColor="#fff";this.menuContent.style.border="1px solid #d8dbde";A.forEach((A=>{const B=document.createElement("tiptap-menu-item");const{menuModeLevel:E}=A;if(E&&E>this.menubarMode){return}B.itemProps=Object.assign(Object.assign({},A),{action:A.action?()=>{A.action();this.menuTippy.hide()}:null});this.menuContent.append(B)}));this.menuTippy.setContent(this.menuContent)}}componentDidLoad(){var A;const{menuItems:B}=this.itemProps;if(B){this.menuTippy=C((A=this.menuTippyTarget)!==null&&A!==void 0?A:this.el,{placement:"bottom-start",trigger:"click",interactive:true,animation:false,appendTo:()=>{var A,B,E;return(E=(B=(A=document.fullscreenElement)===null||A===void 0?void 0:A.shadowRoot)===null||B===void 0?void 0:B.querySelector(".editor"))!==null&&E!==void 0?E:document.body}});this.updateMenu()}}componentDidUpdate(){if(this.menuTippy){this.updateMenu()}}render(){const{icon:A,label:B,title:E,action:Q,menuItems:g,isDisabled:M=null,isActive:R=null,flip:w="none"}=this.itemProps;return I(c,null,I("button",{class:`menu-item${M&&M()?" is-disabled":""}${R&&R()?" is-active":""}${w!=="none"?` flip-${w}`:""}${g&&Q?" has-submenu":""}`,onClick:M&&M()?null:Q,title:E},A&&(A.startsWith("ci")?I("i",{class:`coolicons ${A}`}):I("i",{class:A})),B&&I("span",null,B),g&&!Q?I("i",{class:"coolicons ci-caret_down_sm"}):null),g&&Q&&I("button",{class:"menu-item",ref:A=>this.menuTippyTarget=A},I("i",{class:"coolicons ci-caret_down_sm"})))}get el(){return w(this)}};h.style=U;const S=["Crimson","DeepPink","DarkOrange","DarkViolet","ForestGreen","RoyalBlue","SaddleBrown","DimGray"];const N='.menubar{align-items:center;border-bottom:1px solid #d8dbde;display:flex;flex:0 0 auto;flex-wrap:wrap;padding:0.25em}.menu-item-group{margin-right:0.25em}.menu-item-group:not(:last-child)::after{content:"";display:inline-block;background-color:rgba(0, 0, 0, 0.1);height:1.25em;margin:0 0.15em -0.1em 0.5em;width:1px}.menu-item-group:empty{display:none}';var H=undefined&&undefined.__rest||function(A,B){var E={};for(var Q in A)if(Object.prototype.hasOwnProperty.call(A,Q)&&B.indexOf(Q)<0)E[Q]=A[Q];if(A!=null&&typeof Object.getOwnPropertySymbols==="function")for(var g=0,Q=Object.getOwnPropertySymbols(A);g{var A;return(A=this.toggleMonaco)===null||A===void 0?void 0:A.call(this)},isActive:()=>{var A;return(A=this.states)===null||A===void 0?void 0:A.isMonaco},isHidden:()=>{var A;return(A=this.states)===null||A===void 0?void 0:A.isCollaborative},menuModeLevel:B.full}]]}getMenuItems(A){return[[{icon:"ci-text_align_left",title:"Align Left",action:()=>A.chain().focus().setTextAlign("left").run(),isActive:()=>A.isActive({textAlign:"left"}),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading")),menuModeLevel:B.full},{icon:"ci-text_align_center",title:"Center",action:()=>A.chain().focus().setTextAlign("center").run(),isActive:()=>A.isActive({textAlign:"center"}),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading")),menuModeLevel:B.full},{icon:"ci-text_align_right",title:"Align Right",action:()=>A.chain().focus().setTextAlign("right").run(),isActive:()=>A.isActive({textAlign:"right"}),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading")),menuModeLevel:B.full},{icon:"ci-text_align_justify",title:"Justify",action:()=>A.chain().focus().setTextAlign("justify").run(),isActive:()=>A.isActive({textAlign:"justify"}),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading")),menuModeLevel:B.full}],[{icon:"ci-text",title:"Font Family",menuItems:Object.keys(E).map((B=>({label:B,action:()=>A.chain().focus().setFontFamily(E[B]).run(),isActive:()=>A.isActive("textStyle",{fontFamily:E[B]})}))),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading")),menuModeLevel:B.full},{icon:"ci-font",title:"Font Size",menuItems:Q.map((B=>({label:`${B}px`,action:()=>A.chain().focus().setFontSize(B).run(),isActive:()=>A.isActive({fontSize:B})}))),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading"))},{icon:"ci-swatches_palette",title:"Text Color",menuItems:[...S.map((B=>({icon:`ci-text color color-${B.toLowerCase()}`,title:B.replace(/([A-Z])/g," $1").trim(),action:()=>A.chain().focus().setColor(B).run(),isActive:()=>A.isActive("textStyle",{color:B})}))),{icon:"ci-close_md",title:"Clear Color",action:()=>A.chain().focus().unsetColor().run()}],isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading"))},{icon:"ci-bold",title:"Bold",action:()=>A.chain().focus().toggleBold().run(),isActive:()=>A.isActive("bold"),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading"))},{icon:"ci-italic",title:"Italic",action:()=>A.chain().focus().toggleItalic().run(),isActive:()=>A.isActive("italic"),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading"))},{icon:"ci-underline",title:"Underline",action:()=>{if(A.isActive("strike")){A.chain().focus().toggleStrike().run()}else{A.chain().focus().toggleUnderline().run()}},isActive:()=>A.isActive("underline")||A.isActive("strike"),menuItems:[{icon:"ci-underline",title:"Underline",action:()=>A.chain().focus().toggleUnderline().run(),isActive:()=>A.isActive("underline")},{icon:"ci-strikethrough",title:"Strike",action:()=>A.chain().focus().toggleStrike().run(),isActive:()=>A.isActive("strike")}],isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading"))},{icon:"ci-bulb",title:"Highlight",action:()=>A.chain().focus().toggleHighlight().run(),isActive:()=>A.isActive("highlight"),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading")),menuModeLevel:B.full},{icon:"ci-link",title:"Link",action:()=>{const B=A.isActive("link")?A.getAttributes("link").href:"";const E=prompt("Enter URL",B);A.chain().focus().setLink({href:E}).run()},isActive:()=>A.isActive("link"),menuItems:[{icon:"ci-link",title:"Link",action:()=>{const B=A.isActive("link")?A.getAttributes("link").href:"";const E=prompt("Enter URL",B);A.chain().focus().setLink({href:E}).run()}},{icon:"ci-link_break",title:"Unlink",action:()=>A.chain().focus().unsetLink().run(),isDisabled:()=>!A.isActive("link")}],isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading"))},{icon:"ci-menu_duo_md",title:"Line Spacing",menuItems:g.map((B=>({label:`${B}x`,action:()=>A.chain().focus().setLineHeight(B).run(),isActive:()=>A.isActive({lineHeight:B})}))),isDisabled:()=>!(A.isActive("paragraph")||A.isActive("heading")),menuModeLevel:B.full}],[{icon:"ci-heading",title:"Heading",isActive:()=>A.isActive("heading"),menuItems:J.map((B=>({icon:`ci-heading_h${B}`,title:`Heading ${B}`,action:()=>A.chain().focus().toggleHeading({level:B}).unsetFontSize().run(),isActive:()=>A.isActive("heading",{level:B})})))},{icon:"ci-paragraph",title:"Paragraph",action:()=>A.chain().focus().setParagraph().run(),isActive:()=>A.isActive("paragraph")},{icon:"ci-code",title:"Code",action:()=>{if(A.isActive("code")){A.chain().focus().toggleCode().run()}else{A.chain().focus().toggleCodeBlock().run()}},isActive:()=>A.isActive("code")||A.isActive("codeBlock"),menuItems:[{icon:"ci-window_code_block",title:"Code Block",action:()=>A.chain().focus().toggleCodeBlock().run(),isActive:()=>A.isActive("codeBlock")},{icon:"ci-code",title:"Code",action:()=>A.chain().focus().toggleCode().run(),isActive:()=>A.isActive("code")}]}],[{icon:"ci-list_unordered",title:"Bullet List",action:()=>{if(A.isActive("bulletList")){A.chain().focus().toggleBulletList().run()}else if(A.isActive("orderedList")){A.chain().focus().toggleOrderedList().run()}else if(A.isActive("taskList")){A.chain().focus().toggleTaskList().run()}else{A.chain().focus().toggleBulletList().run()}},menuItems:[{icon:"ci-list_unordered",title:"Bullet List",action:()=>A.chain().focus().toggleBulletList().run(),isActive:()=>A.isActive("bulletList")},{icon:"ci-list_ordered",title:"Ordered List",action:()=>A.chain().focus().toggleOrderedList().run(),isActive:()=>A.isActive("orderedList")},{icon:"ci-list_checklist",title:"Task List",action:()=>A.chain().focus().toggleTaskList().run(),isActive:()=>A.isActive("taskList"),menuModeLevel:B.full}],isActive:()=>A.isActive("bulletList")||A.isActive("orderedList")||A.isActive("taskList")},{icon:"ci-image_02",title:"Image",action:()=>{const B=document.createElement("input");B.setAttribute("type","file");B.setAttribute("accept","image/jpeg,image/gif,image/png,image/jpg");B.onchange=B=>{const{files:E}=B.target;if(Boolean(E.length)){A.chain().focus().uploadImage(E.item(0)).run()}};B.click()}}],[{icon:"ci-double_quotes_l",title:"Blockquote",action:()=>A.chain().focus().toggleBlockquote().run(),isActive:()=>A.isActive("blockquote"),menuModeLevel:B.full},{icon:"ci-remove_minus",title:"Horizontal Rule",action:()=>A.chain().focus().setHorizontalRule().run(),menuModeLevel:B.full}],[{icon:"ci-table",title:"Table",menuItems:[{icon:"ci-table",title:"Table",action:()=>A.chain().focus().insertTable({rows:4,cols:3,withHeaderRow:false}).run(),isDisabled:()=>A.isActive("table")},{icon:"ci-combine_cells",title:"Merge Table Cells",action:()=>A.chain().focus().mergeOrSplit().run(),isActive:()=>A.can().splitCell(),isDisabled:()=>!A.can().mergeOrSplit()},{icon:"ci-add_row",flip:"v",title:"Insert Table Row Before",action:()=>A.chain().focus().addRowBefore().run(),isDisabled:()=>!A.can().addRowBefore()},{icon:"ci-add_row",title:"Insert Table Row After",action:()=>A.chain().focus().addRowAfter().run(),isDisabled:()=>!A.can().addRowAfter()},{icon:"ci-add_column",flip:"h",title:"Insert Table Column Before",action:()=>A.chain().focus().addColumnBefore().run(),isDisabled:()=>!A.can().addColumnBefore()},{icon:"ci-add_column",title:"Insert Table Column After",action:()=>A.chain().focus().addColumnAfter().run(),isDisabled:()=>!A.can().addColumnAfter()},{icon:"ci-delete_row",title:"Delete Table Row",action:()=>A.chain().focus().deleteRow().run(),isDisabled:()=>!A.can().deleteRow()},{icon:"ci-delete_column",title:"Delete Table Column",action:()=>A.chain().focus().deleteColumn().run(),isDisabled:()=>!A.can().deleteColumn()},{icon:"ci-table_remove",title:"Delete Table",action:()=>A.chain().focus().deleteTable().run(),isDisabled:()=>!A.can().deleteTable()}]}],[{icon:"ci-close_circle",title:"Clear Format",action:()=>A.chain().focus().clearNodes().unsetAllMarks().run(),menuModeLevel:B.full}],[{icon:"ci-undo",title:"Undo",action:()=>A.chain().focus().undo().run(),isDisabled:()=>!A.can().undo(),menuModeLevel:B.full},{icon:"ci-redo",title:"Redo",action:()=>A.chain().focus().redo().run(),isDisabled:()=>!A.can().redo(),menuModeLevel:B.full}],[{icon:"ci-bar_top",title:"Toggle Fullscreen",action:()=>{var A;return(A=this.toggleFullscreen)===null||A===void 0?void 0:A.call(this)},isActive:()=>{var A;return(A=this.states)===null||A===void 0?void 0:A.isFullscreen},isHidden:()=>!Boolean(this.toggleFullscreen)}],...this.getMonacoToggler()]}render(){const{editor:A,states:B}=this;const{isMonaco:E}=B;const Q=E?this.getMonacoToggler():this.getMenuItems(A);const g=Q.map((A=>{const B=A.map((A=>{const{isHidden:B,menuModeLevel:E}=A,Q=H(A,["isHidden","menuModeLevel"]);if(B&&B()||E&&E>this.menubarMode){return null}return I("tiptap-menu-item",{itemProps:Object.assign({},Q),menubarMode:this.menubarMode})}));return Boolean(B.filter((A=>Boolean(A))).length)?I("div",{class:"menu-item-group"},B):null}));return I("div",{class:"menubar"},g)}};t.style=N;export{i as tiptap_bubble_menu,k as tiptap_editor_content,h as tiptap_menu_item,t as tiptap_menubar}; +//# sourceMappingURL=p-38ad54cb.entry.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-424dab77.entry.js b/www/js/zeneditor/p-424dab77.entry.js new file mode 100644 index 0000000000..9aa761bc9f --- /dev/null +++ b/www/js/zeneditor/p-424dab77.entry.js @@ -0,0 +1,2 @@ +import{r as t,h as s,F as n}from"./p-f027b047.js";const e=class{constructor(s){t(this,s);this.editor=undefined;this.forceUpdateCounter=undefined;this.toggleFullscreen=null;this.showCharCount=true}render(){const t=this.editor.storage.characterCount.characters();return s(n,null,this.showCharCount?s("span",null,t," character",t>1?"s":"","."):s("div",null),this.toggleFullscreen&&s("button",{id:"fullscreen-button",onClick:this.toggleFullscreen},"Toggle Fullscreen"))}};export{e as tiptap_editor_footer}; +//# sourceMappingURL=p-424dab77.entry.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-4699db89.js b/www/js/zeneditor/p-4699db89.js new file mode 100644 index 0000000000..47143a4c60 --- /dev/null +++ b/www/js/zeneditor/p-4699db89.js @@ -0,0 +1,8 @@ +import{b as e}from"./p-b80ff9a8.js";import"./p-f027b047.js";import"./p-0d1d1366.js"; +/*!----------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Version: 0.37.1(20a8d5a651d057aaed7875ad1c1f2ecf13c4e773) + * Released under the MIT license + * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt + *-----------------------------------------------------------------------------*/var t=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var n=Object.getOwnPropertyNames;var s=Object.prototype.hasOwnProperty;var o=(e,o,i,a)=>{if(o&&typeof o==="object"||typeof o==="function"){for(let l of n(o))if(!s.call(e,l)&&l!==i)t(e,l,{get:()=>o[l],enumerable:!(a=r(o,l))||a.enumerable})}return e};var i=(e,t,r)=>(o(e,t,"default"),r&&o(r,t,"default"));var a={};i(a,e);var l={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:new RegExp("^\\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async|match|case).*?:\\s*$"),action:{indentAction:a.languages.IndentAction.Indent}}],folding:{offSide:true,markers:{start:new RegExp("^\\s*#region\\b"),end:new RegExp("^\\s*#endregion\\b")}}};var c={defaultToken:"",tokenPostfix:".python",keywords:["False","None","True","_","and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","exec","finally","for","from","global","if","import","in","is","lambda","match","nonlocal","not","or","pass","print","raise","return","try","while","with","yield","int","float","long","complex","hex","abs","all","any","apply","basestring","bin","bool","buffer","bytearray","callable","chr","classmethod","cmp","coerce","compile","complex","delattr","dict","dir","divmod","enumerate","eval","execfile","file","filter","format","frozenset","getattr","globals","hasattr","hash","help","id","input","intern","isinstance","issubclass","iter","len","locals","list","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","reversed","range","raw_input","reduce","reload","repr","reversed","round","self","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","unichr","unicode","vars","xrange","zip","__dict__","__methods__","__members__","__class__","__bases__","__name__","__mro__","__subclasses__","__init__","__import__"],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],tokenizer:{root:[{include:"@whitespace"},{include:"@numbers"},{include:"@strings"},[/[,:;]/,"delimiter"],[/[{}\[\]()]/,"@brackets"],[/@[a-zA-Z_]\w*/,"tag"],[/[a-zA-Z_]\w*/,{cases:{"@keywords":"keyword","@default":"identifier"}}]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]],numbers:[[/-?0x([abcdef]|[ABCDEF]|\d)+[lL]?/,"number.hex"],[/-?(\d*\.)?\d+([eE][+\-]?\d+)?[jJ]?[lL]?/,"number"]],strings:[[/'$/,"string.escape","@popall"],[/'/,"string.escape","@stringBody"],[/"$/,"string.escape","@popall"],[/"/,"string.escape","@dblStringBody"]],stringBody:[[/[^\\']+$/,"string","@popall"],[/[^\\']+/,"string"],[/\\./,"string"],[/'/,"string.escape","@popall"],[/\\$/,"string"]],dblStringBody:[[/[^\\"]+$/,"string","@popall"],[/[^\\"]+/,"string"],[/\\./,"string"],[/"/,"string.escape","@popall"],[/\\$/,"string"]]}};export{l as conf,c as language}; +//# sourceMappingURL=p-4699db89.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-6badbcb0.js b/www/js/zeneditor/p-6badbcb0.js new file mode 100644 index 0000000000..882921d531 --- /dev/null +++ b/www/js/zeneditor/p-6badbcb0.js @@ -0,0 +1,8 @@ +import{b as n}from"./p-b80ff9a8.js";import"./p-f027b047.js";import"./p-0d1d1366.js"; +/*!----------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Version: 0.37.1(20a8d5a651d057aaed7875ad1c1f2ecf13c4e773) + * Released under the MIT license + * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt + *-----------------------------------------------------------------------------*/var r=Object.defineProperty;var t=Object.getOwnPropertyDescriptor;var e=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var u=(n,u,o,a)=>{if(u&&typeof u==="object"||typeof u==="function"){for(let s of e(u))if(!i.call(n,s)&&s!==o)r(n,s,{get:()=>u[s],enumerable:!(a=t(u,s))||a.enumerable})}return n};var o=(n,r,t)=>(u(n,r,"default"),t&&u(t,r,"default"));var a={};o(a,n);var s=2*60*1e3;var c=class{_defaults;_idleCheckInterval;_lastUsedTime;_configChangeListener;_worker;_client;constructor(n){this._defaults=n;this._worker=null;this._client=null;this._idleCheckInterval=window.setInterval((()=>this._checkIfIdle()),30*1e3);this._lastUsedTime=0;this._configChangeListener=this._defaults.onDidChange((()=>this._stopWorker()))}_stopWorker(){if(this._worker){this._worker.dispose();this._worker=null}this._client=null}dispose(){clearInterval(this._idleCheckInterval);this._configChangeListener.dispose();this._stopWorker()}_checkIfIdle(){if(!this._worker){return}let n=Date.now()-this._lastUsedTime;if(n>s){this._stopWorker()}}_getClient(){this._lastUsedTime=Date.now();if(!this._client){this._worker=a.editor.createWebWorker({moduleId:"vs/language/css/cssWorker",label:this._defaults.languageId,createData:{options:this._defaults.options,languageId:this._defaults.languageId}});this._client=this._worker.getProxy()}return this._client}getLanguageServiceWorker(...n){let r;return this._getClient().then((n=>{r=n})).then((r=>{if(this._worker){return this._worker.withSyncedResources(n)}})).then((n=>r))}};var f;(function(n){n.MIN_VALUE=-2147483648;n.MAX_VALUE=2147483647})(f||(f={}));var v;(function(n){n.MIN_VALUE=0;n.MAX_VALUE=2147483647})(v||(v={}));var h;(function(n){function r(n,r){if(n===Number.MAX_VALUE){n=v.MAX_VALUE}if(r===Number.MAX_VALUE){r=v.MAX_VALUE}return{line:n,character:r}}n.create=r;function t(n){var r=n;return mn.objectLiteral(r)&&mn.uinteger(r.line)&&mn.uinteger(r.character)}n.is=t})(h||(h={}));var d;(function(n){function r(n,r,t,e){if(mn.uinteger(n)&&mn.uinteger(r)&&mn.uinteger(t)&&mn.uinteger(e)){return{start:h.create(n,r),end:h.create(t,e)}}else if(h.is(n)&&h.is(r)){return{start:n,end:r}}else{throw new Error("Range#create called with invalid arguments["+n+", "+r+", "+t+", "+e+"]")}}n.create=r;function t(n){var r=n;return mn.objectLiteral(r)&&h.is(r.start)&&h.is(r.end)}n.is=t})(d||(d={}));var l;(function(n){function r(n,r){return{uri:n,range:r}}n.create=r;function t(n){var r=n;return mn.defined(r)&&d.is(r.range)&&(mn.string(r.uri)||mn.undefined(r.uri))}n.is=t})(l||(l={}));var g;(function(n){function r(n,r,t,e){return{targetUri:n,targetRange:r,targetSelectionRange:t,originSelectionRange:e}}n.create=r;function t(n){var r=n;return mn.defined(r)&&d.is(r.targetRange)&&mn.string(r.targetUri)&&(d.is(r.targetSelectionRange)||mn.undefined(r.targetSelectionRange))&&(d.is(r.originSelectionRange)||mn.undefined(r.originSelectionRange))}n.is=t})(g||(g={}));var w;(function(n){function r(n,r,t,e){return{red:n,green:r,blue:t,alpha:e}}n.create=r;function t(n){var r=n;return mn.numberRange(r.red,0,1)&&mn.numberRange(r.green,0,1)&&mn.numberRange(r.blue,0,1)&&mn.numberRange(r.alpha,0,1)}n.is=t})(w||(w={}));var m;(function(n){function r(n,r){return{range:n,color:r}}n.create=r;function t(n){var r=n;return d.is(r.range)&&w.is(r.color)}n.is=t})(m||(m={}));var b;(function(n){function r(n,r,t){return{label:n,textEdit:r,additionalTextEdits:t}}n.create=r;function t(n){var r=n;return mn.string(r.label)&&(mn.undefined(r.textEdit)||_.is(r))&&(mn.undefined(r.additionalTextEdits)||mn.typedArray(r.additionalTextEdits,_.is))}n.is=t})(b||(b={}));var p;(function(n){n["Comment"]="comment";n["Imports"]="imports";n["Region"]="region"})(p||(p={}));var j;(function(n){function r(n,r,t,e,i){var u={startLine:n,endLine:r};if(mn.defined(t)){u.startCharacter=t}if(mn.defined(e)){u.endCharacter=e}if(mn.defined(i)){u.kind=i}return u}n.create=r;function t(n){var r=n;return mn.uinteger(r.startLine)&&mn.uinteger(r.startLine)&&(mn.undefined(r.startCharacter)||mn.uinteger(r.startCharacter))&&(mn.undefined(r.endCharacter)||mn.uinteger(r.endCharacter))&&(mn.undefined(r.kind)||mn.string(r.kind))}n.is=t})(j||(j={}));var x;(function(n){function r(n,r){return{location:n,message:r}}n.create=r;function t(n){var r=n;return mn.defined(r)&&l.is(r.location)&&mn.string(r.message)}n.is=t})(x||(x={}));var k;(function(n){n.Error=1;n.Warning=2;n.Information=3;n.Hint=4})(k||(k={}));var y;(function(n){n.Unnecessary=1;n.Deprecated=2})(y||(y={}));var I;(function(n){function r(n){var r=n;return r!==void 0&&r!==null&&mn.string(r.href)}n.is=r})(I||(I={}));var O;(function(n){function r(n,r,t,e,i,u){var o={range:n,message:r};if(mn.defined(t)){o.severity=t}if(mn.defined(e)){o.code=e}if(mn.defined(i)){o.source=i}if(mn.defined(u)){o.relatedInformation=u}return o}n.create=r;function t(n){var r;var t=n;return mn.defined(t)&&d.is(t.range)&&mn.string(t.message)&&(mn.number(t.severity)||mn.undefined(t.severity))&&(mn.integer(t.code)||mn.string(t.code)||mn.undefined(t.code))&&(mn.undefined(t.codeDescription)||mn.string((r=t.codeDescription)===null||r===void 0?void 0:r.href))&&(mn.string(t.source)||mn.undefined(t.source))&&(mn.undefined(t.relatedInformation)||mn.typedArray(t.relatedInformation,x.is))}n.is=t})(O||(O={}));var E;(function(n){function r(n,r){var t=[];for(var e=2;e0){i.arguments=t}return i}n.create=r;function t(n){var r=n;return mn.defined(r)&&mn.string(r.title)&&mn.string(r.command)}n.is=t})(E||(E={}));var _;(function(n){function r(n,r){return{range:n,newText:r}}n.replace=r;function t(n,r){return{range:{start:n,end:n},newText:r}}n.insert=t;function e(n){return{range:n,newText:""}}n.del=e;function i(n){var r=n;return mn.objectLiteral(r)&&mn.string(r.newText)&&d.is(r.range)}n.is=i})(_||(_={}));var T;(function(n){function r(n,r,t){var e={label:n};if(r!==void 0){e.needsConfirmation=r}if(t!==void 0){e.description=t}return e}n.create=r;function t(n){var r=n;return r!==void 0&&mn.objectLiteral(r)&&mn.string(r.label)&&(mn.boolean(r.needsConfirmation)||r.needsConfirmation===void 0)&&(mn.string(r.description)||r.description===void 0)}n.is=t})(T||(T={}));var R;(function(n){function r(n){var r=n;return typeof r==="string"}n.is=r})(R||(R={}));var S;(function(n){function r(n,r,t){return{range:n,newText:r,annotationId:t}}n.replace=r;function t(n,r,t){return{range:{start:n,end:n},newText:r,annotationId:t}}n.insert=t;function e(n,r){return{range:n,newText:"",annotationId:r}}n.del=e;function i(n){var r=n;return _.is(r)&&(T.is(r.annotationId)||R.is(r.annotationId))}n.is=i})(S||(S={}));var C;(function(n){function r(n,r){return{textDocument:n,edits:r}}n.create=r;function t(n){var r=n;return mn.defined(r)&&U.is(r.textDocument)&&Array.isArray(r.edits)}n.is=t})(C||(C={}));var D;(function(n){function r(n,r,t){var e={kind:"create",uri:n};if(r!==void 0&&(r.overwrite!==void 0||r.ignoreIfExists!==void 0)){e.options=r}if(t!==void 0){e.annotationId=t}return e}n.create=r;function t(n){var r=n;return r&&r.kind==="create"&&mn.string(r.uri)&&(r.options===void 0||(r.options.overwrite===void 0||mn.boolean(r.options.overwrite))&&(r.options.ignoreIfExists===void 0||mn.boolean(r.options.ignoreIfExists)))&&(r.annotationId===void 0||R.is(r.annotationId))}n.is=t})(D||(D={}));var N;(function(n){function r(n,r,t,e){var i={kind:"rename",oldUri:n,newUri:r};if(t!==void 0&&(t.overwrite!==void 0||t.ignoreIfExists!==void 0)){i.options=t}if(e!==void 0){i.annotationId=e}return i}n.create=r;function t(n){var r=n;return r&&r.kind==="rename"&&mn.string(r.oldUri)&&mn.string(r.newUri)&&(r.options===void 0||(r.options.overwrite===void 0||mn.boolean(r.options.overwrite))&&(r.options.ignoreIfExists===void 0||mn.boolean(r.options.ignoreIfExists)))&&(r.annotationId===void 0||R.is(r.annotationId))}n.is=t})(N||(N={}));var W;(function(n){function r(n,r,t){var e={kind:"delete",uri:n};if(r!==void 0&&(r.recursive!==void 0||r.ignoreIfNotExists!==void 0)){e.options=r}if(t!==void 0){e.annotationId=t}return e}n.create=r;function t(n){var r=n;return r&&r.kind==="delete"&&mn.string(r.uri)&&(r.options===void 0||(r.options.recursive===void 0||mn.boolean(r.options.recursive))&&(r.options.ignoreIfNotExists===void 0||mn.boolean(r.options.ignoreIfNotExists)))&&(r.annotationId===void 0||R.is(r.annotationId))}n.is=t})(W||(W={}));var L;(function(n){function r(n){var r=n;return r&&(r.changes!==void 0||r.documentChanges!==void 0)&&(r.documentChanges===void 0||r.documentChanges.every((function(n){if(mn.string(n.kind)){return D.is(n)||N.is(n)||W.is(n)}else{return C.is(n)}})))}n.is=r})(L||(L={}));var A=function(){function n(n,r){this.edits=n;this.changeAnnotations=r}n.prototype.insert=function(n,r,t){var e;var i;if(t===void 0){e=_.insert(n,r)}else if(R.is(t)){i=t;e=S.insert(n,r,t)}else{this.assertChangeAnnotations(this.changeAnnotations);i=this.changeAnnotations.manage(t);e=S.insert(n,r,i)}this.edits.push(e);if(i!==void 0){return i}};n.prototype.replace=function(n,r,t){var e;var i;if(t===void 0){e=_.replace(n,r)}else if(R.is(t)){i=t;e=S.replace(n,r,t)}else{this.assertChangeAnnotations(this.changeAnnotations);i=this.changeAnnotations.manage(t);e=S.replace(n,r,i)}this.edits.push(e);if(i!==void 0){return i}};n.prototype.delete=function(n,r){var t;var e;if(r===void 0){t=_.del(n)}else if(R.is(r)){e=r;t=S.del(n,r)}else{this.assertChangeAnnotations(this.changeAnnotations);e=this.changeAnnotations.manage(r);t=S.del(n,e)}this.edits.push(t);if(e!==void 0){return e}};n.prototype.add=function(n){this.edits.push(n)};n.prototype.all=function(){return this.edits};n.prototype.clear=function(){this.edits.splice(0,this.edits.length)};n.prototype.assertChangeAnnotations=function(n){if(n===void 0){throw new Error("Text edit change is not configured to manage change annotations.")}};return n}();var M=function(){function n(n){this._annotations=n===void 0?Object.create(null):n;this._counter=0;this._size=0}n.prototype.all=function(){return this._annotations};Object.defineProperty(n.prototype,"size",{get:function(){return this._size},enumerable:false,configurable:true});n.prototype.manage=function(n,r){var t;if(R.is(n)){t=n}else{t=this.nextId();r=n}if(this._annotations[t]!==void 0){throw new Error("Id "+t+" is already in use.")}if(r===void 0){throw new Error("No annotation provided for id "+t)}this._annotations[t]=r;this._size++;return t};n.prototype.nextId=function(){this._counter++;return this._counter.toString()};return n}();(function(){function n(n){var r=this;this._textEditChanges=Object.create(null);if(n!==void 0){this._workspaceEdit=n;if(n.documentChanges){this._changeAnnotations=new M(n.changeAnnotations);n.changeAnnotations=this._changeAnnotations.all();n.documentChanges.forEach((function(n){if(C.is(n)){var t=new A(n.edits,r._changeAnnotations);r._textEditChanges[n.textDocument.uri]=t}}))}else if(n.changes){Object.keys(n.changes).forEach((function(t){var e=new A(n.changes[t]);r._textEditChanges[t]=e}))}}else{this._workspaceEdit={}}}Object.defineProperty(n.prototype,"edit",{get:function(){this.initDocumentChanges();if(this._changeAnnotations!==void 0){if(this._changeAnnotations.size===0){this._workspaceEdit.changeAnnotations=void 0}else{this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()}}return this._workspaceEdit},enumerable:false,configurable:true});n.prototype.getTextEditChange=function(n){if(U.is(n)){this.initDocumentChanges();if(this._workspaceEdit.documentChanges===void 0){throw new Error("Workspace edit is not configured for document changes.")}var r={uri:n.uri,version:n.version};var t=this._textEditChanges[r.uri];if(!t){var e=[];var i={textDocument:r,edits:e};this._workspaceEdit.documentChanges.push(i);t=new A(e,this._changeAnnotations);this._textEditChanges[r.uri]=t}return t}else{this.initChanges();if(this._workspaceEdit.changes===void 0){throw new Error("Workspace edit is not configured for normal text edit changes.")}var t=this._textEditChanges[n];if(!t){var e=[];this._workspaceEdit.changes[n]=e;t=new A(e);this._textEditChanges[n]=t}return t}};n.prototype.initDocumentChanges=function(){if(this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0){this._changeAnnotations=new M;this._workspaceEdit.documentChanges=[];this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()}};n.prototype.initChanges=function(){if(this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0){this._workspaceEdit.changes=Object.create(null)}};n.prototype.createFile=function(n,r,t){this.initDocumentChanges();if(this._workspaceEdit.documentChanges===void 0){throw new Error("Workspace edit is not configured for document changes.")}var e;if(T.is(r)||R.is(r)){e=r}else{t=r}var i;var u;if(e===void 0){i=D.create(n,t)}else{u=R.is(e)?e:this._changeAnnotations.manage(e);i=D.create(n,t,u)}this._workspaceEdit.documentChanges.push(i);if(u!==void 0){return u}};n.prototype.renameFile=function(n,r,t,e){this.initDocumentChanges();if(this._workspaceEdit.documentChanges===void 0){throw new Error("Workspace edit is not configured for document changes.")}var i;if(T.is(t)||R.is(t)){i=t}else{e=t}var u;var o;if(i===void 0){u=N.create(n,r,e)}else{o=R.is(i)?i:this._changeAnnotations.manage(i);u=N.create(n,r,e,o)}this._workspaceEdit.documentChanges.push(u);if(o!==void 0){return o}};n.prototype.deleteFile=function(n,r,t){this.initDocumentChanges();if(this._workspaceEdit.documentChanges===void 0){throw new Error("Workspace edit is not configured for document changes.")}var e;if(T.is(r)||R.is(r)){e=r}else{t=r}var i;var u;if(e===void 0){i=W.create(n,t)}else{u=R.is(e)?e:this._changeAnnotations.manage(e);i=W.create(n,t,u)}this._workspaceEdit.documentChanges.push(i);if(u!==void 0){return u}};return n})();var F;(function(n){function r(n){return{uri:n}}n.create=r;function t(n){var r=n;return mn.defined(r)&&mn.string(r.uri)}n.is=t})(F||(F={}));var z;(function(n){function r(n,r){return{uri:n,version:r}}n.create=r;function t(n){var r=n;return mn.defined(r)&&mn.string(r.uri)&&mn.integer(r.version)}n.is=t})(z||(z={}));var U;(function(n){function r(n,r){return{uri:n,version:r}}n.create=r;function t(n){var r=n;return mn.defined(r)&&mn.string(r.uri)&&(r.version===null||mn.integer(r.version))}n.is=t})(U||(U={}));var H;(function(n){function r(n,r,t,e){return{uri:n,languageId:r,version:t,text:e}}n.create=r;function t(n){var r=n;return mn.defined(r)&&mn.string(r.uri)&&mn.string(r.languageId)&&mn.integer(r.version)&&mn.string(r.text)}n.is=t})(H||(H={}));var $;(function(n){n.PlainText="plaintext";n.Markdown="markdown"})($||($={}));(function(n){function r(r){var t=r;return t===n.PlainText||t===n.Markdown}n.is=r})($||($={}));var q;(function(n){function r(n){var r=n;return mn.objectLiteral(n)&&$.is(r.kind)&&mn.string(r.value)}n.is=r})(q||(q={}));var P;(function(n){n.Text=1;n.Method=2;n.Function=3;n.Constructor=4;n.Field=5;n.Variable=6;n.Class=7;n.Interface=8;n.Module=9;n.Property=10;n.Unit=11;n.Value=12;n.Enum=13;n.Keyword=14;n.Snippet=15;n.Color=16;n.File=17;n.Reference=18;n.Folder=19;n.EnumMember=20;n.Constant=21;n.Struct=22;n.Event=23;n.Operator=24;n.TypeParameter=25})(P||(P={}));var V;(function(n){n.PlainText=1;n.Snippet=2})(V||(V={}));var B;(function(n){n.Deprecated=1})(B||(B={}));var G;(function(n){function r(n,r,t){return{newText:n,insert:r,replace:t}}n.create=r;function t(n){var r=n;return r&&mn.string(r.newText)&&d.is(r.insert)&&d.is(r.replace)}n.is=t})(G||(G={}));var J;(function(n){n.asIs=1;n.adjustIndentation=2})(J||(J={}));var K;(function(n){function r(n){return{label:n}}n.create=r})(K||(K={}));var Q;(function(n){function r(n,r){return{items:n?n:[],isIncomplete:!!r}}n.create=r})(Q||(Q={}));var X;(function(n){function r(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}n.fromPlainText=r;function t(n){var r=n;return mn.string(r)||mn.objectLiteral(r)&&mn.string(r.language)&&mn.string(r.value)}n.is=t})(X||(X={}));var Y;(function(n){function r(n){var r=n;return!!r&&mn.objectLiteral(r)&&(q.is(r.contents)||X.is(r.contents)||mn.typedArray(r.contents,X.is))&&(n.range===void 0||d.is(n.range))}n.is=r})(Y||(Y={}));var Z;(function(n){function r(n,r){return r?{label:n,documentation:r}:{label:n}}n.create=r})(Z||(Z={}));var nn;(function(n){function r(n,r){var t=[];for(var e=2;e=0;o--){var a=e[o];var s=n.offsetAt(a.range.start);var c=n.offsetAt(a.range.end);if(c<=u){t=t.substring(0,s)+a.newText+t.substring(c,t.length)}else{throw new Error("Overlapping edit")}u=s}return t}n.applyEdits=e;function i(n,r){if(n.length<=1){return n}var t=n.length/2|0;var e=n.slice(0,t);var u=n.slice(t);i(e,r);i(u,r);var o=0;var a=0;var s=0;while(o0){n.push(r.length)}this._lineOffsets=n}return this._lineOffsets};n.prototype.positionAt=function(n){n=Math.max(Math.min(n,this._content.length),0);var r=this.getLineOffsets();var t=0,e=r.length;if(e===0){return h.create(0,n)}while(tn){e=i}else{t=i+1}}var u=t-1;return h.create(u,n-r[u])};n.prototype.offsetAt=function(n){var r=this.getLineOffsets();if(n.line>=r.length){return this._content.length}else if(n.line<0){return 0}var t=r[n.line];var e=n.line+1{let r=n.getLanguageId();if(r!==this._languageId){return}let t;this._listener[n.uri.toString()]=n.onDidChangeContent((()=>{window.clearTimeout(t);t=window.setTimeout((()=>this._doValidate(n.uri,r)),500)}));this._doValidate(n.uri,r)};const i=n=>{a.editor.setModelMarkers(n,this._languageId,[]);let r=n.uri.toString();let t=this._listener[r];if(t){t.dispose();delete this._listener[r]}};this._disposables.push(a.editor.onDidCreateModel(e));this._disposables.push(a.editor.onWillDisposeModel(i));this._disposables.push(a.editor.onDidChangeModelLanguage((n=>{i(n.model);e(n.model)})));this._disposables.push(t((n=>{a.editor.getModels().forEach((n=>{if(n.getLanguageId()===this._languageId){i(n);e(n)}}))})));this._disposables.push({dispose:()=>{a.editor.getModels().forEach(i);for(let n in this._listener){this._listener[n].dispose()}}});a.editor.getModels().forEach(e)}_disposables=[];_listener=Object.create(null);dispose(){this._disposables.forEach((n=>n&&n.dispose()));this._disposables.length=0}_doValidate(n,r){this._worker(n).then((r=>r.doValidation(n.toString()))).then((t=>{const e=t.map((r=>jn(n,r)));let i=a.editor.getModel(n);if(i&&i.getLanguageId()===r){a.editor.setModelMarkers(i,r,e)}})).then(void 0,(n=>{console.error(n)}))}};function pn(n){switch(n){case k.Error:return a.MarkerSeverity.Error;case k.Warning:return a.MarkerSeverity.Warning;case k.Information:return a.MarkerSeverity.Info;case k.Hint:return a.MarkerSeverity.Hint;default:return a.MarkerSeverity.Info}}function jn(n,r){let t=typeof r.code==="number"?String(r.code):r.code;return{severity:pn(r.severity),startLineNumber:r.range.start.line+1,startColumn:r.range.start.character+1,endLineNumber:r.range.end.line+1,endColumn:r.range.end.character+1,message:r.message,code:t,source:r.source}}var xn=class{constructor(n,r){this._worker=n;this._triggerCharacters=r}get triggerCharacters(){return this._triggerCharacters}provideCompletionItems(n,r,t,e){const i=n.uri;return this._worker(i).then((n=>n.doComplete(i.toString(),kn(r)))).then((t=>{if(!t){return}const e=n.getWordUntilPosition(r);const i=new a.Range(r.lineNumber,e.startColumn,r.lineNumber,e.endColumn);const u=t.items.map((n=>{const r={label:n.label,insertText:n.insertText||n.label,sortText:n.sortText,filterText:n.filterText,documentation:n.documentation,detail:n.detail,command:Tn(n.command),range:i,kind:En(n.kind)};if(n.textEdit){if(On(n.textEdit)){r.range={insert:In(n.textEdit.insert),replace:In(n.textEdit.replace)}}else{r.range=In(n.textEdit.range)}r.insertText=n.textEdit.newText}if(n.additionalTextEdits){r.additionalTextEdits=n.additionalTextEdits.map(_n)}if(n.insertTextFormat===V.Snippet){r.insertTextRules=a.languages.CompletionItemInsertTextRule.InsertAsSnippet}return r}));return{isIncomplete:t.isIncomplete,suggestions:u}}))}};function kn(n){if(!n){return void 0}return{character:n.column-1,line:n.lineNumber-1}}function yn(n){if(!n){return void 0}return{start:{line:n.startLineNumber-1,character:n.startColumn-1},end:{line:n.endLineNumber-1,character:n.endColumn-1}}}function In(n){if(!n){return void 0}return new a.Range(n.start.line+1,n.start.character+1,n.end.line+1,n.end.character+1)}function On(n){return typeof n.insert!=="undefined"&&typeof n.replace!=="undefined"}function En(n){const r=a.languages.CompletionItemKind;switch(n){case P.Text:return r.Text;case P.Method:return r.Method;case P.Function:return r.Function;case P.Constructor:return r.Constructor;case P.Field:return r.Field;case P.Variable:return r.Variable;case P.Class:return r.Class;case P.Interface:return r.Interface;case P.Module:return r.Module;case P.Property:return r.Property;case P.Unit:return r.Unit;case P.Value:return r.Value;case P.Enum:return r.Enum;case P.Keyword:return r.Keyword;case P.Snippet:return r.Snippet;case P.Color:return r.Color;case P.File:return r.File;case P.Reference:return r.Reference}return r.Property}function _n(n){if(!n){return void 0}return{range:In(n.range),text:n.newText}}function Tn(n){return n&&n.command==="editor.action.triggerSuggest"?{id:n.command,title:n.title,arguments:n.arguments}:void 0}var Rn=class{constructor(n){this._worker=n}provideHover(n,r,t){let e=n.uri;return this._worker(e).then((n=>n.doHover(e.toString(),kn(r)))).then((n=>{if(!n){return}return{range:In(n.range),contents:Dn(n.contents)}}))}};function Sn(n){return n&&typeof n==="object"&&typeof n.kind==="string"}function Cn(n){if(typeof n==="string"){return{value:n}}if(Sn(n)){if(n.kind==="plaintext"){return{value:n.value.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}}return{value:n.value}}return{value:"```"+n.language+"\n"+n.value+"\n```\n"}}function Dn(n){if(!n){return void 0}if(Array.isArray(n)){return n.map(Cn)}return[Cn(n)]}var Nn=class{constructor(n){this._worker=n}provideDocumentHighlights(n,r,t){const e=n.uri;return this._worker(e).then((n=>n.findDocumentHighlights(e.toString(),kn(r)))).then((n=>{if(!n){return}return n.map((n=>({range:In(n.range),kind:Wn(n.kind)})))}))}};function Wn(n){switch(n){case rn.Read:return a.languages.DocumentHighlightKind.Read;case rn.Write:return a.languages.DocumentHighlightKind.Write;case rn.Text:return a.languages.DocumentHighlightKind.Text}return a.languages.DocumentHighlightKind.Text}var Ln=class{constructor(n){this._worker=n}provideDefinition(n,r,t){const e=n.uri;return this._worker(e).then((n=>n.findDefinition(e.toString(),kn(r)))).then((n=>{if(!n){return}return[An(n)]}))}};function An(n){return{uri:a.Uri.parse(n.uri),range:In(n.range)}}var Mn=class{constructor(n){this._worker=n}provideReferences(n,r,t,e){const i=n.uri;return this._worker(i).then((n=>n.findReferences(i.toString(),kn(r)))).then((n=>{if(!n){return}return n.map(An)}))}};var Fn=class{constructor(n){this._worker=n}provideRenameEdits(n,r,t,e){const i=n.uri;return this._worker(i).then((n=>n.doRename(i.toString(),kn(r),t))).then((n=>zn(n)))}};function zn(n){if(!n||!n.changes){return void 0}let r=[];for(let t in n.changes){const e=a.Uri.parse(t);for(let i of n.changes[t]){r.push({resource:e,versionId:void 0,textEdit:{range:In(i.range),text:i.newText}})}}return{edits:r}}var Un=class{constructor(n){this._worker=n}provideDocumentSymbols(n,r){const t=n.uri;return this._worker(t).then((n=>n.findDocumentSymbols(t.toString()))).then((n=>{if(!n){return}return n.map((n=>({name:n.name,detail:"",containerName:n.containerName,kind:Hn(n.kind),range:In(n.location.range),selectionRange:In(n.location.range),tags:[]})))}))}};function Hn(n){let r=a.languages.SymbolKind;switch(n){case en.File:return r.Array;case en.Module:return r.Module;case en.Namespace:return r.Namespace;case en.Package:return r.Package;case en.Class:return r.Class;case en.Method:return r.Method;case en.Property:return r.Property;case en.Field:return r.Field;case en.Constructor:return r.Constructor;case en.Enum:return r.Enum;case en.Interface:return r.Interface;case en.Function:return r.Function;case en.Variable:return r.Variable;case en.Constant:return r.Constant;case en.String:return r.String;case en.Number:return r.Number;case en.Boolean:return r.Boolean;case en.Array:return r.Array}return r.Function}var $n=class{constructor(n){this._worker=n}provideLinks(n,r){const t=n.uri;return this._worker(t).then((n=>n.findDocumentLinks(t.toString()))).then((n=>{if(!n){return}return{links:n.map((n=>({range:In(n.range),url:n.target})))}}))}};var qn=class{constructor(n){this._worker=n}provideDocumentFormattingEdits(n,r,t){const e=n.uri;return this._worker(e).then((n=>n.format(e.toString(),null,Vn(r)).then((n=>{if(!n||n.length===0){return}return n.map(_n)}))))}};var Pn=class{constructor(n){this._worker=n}canFormatMultipleRanges=false;provideDocumentRangeFormattingEdits(n,r,t,e){const i=n.uri;return this._worker(i).then((n=>n.format(i.toString(),yn(r),Vn(t)).then((n=>{if(!n||n.length===0){return}return n.map(_n)}))))}};function Vn(n){return{tabSize:n.tabSize,insertSpaces:n.insertSpaces}}var Bn=class{constructor(n){this._worker=n}provideDocumentColors(n,r){const t=n.uri;return this._worker(t).then((n=>n.findDocumentColors(t.toString()))).then((n=>{if(!n){return}return n.map((n=>({color:n.color,range:In(n.range)})))}))}provideColorPresentations(n,r,t){const e=n.uri;return this._worker(e).then((n=>n.getColorPresentations(e.toString(),r.color,yn(r.range)))).then((n=>{if(!n){return}return n.map((n=>{let r={label:n.label};if(n.textEdit){r.textEdit=_n(n.textEdit)}if(n.additionalTextEdits){r.additionalTextEdits=n.additionalTextEdits.map(_n)}return r}))}))}};var Gn=class{constructor(n){this._worker=n}provideFoldingRanges(n,r,t){const e=n.uri;return this._worker(e).then((n=>n.getFoldingRanges(e.toString(),r))).then((n=>{if(!n){return}return n.map((n=>{const r={start:n.startLine+1,end:n.endLine+1};if(typeof n.kind!=="undefined"){r.kind=Jn(n.kind)}return r}))}))}};function Jn(n){switch(n){case p.Comment:return a.languages.FoldingRangeKind.Comment;case p.Imports:return a.languages.FoldingRangeKind.Imports;case p.Region:return a.languages.FoldingRangeKind.Region}return void 0}var Kn=class{constructor(n){this._worker=n}provideSelectionRanges(n,r,t){const e=n.uri;return this._worker(e).then((n=>n.getSelectionRanges(e.toString(),r.map(kn)))).then((n=>{if(!n){return}return n.map((n=>{const r=[];while(n){r.push({range:In(n.range)});n=n.parent}return r}))}))}};function Qn(n){const r=[];const t=[];const e=new c(n);r.push(e);const i=(...n)=>e.getLanguageServiceWorker(...n);function u(){const{languageId:r,modeConfiguration:e}=n;Yn(t);if(e.completionItems){t.push(a.languages.registerCompletionItemProvider(r,new xn(i,["/","-",":"])))}if(e.hovers){t.push(a.languages.registerHoverProvider(r,new Rn(i)))}if(e.documentHighlights){t.push(a.languages.registerDocumentHighlightProvider(r,new Nn(i)))}if(e.definitions){t.push(a.languages.registerDefinitionProvider(r,new Ln(i)))}if(e.references){t.push(a.languages.registerReferenceProvider(r,new Mn(i)))}if(e.documentSymbols){t.push(a.languages.registerDocumentSymbolProvider(r,new Un(i)))}if(e.rename){t.push(a.languages.registerRenameProvider(r,new Fn(i)))}if(e.colors){t.push(a.languages.registerColorProvider(r,new Bn(i)))}if(e.foldingRanges){t.push(a.languages.registerFoldingRangeProvider(r,new Gn(i)))}if(e.diagnostics){t.push(new bn(r,i,n.onDidChange))}if(e.selectionRanges){t.push(a.languages.registerSelectionRangeProvider(r,new Kn(i)))}if(e.documentFormattingEdits){t.push(a.languages.registerDocumentFormattingEditProvider(r,new qn(i)))}if(e.documentRangeFormattingEdits){t.push(a.languages.registerDocumentRangeFormattingEditProvider(r,new Pn(i)))}}u();r.push(Xn(t));return Xn(r)}function Xn(n){return{dispose:()=>Yn(n)}}function Yn(n){while(n.length){n.pop().dispose()}}export{xn as CompletionAdapter,Ln as DefinitionAdapter,bn as DiagnosticsAdapter,Bn as DocumentColorAdapter,qn as DocumentFormattingEditProvider,Nn as DocumentHighlightAdapter,$n as DocumentLinkAdapter,Pn as DocumentRangeFormattingEditProvider,Un as DocumentSymbolAdapter,Gn as FoldingRangeAdapter,Rn as HoverAdapter,Mn as ReferenceAdapter,Fn as RenameAdapter,Kn as SelectionRangeAdapter,c as WorkerManager,kn as fromPosition,yn as fromRange,Qn as setupMode,In as toRange,_n as toTextEdit}; +//# sourceMappingURL=p-6badbcb0.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-78ddf3b4.js b/www/js/zeneditor/p-78ddf3b4.js new file mode 100644 index 0000000000..892bfabc55 --- /dev/null +++ b/www/js/zeneditor/p-78ddf3b4.js @@ -0,0 +1,8 @@ +import{b as e}from"./p-b80ff9a8.js";import"./p-f027b047.js";import"./p-0d1d1366.js"; +/*!----------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Version: 0.37.1(20a8d5a651d057aaed7875ad1c1f2ecf13c4e773) + * Released under the MIT license + * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt + *-----------------------------------------------------------------------------*/var t=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var m=Object.prototype.hasOwnProperty;var a=(e,a,i,n)=>{if(a&&typeof a==="object"||typeof a==="function"){for(let s of o(a))if(!m.call(e,s)&&s!==i)t(e,s,{get:()=>a[s],enumerable:!(n=r(a,s))||n.enumerable})}return e};var i=(e,t,r)=>(a(e,t,"default"),r&&a(r,t,"default"));var n={};i(n,e);var s=["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"];var c={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\$\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\s]+)/g,comments:{blockComment:["\x3c!--","--\x3e"]},brackets:[["\x3c!--","--\x3e"],["<",">"],["{","}"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:'"',close:'"'},{open:"'",close:"'"},{open:"<",close:">"}],onEnterRules:[{beforeText:new RegExp(`<(?!(?:${s.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),afterText:/^<\/(\w[\w\d]*)\s*>$/i,action:{indentAction:n.languages.IndentAction.IndentOutdent}},{beforeText:new RegExp(`<(?!(?:${s.join("|")}))(\\w[\\w\\d]*)([^/>]*(?!/)>)[^<]*$`,"i"),action:{indentAction:n.languages.IndentAction.Indent}}]};var l={defaultToken:"",tokenPostfix:"",tokenizer:{root:[[/@@@@/],[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.root"}],[/)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)(script)/,["delimiter.html",{token:"tag.html",next:"@script"}]],[/(<)(style)/,["delimiter.html",{token:"tag.html",next:"@style"}]],[/(<)([:\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/(<\/)([\w\-]+)/,["delimiter.html",{token:"tag.html",next:"@otherTag"}]],[/]+/,"metatag.content.html"],[/>/,"metatag.html","@pop"]],comment:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.comment"}],[/-->/,"comment.html","@pop"],[/[^-]+/,"comment.content.html"],[/./,"comment.content.html"]],otherTag:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.otherTag"}],[/\/?>/,"delimiter.html","@pop"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/]],script:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.script"}],[/type/,"attribute.name","@scriptAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/(<\/)(script\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],scriptAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterType"}],[/=/,"delimiter","@scriptAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@scriptWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.text/javascript",nextEmbedded:"text/javascript"}],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.scriptWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@scriptEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/script\s*>/,{token:"@rematch",next:"@pop"}]],scriptEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.scriptEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/script/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],style:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.style"}],[/type/,"attribute.name","@styleAfterType"],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/(<\/)(style\s*)(>)/,["delimiter.html","tag.html",{token:"delimiter.html",next:"@pop"}]]],styleAfterType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterType"}],[/=/,"delimiter","@styleAfterTypeEquals"],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleAfterTypeEquals:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleAfterTypeEquals"}],[/"([^"]*)"/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/'([^']*)'/,{token:"attribute.value",switchTo:"@styleWithCustomType.$1"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.text/css",nextEmbedded:"text/css"}],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleWithCustomType:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInSimpleState.styleWithCustomType.$S2"}],[/>/,{token:"delimiter.html",next:"@styleEmbedded.$S2",nextEmbedded:"$S2"}],[/"([^"]*)"/,"attribute.value"],[/'([^']*)'/,"attribute.value"],[/[\w\-]+/,"attribute.name"],[/=/,"delimiter"],[/[ \t\r\n]+/],[/<\/style\s*>/,{token:"@rematch",next:"@pop"}]],styleEmbedded:[[/@[^@]/,{token:"@rematch",switchTo:"@razorInEmbeddedState.styleEmbedded.$S2",nextEmbedded:"@pop"}],[/<\/style/,{token:"@rematch",next:"@pop",nextEmbedded:"@pop"}]],razorInSimpleState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3"}]],razorInEmbeddedState:[[/@\*/,"comment.cs","@razorBlockCommentTopLevel"],[/@[{(]/,"metatag.cs","@razorRootTopLevel"],[/(@)(\s*[\w]+)/,["metatag.cs",{token:"identifier.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],[/[})]/,{token:"metatag.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}],[/\*@/,{token:"comment.cs",switchTo:"@$S2.$S3",nextEmbedded:"$S3"}]],razorBlockCommentTopLevel:[[/\*@/,"@rematch","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorBlockComment:[[/\*@/,"comment.cs","@pop"],[/[^*]+/,"comment.cs"],[/./,"comment.cs"]],razorRootTopLevel:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/[})]/,"@rematch","@pop"],{include:"razorCommon"}],razorRoot:[[/\{/,"delimiter.bracket.cs","@razorRoot"],[/\(/,"delimiter.parenthesis.cs","@razorRoot"],[/\}/,"delimiter.bracket.cs","@pop"],[/\)/,"delimiter.parenthesis.cs","@pop"],{include:"razorCommon"}],razorCommon:[[/[a-zA-Z_]\w*/,{cases:{"@razorKeywords":{token:"keyword.cs"},"@default":"identifier.cs"}}],[/[\[\]]/,"delimiter.array.cs"],[/[ \t\r\n]+/],[/\/\/.*$/,"comment.cs"],[/@\*/,"comment.cs","@razorBlockComment"],[/"([^"]*)"/,"string.cs"],[/'([^']*)'/,"string.cs"],[/(<)([\w\-]+)(\/>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<)([\w\-]+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/(<\/)([\w\-]+)(>)/,["delimiter.html","tag.html","delimiter.html"]],[/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,]/,"delimiter.cs"],[/\d*\d+[eE]([\-+]?\d+)?/,"number.float.cs"],[/\d*\.\d+([eE][\-+]?\d+)?/,"number.float.cs"],[/0[xX][0-9a-fA-F']*[0-9a-fA-F]/,"number.hex.cs"],[/0[0-7']*[0-7]/,"number.octal.cs"],[/0[bB][0-1']*[0-1]/,"number.binary.cs"],[/\d[\d']*/,"number.cs"],[/\d/,"number.cs"]]},razorKeywords:["abstract","as","async","await","base","bool","break","by","byte","case","catch","char","checked","class","const","continue","decimal","default","delegate","do","double","descending","explicit","event","extern","else","enum","false","finally","fixed","float","for","foreach","from","goto","group","if","implicit","in","int","interface","internal","into","is","lock","long","nameof","new","null","namespace","object","operator","out","override","orderby","params","private","protected","public","readonly","ref","return","switch","struct","sbyte","sealed","short","sizeof","stackalloc","static","string","select","this","throw","true","try","typeof","uint","ulong","unchecked","unsafe","ushort","using","var","virtual","volatile","void","when","while","where","yield","model","inject"],escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/};export{c as conf,l as language}; +//# sourceMappingURL=p-78ddf3b4.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-8ca4033a.js b/www/js/zeneditor/p-8ca4033a.js new file mode 100644 index 0000000000..9955cfd9ae --- /dev/null +++ b/www/js/zeneditor/p-8ca4033a.js @@ -0,0 +1,8 @@ +import{conf as e,language as t}from"./p-e3cc72be.js";import"./p-b80ff9a8.js";import"./p-f027b047.js";import"./p-0d1d1366.js"; +/*!----------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Version: 0.37.1(20a8d5a651d057aaed7875ad1c1f2ecf13c4e773) + * Released under the MIT license + * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt + *-----------------------------------------------------------------------------*/var s=e;var o={defaultToken:"invalid",tokenPostfix:".js",keywords:["break","case","catch","class","continue","const","constructor","debugger","default","delete","do","else","export","extends","false","finally","for","from","function","get","if","import","in","instanceof","let","new","null","return","set","super","switch","symbol","this","throw","true","try","typeof","undefined","var","void","while","with","yield","async","await","of"],typeKeywords:[],operators:t.operators,symbols:t.symbols,escapes:t.escapes,digits:t.digits,octaldigits:t.octaldigits,binarydigits:t.binarydigits,hexdigits:t.hexdigits,regexpctl:t.regexpctl,regexpesc:t.regexpesc,tokenizer:t.tokenizer};export{s as conf,o as language}; +//# sourceMappingURL=p-8ca4033a.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-aebcbb44.js b/www/js/zeneditor/p-aebcbb44.js new file mode 100644 index 0000000000..6573090c2b --- /dev/null +++ b/www/js/zeneditor/p-aebcbb44.js @@ -0,0 +1,8 @@ +import{t,b as e}from"./p-b80ff9a8.js";import"./p-f027b047.js";import"./p-0d1d1366.js"; +/*!----------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Version: 0.37.1(20a8d5a651d057aaed7875ad1c1f2ecf13c4e773) + * Released under the MIT license + * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt + *-----------------------------------------------------------------------------*/var r=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var o=(t,e,n)=>e in t?r(t,e,{enumerable:true,configurable:true,writable:true,value:n}):t[e]=n;var a=(t,e,o,a)=>{if(e&&typeof e==="object"||typeof e==="function"){for(let c of s(e))if(!i.call(t,c)&&c!==o)r(t,c,{get:()=>e[c],enumerable:!(a=n(e,c))||a.enumerable})}return t};var c=(t,e,r)=>(a(t,e,"default"),r&&a(r,e,"default"));var u=(t,e,r)=>{o(t,typeof e!=="symbol"?e+"":e,r);return r};var l={};c(l,e);var f=class{constructor(t,e){this._modeId=t;this._defaults=e;this._worker=null;this._client=null;this._configChangeListener=this._defaults.onDidChange((()=>this._stopWorker()));this._updateExtraLibsToken=0;this._extraLibsChangeListener=this._defaults.onDidExtraLibsChange((()=>this._updateExtraLibs()))}_configChangeListener;_updateExtraLibsToken;_extraLibsChangeListener;_worker;_client;dispose(){this._configChangeListener.dispose();this._extraLibsChangeListener.dispose();this._stopWorker()}_stopWorker(){if(this._worker){this._worker.dispose();this._worker=null}this._client=null}async _updateExtraLibs(){if(!this._worker){return}const t=++this._updateExtraLibsToken;const e=await this._worker.getProxy();if(this._updateExtraLibsToken!==t){return}e.updateExtraLibs(this._defaults.getExtraLibs())}_getClient(){if(!this._client){this._client=(async()=>{this._worker=l.editor.createWebWorker({moduleId:"vs/language/typescript/tsWorker",label:this._modeId,keepIdleModels:true,createData:{compilerOptions:this._defaults.getCompilerOptions(),extraLibs:this._defaults.getExtraLibs(),customWorkerPath:this._defaults.workerOptions.customWorkerPath,inlayHintsOptions:this._defaults.inlayHintsOptions}});if(this._defaults.getEagerModelSync()){return await this._worker.withSyncedResources(l.editor.getModels().filter((t=>t.getLanguageId()===this._modeId)).map((t=>t.uri)))}return await this._worker.getProxy()})()}return this._client}async getLanguageServiceWorker(...t){const e=await this._getClient();if(this._worker){await this._worker.withSyncedResources(t)}return e}};var h={};h["lib.d.ts"]=true;h["lib.decorators.d.ts"]=true;h["lib.decorators.legacy.d.ts"]=true;h["lib.dom.d.ts"]=true;h["lib.dom.iterable.d.ts"]=true;h["lib.es2015.collection.d.ts"]=true;h["lib.es2015.core.d.ts"]=true;h["lib.es2015.d.ts"]=true;h["lib.es2015.generator.d.ts"]=true;h["lib.es2015.iterable.d.ts"]=true;h["lib.es2015.promise.d.ts"]=true;h["lib.es2015.proxy.d.ts"]=true;h["lib.es2015.reflect.d.ts"]=true;h["lib.es2015.symbol.d.ts"]=true;h["lib.es2015.symbol.wellknown.d.ts"]=true;h["lib.es2016.array.include.d.ts"]=true;h["lib.es2016.d.ts"]=true;h["lib.es2016.full.d.ts"]=true;h["lib.es2017.d.ts"]=true;h["lib.es2017.full.d.ts"]=true;h["lib.es2017.intl.d.ts"]=true;h["lib.es2017.object.d.ts"]=true;h["lib.es2017.sharedmemory.d.ts"]=true;h["lib.es2017.string.d.ts"]=true;h["lib.es2017.typedarrays.d.ts"]=true;h["lib.es2018.asyncgenerator.d.ts"]=true;h["lib.es2018.asynciterable.d.ts"]=true;h["lib.es2018.d.ts"]=true;h["lib.es2018.full.d.ts"]=true;h["lib.es2018.intl.d.ts"]=true;h["lib.es2018.promise.d.ts"]=true;h["lib.es2018.regexp.d.ts"]=true;h["lib.es2019.array.d.ts"]=true;h["lib.es2019.d.ts"]=true;h["lib.es2019.full.d.ts"]=true;h["lib.es2019.intl.d.ts"]=true;h["lib.es2019.object.d.ts"]=true;h["lib.es2019.string.d.ts"]=true;h["lib.es2019.symbol.d.ts"]=true;h["lib.es2020.bigint.d.ts"]=true;h["lib.es2020.d.ts"]=true;h["lib.es2020.date.d.ts"]=true;h["lib.es2020.full.d.ts"]=true;h["lib.es2020.intl.d.ts"]=true;h["lib.es2020.number.d.ts"]=true;h["lib.es2020.promise.d.ts"]=true;h["lib.es2020.sharedmemory.d.ts"]=true;h["lib.es2020.string.d.ts"]=true;h["lib.es2020.symbol.wellknown.d.ts"]=true;h["lib.es2021.d.ts"]=true;h["lib.es2021.full.d.ts"]=true;h["lib.es2021.intl.d.ts"]=true;h["lib.es2021.promise.d.ts"]=true;h["lib.es2021.string.d.ts"]=true;h["lib.es2021.weakref.d.ts"]=true;h["lib.es2022.array.d.ts"]=true;h["lib.es2022.d.ts"]=true;h["lib.es2022.error.d.ts"]=true;h["lib.es2022.full.d.ts"]=true;h["lib.es2022.intl.d.ts"]=true;h["lib.es2022.object.d.ts"]=true;h["lib.es2022.regexp.d.ts"]=true;h["lib.es2022.sharedmemory.d.ts"]=true;h["lib.es2022.string.d.ts"]=true;h["lib.es2023.array.d.ts"]=true;h["lib.es2023.d.ts"]=true;h["lib.es2023.full.d.ts"]=true;h["lib.es5.d.ts"]=true;h["lib.es6.d.ts"]=true;h["lib.esnext.d.ts"]=true;h["lib.esnext.full.d.ts"]=true;h["lib.esnext.intl.d.ts"]=true;h["lib.scripthost.d.ts"]=true;h["lib.webworker.d.ts"]=true;h["lib.webworker.importscripts.d.ts"]=true;h["lib.webworker.iterable.d.ts"]=true;function d(t,e,r=0){if(typeof t==="string"){return t}else if(t===void 0){return""}let n="";if(r){n+=e;for(let t=0;tt.text)).join("")}return""}var p=class{constructor(t){this._worker=t}_textSpanToRange(t,e){let r=t.getPositionAt(e.start);let n=t.getPositionAt(e.start+e.length);let{lineNumber:s,column:i}=r;let{lineNumber:o,column:a}=n;return{startLineNumber:s,startColumn:i,endLineNumber:o,endColumn:a}}};var g=class{constructor(t){this._worker=t;this._libFiles={};this._hasFetchedLibFiles=false;this._fetchLibFilesPromise=null}_libFiles;_hasFetchedLibFiles;_fetchLibFilesPromise;isLibFile(t){if(!t){return false}if(t.path.indexOf("/lib.")===0){return!!h[t.path.slice(1)]}return false}getOrCreateModel(e){const r=l.Uri.parse(e);const n=l.editor.getModel(r);if(n){return n}if(this.isLibFile(r)&&this._hasFetchedLibFiles){return l.editor.createModel(this._libFiles[r.path.slice(1)],"typescript",r)}const s=t.getExtraLibs()[e];if(s){return l.editor.createModel(s.content,"typescript",r)}return null}_containsLibFile(t){for(let e of t){if(this.isLibFile(e)){return true}}return false}async fetchLibFilesIfNecessary(t){if(!this._containsLibFile(t)){return}await this._fetchLibFiles()}_fetchLibFiles(){if(!this._fetchLibFilesPromise){this._fetchLibFilesPromise=this._worker().then((t=>t.getLibFiles())).then((t=>{this._hasFetchedLibFiles=true;this._libFiles=t}))}return this._fetchLibFilesPromise}};var w=class extends p{constructor(t,e,r,n){super(n);this._libFiles=t;this._defaults=e;this._selector=r;const s=t=>{if(t.getLanguageId()!==r){return}const e=()=>{const{onlyVisible:e}=this._defaults.getDiagnosticsOptions();if(e){if(t.isAttachedToEditor()){this._doValidate(t)}}else{this._doValidate(t)}};let n;const s=t.onDidChangeContent((()=>{clearTimeout(n);n=window.setTimeout(e,500)}));const i=t.onDidChangeAttached((()=>{const{onlyVisible:r}=this._defaults.getDiagnosticsOptions();if(r){if(t.isAttachedToEditor()){e()}else{l.editor.setModelMarkers(t,this._selector,[])}}}));this._listener[t.uri.toString()]={dispose(){s.dispose();i.dispose();clearTimeout(n)}};e()};const i=t=>{l.editor.setModelMarkers(t,this._selector,[]);const e=t.uri.toString();if(this._listener[e]){this._listener[e].dispose();delete this._listener[e]}};this._disposables.push(l.editor.onDidCreateModel((t=>s(t))));this._disposables.push(l.editor.onWillDisposeModel(i));this._disposables.push(l.editor.onDidChangeModelLanguage((t=>{i(t.model);s(t.model)})));this._disposables.push({dispose(){for(const t of l.editor.getModels()){i(t)}}});const o=()=>{for(const t of l.editor.getModels()){i(t);s(t)}};this._disposables.push(this._defaults.onDidChange(o));this._disposables.push(this._defaults.onDidExtraLibsChange(o));l.editor.getModels().forEach((t=>s(t)))}_disposables=[];_listener=Object.create(null);dispose(){this._disposables.forEach((t=>t&&t.dispose()));this._disposables=[]}async _doValidate(t){const e=await this._worker(t.uri);if(t.isDisposed()){return}const r=[];const{noSyntaxValidation:n,noSemanticValidation:s,noSuggestionDiagnostics:i}=this._defaults.getDiagnosticsOptions();if(!n){r.push(e.getSyntacticDiagnostics(t.uri.toString()))}if(!s){r.push(e.getSemanticDiagnostics(t.uri.toString()))}if(!i){r.push(e.getSuggestionDiagnostics(t.uri.toString()))}const o=await Promise.all(r);if(!o||t.isDisposed()){return}const a=o.reduce(((t,e)=>e.concat(t)),[]).filter((t=>(this._defaults.getDiagnosticsOptions().diagnosticCodesToIgnore||[]).indexOf(t.code)===-1));const c=a.map((t=>t.relatedInformation||[])).reduce(((t,e)=>e.concat(t)),[]).map((t=>t.file?l.Uri.parse(t.file.fileName):null));await this._libFiles.fetchLibFilesIfNecessary(c);if(t.isDisposed()){return}l.editor.setModelMarkers(t,this._selector,a.map((e=>this._convertDiagnostics(t,e))))}_convertDiagnostics(t,e){const r=e.start||0;const n=e.length||1;const{lineNumber:s,column:i}=t.getPositionAt(r);const{lineNumber:o,column:a}=t.getPositionAt(r+n);const c=[];if(e.reportsUnnecessary){c.push(l.MarkerTag.Unnecessary)}if(e.reportsDeprecated){c.push(l.MarkerTag.Deprecated)}return{severity:this._tsDiagnosticCategoryToMarkerSeverity(e.category),startLineNumber:s,startColumn:i,endLineNumber:o,endColumn:a,message:d(e.messageText,"\n"),code:e.code.toString(),tags:c,relatedInformation:this._convertRelatedInformation(t,e.relatedInformation)}}_convertRelatedInformation(t,e){if(!e){return[]}const r=[];e.forEach((e=>{let n=t;if(e.file){n=this._libFiles.getOrCreateModel(e.file.fileName)}if(!n){return}const s=e.start||0;const i=e.length||1;const{lineNumber:o,column:a}=n.getPositionAt(s);const{lineNumber:c,column:u}=n.getPositionAt(s+i);r.push({resource:n.uri,startLineNumber:o,startColumn:a,endLineNumber:c,endColumn:u,message:d(e.messageText,"\n")})}));return r}_tsDiagnosticCategoryToMarkerSeverity(t){switch(t){case 1:return l.MarkerSeverity.Error;case 3:return l.MarkerSeverity.Info;case 0:return l.MarkerSeverity.Warning;case 2:return l.MarkerSeverity.Hint}return l.MarkerSeverity.Info}};var v=class extends p{get triggerCharacters(){return["."]}async provideCompletionItems(t,e,r,n){const s=t.getWordUntilPosition(e);const i=new l.Range(e.lineNumber,s.startColumn,e.lineNumber,s.endColumn);const o=t.uri;const a=t.getOffsetAt(e);const c=await this._worker(o);if(t.isDisposed()){return}const u=await c.getCompletionsAtPosition(o.toString(),a);if(!u||t.isDisposed()){return}const f=u.entries.map((r=>{let n=i;if(r.replacementSpan){const e=t.getPositionAt(r.replacementSpan.start);const s=t.getPositionAt(r.replacementSpan.start+r.replacementSpan.length);n=new l.Range(e.lineNumber,e.column,s.lineNumber,s.column)}const s=[];if(r.kindModifiers!==void 0&&r.kindModifiers.indexOf("deprecated")!==-1){s.push(l.languages.CompletionItemTag.Deprecated)}return{uri:o,position:e,offset:a,range:n,label:r.name,insertText:r.name,sortText:r.sortText,kind:v.convertKind(r.kind),tags:s}}));return{suggestions:f}}async resolveCompletionItem(t,e){const r=t;const n=r.uri;const s=r.position;const i=r.offset;const o=await this._worker(n);const a=await o.getCompletionEntryDetails(n.toString(),i,r.label);if(!a){return r}return{uri:n,position:s,label:a.name,kind:v.convertKind(a.kind),detail:m(a.displayParts),documentation:{value:v.createDocumentationString(a)}}}static convertKind(t){switch(t){case _.primitiveType:case _.keyword:return l.languages.CompletionItemKind.Keyword;case _.variable:case _.localVariable:return l.languages.CompletionItemKind.Variable;case _.memberVariable:case _.memberGetAccessor:case _.memberSetAccessor:return l.languages.CompletionItemKind.Field;case _.function:case _.memberFunction:case _.constructSignature:case _.callSignature:case _.indexSignature:return l.languages.CompletionItemKind.Function;case _.enum:return l.languages.CompletionItemKind.Enum;case _.module:return l.languages.CompletionItemKind.Module;case _.class:return l.languages.CompletionItemKind.Class;case _.interface:return l.languages.CompletionItemKind.Interface;case _.warning:return l.languages.CompletionItemKind.File}return l.languages.CompletionItemKind.Property}static createDocumentationString(t){let e=m(t.documentation);if(t.tags){for(const r of t.tags){e+=`\n\n${b(r)}`}}return e}};function b(t){let e=`*@${t.name}*`;if(t.name==="param"&&t.text){const[r,...n]=t.text;e+=`\`${r.text}\``;if(n.length>0)e+=` — ${n.map((t=>t.text)).join(" ")}`}else if(Array.isArray(t.text)){e+=` — ${t.text.map((t=>t.text)).join(" ")}`}else if(t.text){e+=` — ${t.text}`}return e}var y=class extends p{signatureHelpTriggerCharacters=["(",","];static _toSignatureHelpTriggerReason(t){switch(t.triggerKind){case l.languages.SignatureHelpTriggerKind.TriggerCharacter:if(t.triggerCharacter){if(t.isRetrigger){return{kind:"retrigger",triggerCharacter:t.triggerCharacter}}else{return{kind:"characterTyped",triggerCharacter:t.triggerCharacter}}}else{return{kind:"invoked"}}case l.languages.SignatureHelpTriggerKind.ContentChange:return t.isRetrigger?{kind:"retrigger"}:{kind:"invoked"};case l.languages.SignatureHelpTriggerKind.Invoke:default:return{kind:"invoked"}}}async provideSignatureHelp(t,e,r,n){const s=t.uri;const i=t.getOffsetAt(e);const o=await this._worker(s);if(t.isDisposed()){return}const a=await o.getSignatureHelpItems(s.toString(),i,{triggerReason:y._toSignatureHelpTriggerReason(n)});if(!a||t.isDisposed()){return}const c={activeSignature:a.selectedItemIndex,activeParameter:a.argumentIndex,signatures:[]};a.items.forEach((t=>{const e={label:"",parameters:[]};e.documentation={value:m(t.documentation)};e.label+=m(t.prefixDisplayParts);t.parameters.forEach(((r,n,s)=>{const i=m(r.displayParts);const o={label:i,documentation:{value:m(r.documentation)}};e.label+=i;e.parameters.push(o);if(nb(t))).join(" \n\n"):"";const u=m(o.displayParts);return{range:this._textSpanToRange(t,o.textSpan),contents:[{value:"```typescript\n"+u+"\n```\n"},{value:a+(c?"\n\n"+c:"")}]}}};var S=class extends p{async provideDocumentHighlights(t,e,r){const n=t.uri;const s=t.getOffsetAt(e);const i=await this._worker(n);if(t.isDisposed()){return}const o=await i.getDocumentHighlights(n.toString(),s,[n.toString()]);if(!o||t.isDisposed()){return}return o.flatMap((e=>e.highlightSpans.map((e=>({range:this._textSpanToRange(t,e.textSpan),kind:e.kind==="writtenReference"?l.languages.DocumentHighlightKind.Write:l.languages.DocumentHighlightKind.Text})))))}};var C=class extends p{constructor(t,e){super(e);this._libFiles=t}async provideDefinition(t,e,r){const n=t.uri;const s=t.getOffsetAt(e);const i=await this._worker(n);if(t.isDisposed()){return}const o=await i.getDefinitionAtPosition(n.toString(),s);if(!o||t.isDisposed()){return}await this._libFiles.fetchLibFilesIfNecessary(o.map((t=>l.Uri.parse(t.fileName))));if(t.isDisposed()){return}const a=[];for(let t of o){const e=this._libFiles.getOrCreateModel(t.fileName);if(e){a.push({uri:e.uri,range:this._textSpanToRange(e,t.textSpan)})}}return a}};var k=class extends p{constructor(t,e){super(e);this._libFiles=t}async provideReferences(t,e,r,n){const s=t.uri;const i=t.getOffsetAt(e);const o=await this._worker(s);if(t.isDisposed()){return}const a=await o.getReferencesAtPosition(s.toString(),i);if(!a||t.isDisposed()){return}await this._libFiles.fetchLibFilesIfNecessary(a.map((t=>l.Uri.parse(t.fileName))));if(t.isDisposed()){return}const c=[];for(let t of a){const e=this._libFiles.getOrCreateModel(t.fileName);if(e){c.push({uri:e.uri,range:this._textSpanToRange(e,t.textSpan)})}}return c}};var N=class extends p{async provideDocumentSymbols(t,e){const r=t.uri;const n=await this._worker(r);if(t.isDisposed()){return}const s=await n.getNavigationTree(r.toString());if(!s||t.isDisposed()){return}const i=(e,r)=>{const n={name:e.text,detail:"",kind:I[e.kind]||l.languages.SymbolKind.Variable,range:this._textSpanToRange(t,e.spans[0]),selectionRange:this._textSpanToRange(t,e.spans[0]),tags:[],children:e.childItems?.map((t=>i(t,n.name))),containerName:r};return n};const o=s.childItems?s.childItems.map((t=>i(t))):[];return o}};var _=class{};u(_,"unknown","");u(_,"keyword","keyword");u(_,"script","script");u(_,"module","module");u(_,"class","class");u(_,"interface","interface");u(_,"type","type");u(_,"enum","enum");u(_,"variable","var");u(_,"localVariable","local var");u(_,"function","function");u(_,"localFunction","local function");u(_,"memberFunction","method");u(_,"memberGetAccessor","getter");u(_,"memberSetAccessor","setter");u(_,"memberVariable","property");u(_,"constructorImplementation","constructor");u(_,"callSignature","call");u(_,"indexSignature","index");u(_,"constructSignature","construct");u(_,"parameter","parameter");u(_,"typeParameter","type parameter");u(_,"primitiveType","primitive type");u(_,"label","label");u(_,"alias","alias");u(_,"const","const");u(_,"let","let");u(_,"warning","warning");var I=Object.create(null);I[_.module]=l.languages.SymbolKind.Module;I[_.class]=l.languages.SymbolKind.Class;I[_.enum]=l.languages.SymbolKind.Enum;I[_.interface]=l.languages.SymbolKind.Interface;I[_.memberFunction]=l.languages.SymbolKind.Method;I[_.memberVariable]=l.languages.SymbolKind.Property;I[_.memberGetAccessor]=l.languages.SymbolKind.Property;I[_.memberSetAccessor]=l.languages.SymbolKind.Property;I[_.variable]=l.languages.SymbolKind.Variable;I[_.const]=l.languages.SymbolKind.Variable;I[_.localVariable]=l.languages.SymbolKind.Variable;I[_.variable]=l.languages.SymbolKind.Variable;I[_.function]=l.languages.SymbolKind.Function;I[_.localFunction]=l.languages.SymbolKind.Function;var F=class extends p{static _convertOptions(t){return{ConvertTabsToSpaces:t.insertSpaces,TabSize:t.tabSize,IndentSize:t.tabSize,IndentStyle:2,NewLineCharacter:"\n",InsertSpaceAfterCommaDelimiter:true,InsertSpaceAfterSemicolonInForStatements:true,InsertSpaceBeforeAndAfterBinaryOperators:true,InsertSpaceAfterKeywordsInControlFlowStatements:true,InsertSpaceAfterFunctionKeywordForAnonymousFunctions:true,InsertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:false,InsertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:false,InsertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:false,PlaceOpenBraceOnNewLineForControlBlocks:false,PlaceOpenBraceOnNewLineForFunctions:false}}_convertTextChanges(t,e){return{text:e.newText,range:this._textSpanToRange(t,e.span)}}};var L=class extends F{canFormatMultipleRanges=false;async provideDocumentRangeFormattingEdits(t,e,r,n){const s=t.uri;const i=t.getOffsetAt({lineNumber:e.startLineNumber,column:e.startColumn});const o=t.getOffsetAt({lineNumber:e.endLineNumber,column:e.endColumn});const a=await this._worker(s);if(t.isDisposed()){return}const c=await a.getFormattingEditsForRange(s.toString(),i,o,F._convertOptions(r));if(!c||t.isDisposed()){return}return c.map((e=>this._convertTextChanges(t,e)))}};var T=class extends F{get autoFormatTriggerCharacters(){return[";","}","\n"]}async provideOnTypeFormattingEdits(t,e,r,n,s){const i=t.uri;const o=t.getOffsetAt(e);const a=await this._worker(i);if(t.isDisposed()){return}const c=await a.getFormattingEditsAfterKeystroke(i.toString(),o,r,F._convertOptions(n));if(!c||t.isDisposed()){return}return c.map((e=>this._convertTextChanges(t,e)))}};var O=class extends F{async provideCodeActions(t,e,r,n){const s=t.uri;const i=t.getOffsetAt({lineNumber:e.startLineNumber,column:e.startColumn});const o=t.getOffsetAt({lineNumber:e.endLineNumber,column:e.endColumn});const a=F._convertOptions(t.getOptions());const c=r.markers.filter((t=>t.code)).map((t=>t.code)).map(Number);const u=await this._worker(s);if(t.isDisposed()){return}const l=await u.getCodeFixesAtPosition(s.toString(),i,o,c,a);if(!l||t.isDisposed()){return{actions:[],dispose:()=>{}}}const f=l.filter((t=>t.changes.filter((t=>t.isNewFile)).length===0)).map((e=>this._tsCodeFixActionToMonacoCodeAction(t,r,e)));return{actions:f,dispose:()=>{}}}_tsCodeFixActionToMonacoCodeAction(t,e,r){const n=[];for(const e of r.changes){for(const r of e.textChanges){n.push({resource:t.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(t,r.span),text:r.newText}})}}const s={title:r.description,edit:{edits:n},diagnostics:e.markers,kind:"quickfix"};return s}};var A=class extends p{constructor(t,e){super(e);this._libFiles=t}async provideRenameEdits(t,e,r,n){const s=t.uri;const i=s.toString();const o=t.getOffsetAt(e);const a=await this._worker(s);if(t.isDisposed()){return}const c=await a.getRenameInfo(i,o,{allowRenameOfImportPath:false});if(c.canRename===false){return{edits:[],rejectReason:c.localizedErrorMessage}}if(c.fileToRename!==void 0){throw new Error("Renaming files is not supported.")}const u=await a.findRenameLocations(i,o,false,false,false);if(!u||t.isDisposed()){return}const l=[];for(const t of u){const e=this._libFiles.getOrCreateModel(t.fileName);if(e){l.push({resource:e.uri,versionId:void 0,textEdit:{range:this._textSpanToRange(e,t.textSpan),text:r}})}else{throw new Error(`Unknown file ${t.fileName}.`)}}return{edits:l}}};var R=class extends p{async provideInlayHints(t,e,r){const n=t.uri;const s=n.toString();const i=t.getOffsetAt({lineNumber:e.startLineNumber,column:e.startColumn});const o=t.getOffsetAt({lineNumber:e.endLineNumber,column:e.endColumn});const a=await this._worker(n);if(t.isDisposed()){return null}const c=await a.provideInlayHints(s,i,o);const u=c.map((e=>({...e,label:e.text,position:t.getPositionAt(e.position),kind:this._convertHintKind(e.kind)})));return{hints:u,dispose:()=>{}}}_convertHintKind(t){switch(t){case"Parameter":return l.languages.InlayHintKind.Parameter;case"Type":return l.languages.InlayHintKind.Type;default:return l.languages.InlayHintKind.Type}}};var j;var P;function B(t){P=V(t,"typescript")}function D(t){j=V(t,"javascript")}function E(){return new Promise(((t,e)=>{if(!j){return e("JavaScript not registered!")}t(j)}))}function H(){return new Promise(((t,e)=>{if(!P){return e("TypeScript not registered!")}t(P)}))}function V(t,e){const r=[];const n=new f(e,t);const s=(...t)=>n.getLanguageServiceWorker(...t);const i=new g(s);function o(){const{modeConfiguration:n}=t;$(r);if(n.completionItems){r.push(l.languages.registerCompletionItemProvider(e,new v(s)))}if(n.signatureHelp){r.push(l.languages.registerSignatureHelpProvider(e,new y(s)))}if(n.hovers){r.push(l.languages.registerHoverProvider(e,new x(s)))}if(n.documentHighlights){r.push(l.languages.registerDocumentHighlightProvider(e,new S(s)))}if(n.definitions){r.push(l.languages.registerDefinitionProvider(e,new C(i,s)))}if(n.references){r.push(l.languages.registerReferenceProvider(e,new k(i,s)))}if(n.documentSymbols){r.push(l.languages.registerDocumentSymbolProvider(e,new N(s)))}if(n.rename){r.push(l.languages.registerRenameProvider(e,new A(i,s)))}if(n.documentRangeFormattingEdits){r.push(l.languages.registerDocumentRangeFormattingEditProvider(e,new L(s)))}if(n.onTypeFormattingEdits){r.push(l.languages.registerOnTypeFormattingEditProvider(e,new T(s)))}if(n.codeActions){r.push(l.languages.registerCodeActionProvider(e,new O(s)))}if(n.inlayHints){r.push(l.languages.registerInlayHintsProvider(e,new R(s)))}if(n.diagnostics){r.push(new w(i,t,e,s))}}o();return s}function $(t){while(t.length){t.pop().dispose()}}export{p as Adapter,O as CodeActionAdaptor,C as DefinitionAdapter,w as DiagnosticsAdapter,S as DocumentHighlightAdapter,L as FormatAdapter,F as FormatHelper,T as FormatOnTypeAdapter,R as InlayHintsAdapter,_ as Kind,g as LibFiles,N as OutlineAdapter,x as QuickInfoAdapter,k as ReferenceAdapter,A as RenameAdapter,y as SignatureHelpAdapter,v as SuggestAdapter,f as WorkerManager,d as flattenDiagnosticMessageText,E as getJavaScriptWorker,H as getTypeScriptWorker,D as setupJavaScript,B as setupTypeScript}; +//# sourceMappingURL=p-aebcbb44.js.map \ No newline at end of file diff --git a/www/js/zeneditor/p-b80ff9a8.js b/www/js/zeneditor/p-b80ff9a8.js new file mode 100644 index 0000000000..0fc65faa4c --- /dev/null +++ b/www/js/zeneditor/p-b80ff9a8.js @@ -0,0 +1,507 @@ +import{r as t,h as e,g as i,c as n,H as s}from"./p-f027b047.js";import{E as r,P as o,a as c,M as h,m as l,b as a,c as u,N as d,w as f,t as g,g as p,d as m,T as w,D as b,f as v,e as y,n as k,h as x,i as C,j as S,k as D,l as A,o as E,p as M,q as L,r as _,s as O,S as F,u as T,v as R,x as I,F as N,y as B,z as P,A as j,B as $,C as z,G as H,H as W}from"./p-0d1d1366.js";const V=r.create({name:"characterCount",addOptions(){return{limit:null,mode:"textSize"}},addStorage(){return{characters:()=>0,words:()=>0}},onBeforeCreate(){this.storage.characters=t=>{const e=(t===null||t===void 0?void 0:t.node)||this.editor.state.doc;const i=(t===null||t===void 0?void 0:t.mode)||this.options.mode;if(i==="textSize"){const t=e.textBetween(0,e.content.size,undefined," ");return t.length}return e.nodeSize};this.storage.words=t=>{const e=(t===null||t===void 0?void 0:t.node)||this.editor.state.doc;const i=e.textBetween(0,e.content.size," "," ");const n=i.split(" ").filter((t=>t!==""));return n.length}},addProseMirrorPlugins(){return[new o({key:new c("characterCount"),filterTransaction:(t,e)=>{const i=this.options.limit;if(!t.docChanged||i===0||i===null||i===undefined){return true}const n=this.storage.characters({node:e.doc});const s=this.storage.characters({node:t.doc});if(s<=i){return true}if(n>i&&s>i&&s<=n){return true}if(n>i&&s>i&&s>n){return false}const r=t.getMeta("paste");if(!r){return false}const o=t.selection.$head.pos;const c=s-i;const h=o-c;const l=o;t.deleteRange(h,l);const a=this.storage.characters({node:t.doc});if(a>i){return false}return true}})]}});const U=/(?:^|\s)((?:==)((?:[^~=]+))(?:==))$/;const q=/(?:^|\s)((?:==)((?:[^~=]+))(?:==))/g;const K=h.create({name:"highlight",addOptions(){return{multicolor:false,HTMLAttributes:{}}},addAttributes(){if(!this.options.multicolor){return{}}return{color:{default:null,parseHTML:t=>t.getAttribute("data-color")||t.style.backgroundColor,renderHTML:t=>{if(!t.color){return{}}return{"data-color":t.color,style:`background-color: ${t.color}; color: inherit`}}}}},parseHTML(){return[{tag:"mark"}]},renderHTML({HTMLAttributes:t}){return["mark",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setHighlight:t=>({commands:e})=>e.setMark(this.name,t),toggleHighlight:t=>({commands:e})=>e.toggleMark(this.name,t),unsetHighlight:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-h":()=>this.editor.commands.toggleHighlight()}},addInputRules(){return[a({find:U,type:this.type})]},addPasteRules(){return[u({find:q,type:this.type})]}});const G=/^\s*(\[([( |x])?\])\s$/;const Z=d.create({name:"taskItem",addOptions(){return{nested:false,HTMLAttributes:{}}},content(){return this.options.nested?"paragraph block*":"paragraph+"},defining:true,addAttributes(){return{checked:{default:false,keepOnSplit:false,parseHTML:t=>t.getAttribute("data-checked")==="true",renderHTML:t=>({"data-checked":t.checked})}}},parseHTML(){return[{tag:`li[data-type="${this.name}"]`,priority:51}]},renderHTML({node:t,HTMLAttributes:e}){return["li",l(this.options.HTMLAttributes,e,{"data-type":this.name}),["label",["input",{type:"checkbox",checked:t.attrs.checked?"checked":null}],["span"]],["div",0]]},addKeyboardShortcuts(){const t={Enter:()=>this.editor.commands.splitListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)};if(!this.options.nested){return t}return{...t,Tab:()=>this.editor.commands.sinkListItem(this.name)}},addNodeView(){return({node:t,HTMLAttributes:e,getPos:i,editor:n})=>{const s=document.createElement("li");const r=document.createElement("label");const o=document.createElement("span");const c=document.createElement("input");const h=document.createElement("div");r.contentEditable="false";c.type="checkbox";c.addEventListener("change",(e=>{if(!n.isEditable&&!this.options.onReadOnlyChecked){c.checked=!c.checked;return}const{checked:s}=e.target;if(n.isEditable&&typeof i==="function"){n.chain().focus(undefined,{scrollIntoView:false}).command((({tr:t})=>{const e=i();const n=t.doc.nodeAt(e);t.setNodeMarkup(e,undefined,{...n===null||n===void 0?void 0:n.attrs,checked:s});return true})).run()}if(!n.isEditable&&this.options.onReadOnlyChecked){if(!this.options.onReadOnlyChecked(t,s)){c.checked=!c.checked}}}));Object.entries(this.options.HTMLAttributes).forEach((([t,e])=>{s.setAttribute(t,e)}));s.dataset.checked=t.attrs.checked;if(t.attrs.checked){c.setAttribute("checked","checked")}r.append(c,o);s.append(r,h);Object.entries(e).forEach((([t,e])=>{s.setAttribute(t,e)}));return{dom:s,contentDOM:h,update:t=>{if(t.type!==this.type){return false}s.dataset.checked=t.attrs.checked;if(t.attrs.checked){c.setAttribute("checked","checked")}else{c.removeAttribute("checked")}return true}}}},addInputRules(){return[f({find:G,type:this.type,getAttributes:t=>({checked:t[t.length-1]==="x"})})]}});const J=d.create({name:"taskList",addOptions(){return{itemTypeName:"taskItem",HTMLAttributes:{}}},group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML(){return[{tag:`ul[data-type="${this.name}"]`,priority:51}]},renderHTML({HTMLAttributes:t}){return["ul",l(this.options.HTMLAttributes,t,{"data-type":this.name}),0]},addCommands(){return{toggleTaskList:()=>({commands:t})=>t.toggleList(this.name,this.options.itemTypeName)}},addKeyboardShortcuts(){return{"Mod-Shift-9":()=>this.editor.commands.toggleTaskList()}}});const Q=g({find:/--$/,replace:"—"});const Y=g({find:/\.\.\.$/,replace:"…"});const X=g({find:/(?:^|[\s{[(<'"\u2018\u201C])(")$/,replace:"“"});const tt=g({find:/"$/,replace:"”"});const et=g({find:/(?:^|[\s{[(<'"\u2018\u201C])(')$/,replace:"‘"});const it=g({find:/'$/,replace:"’"});const nt=g({find:/<-$/,replace:"←"});const st=g({find:/->$/,replace:"→"});const rt=g({find:/\(c\)$/,replace:"©"});const ot=g({find:/\(tm\)$/,replace:"™"});const ct=g({find:/\(sm\)$/,replace:"℠"});const ht=g({find:/\(r\)$/,replace:"®"});const lt=g({find:/(?:^|\s)(1\/2)$/,replace:"½"});const at=g({find:/\+\/-$/,replace:"±"});const ut=g({find:/!=$/,replace:"≠"});const dt=g({find:/<<$/,replace:"«"});const ft=g({find:/>>$/,replace:"»"});const gt=g({find:/\d+\s?([*x])\s?\d+$/,replace:"×"});const pt=g({find:/\^2$/,replace:"²"});const mt=g({find:/\^3$/,replace:"³"});const wt=g({find:/(?:^|\s)(1\/4)$/,replace:"¼"});const bt=g({find:/(?:^|\s)(3\/4)$/,replace:"¾"});const vt=r.create({name:"typography",addInputRules(){const t=[];if(this.options.emDash!==false){t.push(Q)}if(this.options.ellipsis!==false){t.push(Y)}if(this.options.openDoubleQuote!==false){t.push(X)}if(this.options.closeDoubleQuote!==false){t.push(tt)}if(this.options.openSingleQuote!==false){t.push(et)}if(this.options.closeSingleQuote!==false){t.push(it)}if(this.options.leftArrow!==false){t.push(nt)}if(this.options.rightArrow!==false){t.push(st)}if(this.options.copyright!==false){t.push(rt)}if(this.options.trademark!==false){t.push(ot)}if(this.options.servicemark!==false){t.push(ct)}if(this.options.registeredTrademark!==false){t.push(ht)}if(this.options.oneHalf!==false){t.push(lt)}if(this.options.plusMinus!==false){t.push(at)}if(this.options.notEqual!==false){t.push(ut)}if(this.options.laquo!==false){t.push(dt)}if(this.options.raquo!==false){t.push(ft)}if(this.options.multiplication!==false){t.push(gt)}if(this.options.superscriptTwo!==false){t.push(pt)}if(this.options.superscriptThree!==false){t.push(mt)}if(this.options.oneQuarter!==false){t.push(wt)}if(this.options.threeQuarters!==false){t.push(bt)}return t}});const yt=h.create({name:"textStyle",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"span",getAttrs:t=>{const e=t.hasAttribute("style");if(!e){return false}return{}}}]},renderHTML({HTMLAttributes:t}){return["span",l(this.options.HTMLAttributes,t),0]},addCommands(){return{removeEmptyTextStyle:()=>({state:t,commands:e})=>{const i=p(t,this.type);const n=Object.entries(i).some((([,t])=>!!t));if(n){return true}return e.unsetMark(this.name)}}}});const kt=/^```([a-z]+)?[\s\n]$/;const xt=/^~~~([a-z]+)?[\s\n]$/;const Ct=d.create({name:"codeBlock",addOptions(){return{languageClassPrefix:"language-",exitOnTripleEnter:true,exitOnArrowDown:true,HTMLAttributes:{}}},content:"text*",marks:"",group:"block",code:true,defining:true,addAttributes(){return{language:{default:null,parseHTML:t=>{var e;const{languageClassPrefix:i}=this.options;const n=[...((e=t.firstElementChild)===null||e===void 0?void 0:e.classList)||[]];const s=n.filter((t=>t.startsWith(i))).map((t=>t.replace(i,"")));const r=s[0];if(!r){return null}return r},rendered:false}}},parseHTML(){return[{tag:"pre",preserveWhitespace:"full"}]},renderHTML({node:t,HTMLAttributes:e}){return["pre",l(this.options.HTMLAttributes,e),["code",{class:t.attrs.language?this.options.languageClassPrefix+t.attrs.language:null},0]]},addCommands(){return{setCodeBlock:t=>({commands:e})=>e.setNode(this.name,t),toggleCodeBlock:t=>({commands:e})=>e.toggleNode(this.name,"paragraph",t)}},addKeyboardShortcuts(){return{"Mod-Alt-c":()=>this.editor.commands.toggleCodeBlock(),Backspace:()=>{const{empty:t,$anchor:e}=this.editor.state.selection;const i=e.pos===1;if(!t||e.parent.type.name!==this.name){return false}if(i||!e.parent.textContent.length){return this.editor.commands.clearNodes()}return false},Enter:({editor:t})=>{if(!this.options.exitOnTripleEnter){return false}const{state:e}=t;const{selection:i}=e;const{$from:n,empty:s}=i;if(!s||n.parent.type!==this.type){return false}const r=n.parentOffset===n.parent.nodeSize-2;const o=n.parent.textContent.endsWith("\n\n");if(!r||!o){return false}return t.chain().command((({tr:t})=>{t.delete(n.pos-2,n.pos);return true})).exitCode().run()},ArrowDown:({editor:t})=>{if(!this.options.exitOnArrowDown){return false}const{state:e}=t;const{selection:i,doc:n}=e;const{$from:s,empty:r}=i;if(!r||s.parent.type!==this.type){return false}const o=s.parentOffset===s.parent.nodeSize-2;if(!o){return false}const c=s.after();if(c===undefined){return false}const h=n.nodeAt(c);if(h){return false}return t.commands.exitCode()}}},addInputRules(){return[m({find:kt,type:this.type,getAttributes:t=>({language:t[1]})}),m({find:xt,type:this.type,getAttributes:t=>({language:t[1]})})]},addProseMirrorPlugins(){return[new o({key:new c("codeBlockVSCodeHandler"),props:{handlePaste:(t,e)=>{if(!e.clipboardData){return false}if(this.editor.isActive(this.type.name)){return false}const i=e.clipboardData.getData("text/plain");const n=e.clipboardData.getData("vscode-editor-data");const s=n?JSON.parse(n):undefined;const r=s===null||s===void 0?void 0:s.mode;if(!i||!r){return false}const{tr:o}=t.state;o.replaceSelectionWith(this.type.create({language:r}));o.setSelection(w.near(o.doc.resolve(Math.max(0,o.selection.from-2))));o.insertText(i.replace(/\r\n?/g,"\n"));o.setMeta("paste",true);t.dispatch(o);return true}}})]}});var St={exports:{}};function Dt(t){if(t instanceof Map){t.clear=t.delete=t.set=function(){throw new Error("map is read-only")}}else if(t instanceof Set){t.add=t.clear=t.delete=function(){throw new Error("set is read-only")}}Object.freeze(t);Object.getOwnPropertyNames(t).forEach((function(e){var i=t[e];if(typeof i=="object"&&!Object.isFrozen(i)){Dt(i)}}));return t}St.exports=Dt;St.exports.default=Dt;class At{constructor(t){if(t.data===undefined)t.data={};this.data=t.data;this.isMatchIgnored=false}ignoreMatch(){this.isMatchIgnored=true}}function Et(t){return t.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function Mt(t,...e){const i=Object.create(null);for(const e in t){i[e]=t[e]}e.forEach((function(t){for(const e in t){i[e]=t[e]}}));return i}const Lt="";const _t=t=>!!t.scope||t.sublanguage&&t.language;const Ot=(t,{prefix:e})=>{if(t.includes(".")){const i=t.split(".");return[`${e}${i.shift()}`,...i.map(((t,e)=>`${t}${"_".repeat(e+1)}`))].join(" ")}return`${e}${t}`};class Ft{constructor(t,e){this.buffer="";this.classPrefix=e.classPrefix;t.walk(this)}addText(t){this.buffer+=Et(t)}openNode(t){if(!_t(t))return;let e="";if(t.sublanguage){e=`language-${t.language}`}else{e=Ot(t.scope,{prefix:this.classPrefix})}this.span(e)}closeNode(t){if(!_t(t))return;this.buffer+=Lt}value(){return this.buffer}span(t){this.buffer+=``}}const Tt=(t={})=>{const e={children:[]};Object.assign(e,t);return e};class Rt{constructor(){this.rootNode=Tt();this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(t){this.top.children.push(t)}openNode(t){const e=Tt({scope:t});this.add(e);this.stack.push(e)}closeNode(){if(this.stack.length>1){return this.stack.pop()}return undefined}closeAllNodes(){while(this.closeNode());}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(t){return this.constructor._walk(t,this.rootNode)}static _walk(t,e){if(typeof e==="string"){t.addText(e)}else if(e.children){t.openNode(e);e.children.forEach((e=>this._walk(t,e)));t.closeNode(e)}return t}static _collapse(t){if(typeof t==="string")return;if(!t.children)return;if(t.children.every((t=>typeof t==="string"))){t.children=[t.children.join("")]}else{t.children.forEach((t=>{Rt._collapse(t)}))}}}class It extends Rt{constructor(t){super();this.options=t}addKeyword(t,e){if(t===""){return}this.openNode(e);this.addText(t);this.closeNode()}addText(t){if(t===""){return}this.add(t)}addSublanguage(t,e){const i=t.root;i.sublanguage=true;i.language=e;this.add(i)}toHTML(){const t=new Ft(this,this.options);return t.value()}finalize(){return true}}function Nt(t){if(!t)return null;if(typeof t==="string")return t;return t.source}function Bt(t){return $t("(?=",t,")")}function Pt(t){return $t("(?:",t,")*")}function jt(t){return $t("(?:",t,")?")}function $t(...t){const e=t.map((t=>Nt(t))).join("");return e}function zt(t){const e=t[t.length-1];if(typeof e==="object"&&e.constructor===Object){t.splice(t.length-1,1);return e}else{return{}}}function Ht(...t){const e=zt(t);const i="("+(e.capture?"":"?:")+t.map((t=>Nt(t))).join("|")+")";return i}function Wt(t){return new RegExp(t.toString()+"|").exec("").length-1}function Vt(t,e){const i=t&&t.exec(e);return i&&i.index===0}const Ut=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function qt(t,{joinWith:e}){let i=0;return t.map((t=>{i+=1;const e=i;let n=Nt(t);let s="";while(n.length>0){const t=Ut.exec(n);if(!t){s+=n;break}s+=n.substring(0,t.index);n=n.substring(t.index+t[0].length);if(t[0][0]==="\\"&&t[1]){s+="\\"+String(Number(t[1])+e)}else{s+=t[0];if(t[0]==="("){i++}}}return s})).map((t=>`(${t})`)).join(e)}const Kt=/\b\B/;const Gt="[a-zA-Z]\\w*";const Zt="[a-zA-Z_]\\w*";const Jt="\\b\\d+(\\.\\d+)?";const Qt="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)";const Yt="\\b(0b[01]+)";const Xt="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~";const te=(t={})=>{const e=/^#![ ]*\//;if(t.binary){t.begin=$t(e,/.*\b/,t.binary,/\b.*/)}return Mt({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,e)=>{if(t.index!==0)e.ignoreMatch()}},t)};const ee={begin:"\\\\[\\s\\S]",relevance:0};const ie={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[ee]};const ne={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[ee]};const se={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/};const re=function(t,e,i={}){const n=Mt({scope:"comment",begin:t,end:e,contains:[]},i);n.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:true,relevance:0});const s=Ht("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,}/);n.contains.push({begin:$t(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")});return n};const oe=re("//","$");const ce=re("/\\*","\\*/");const he=re("#","$");const le={scope:"number",begin:Jt,relevance:0};const ae={scope:"number",begin:Qt,relevance:0};const ue={scope:"number",begin:Yt,relevance:0};const de={begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[ee,{begin:/\[/,end:/\]/,relevance:0,contains:[ee]}]}]};const fe={scope:"title",begin:Gt,relevance:0};const ge={scope:"title",begin:Zt,relevance:0};const pe={begin:"\\.\\s*"+Zt,relevance:0};const me=function(t){return Object.assign(t,{"on:begin":(t,e)=>{e.data._beginMatch=t[1]},"on:end":(t,e)=>{if(e.data._beginMatch!==t[1])e.ignoreMatch()}})};var we=Object.freeze({__proto__:null,MATCH_NOTHING_RE:Kt,IDENT_RE:Gt,UNDERSCORE_IDENT_RE:Zt,NUMBER_RE:Jt,C_NUMBER_RE:Qt,BINARY_NUMBER_RE:Yt,RE_STARTERS_RE:Xt,SHEBANG:te,BACKSLASH_ESCAPE:ee,APOS_STRING_MODE:ie,QUOTE_STRING_MODE:ne,PHRASAL_WORDS_MODE:se,COMMENT:re,C_LINE_COMMENT_MODE:oe,C_BLOCK_COMMENT_MODE:ce,HASH_COMMENT_MODE:he,NUMBER_MODE:le,C_NUMBER_MODE:ae,BINARY_NUMBER_MODE:ue,REGEXP_MODE:de,TITLE_MODE:fe,UNDERSCORE_TITLE_MODE:ge,METHOD_GUARD:pe,END_SAME_AS_BEGIN:me});function be(t,e){const i=t.input[t.index-1];if(i==="."){e.ignoreMatch()}}function ve(t,e){if(t.className!==undefined){t.scope=t.className;delete t.className}}function ye(t,e){if(!e)return;if(!t.beginKeywords)return;t.begin="\\b("+t.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)";t.__beforeBegin=be;t.keywords=t.keywords||t.beginKeywords;delete t.beginKeywords;if(t.relevance===undefined)t.relevance=0}function ke(t,e){if(!Array.isArray(t.illegal))return;t.illegal=Ht(...t.illegal)}function xe(t,e){if(!t.match)return;if(t.begin||t.end)throw new Error("begin & end are not supported with match");t.begin=t.match;delete t.match}function Ce(t,e){if(t.relevance===undefined)t.relevance=1}const Se=(t,e)=>{if(!t.beforeMatch)return;if(t.starts)throw new Error("beforeMatch cannot be used with starts");const i=Object.assign({},t);Object.keys(t).forEach((e=>{delete t[e]}));t.keywords=i.keywords;t.begin=$t(i.beforeMatch,Bt(i.begin));t.starts={relevance:0,contains:[Object.assign(i,{endsParent:true})]};t.relevance=0;delete i.beforeMatch};const De=["of","and","for","in","not","or","if","then","parent","list","value"];const Ae="keyword";function Ee(t,e,i=Ae){const n=Object.create(null);if(typeof t==="string"){s(i,t.split(" "))}else if(Array.isArray(t)){s(i,t)}else{Object.keys(t).forEach((function(i){Object.assign(n,Ee(t[i],e,i))}))}return n;function s(t,i){if(e){i=i.map((t=>t.toLowerCase()))}i.forEach((function(e){const i=e.split("|");n[i[0]]=[t,Me(i[0],i[1])]}))}}function Me(t,e){if(e){return Number(e)}return Le(t)?0:1}function Le(t){return De.includes(t.toLowerCase())}const _e={};const Oe=t=>{console.error(t)};const Fe=(t,...e)=>{console.log(`WARN: ${t}`,...e)};const Te=(t,e)=>{if(_e[`${t}/${e}`])return;console.log(`Deprecated as of ${t}. ${e}`);_e[`${t}/${e}`]=true};const Re=new Error;function Ie(t,e,{key:i}){let n=0;const s=t[i];const r={};const o={};for(let t=1;t<=e.length;t++){o[t+n]=s[t];r[t+n]=true;n+=Wt(e[t-1])}t[i]=o;t[i]._emit=r;t[i]._multi=true}function Ne(t){if(!Array.isArray(t.begin))return;if(t.skip||t.excludeBegin||t.returnBegin){Oe("skip, excludeBegin, returnBegin not compatible with beginScope: {}");throw Re}if(typeof t.beginScope!=="object"||t.beginScope===null){Oe("beginScope must be object");throw Re}Ie(t,t.begin,{key:"beginScope"});t.begin=qt(t.begin,{joinWith:""})}function Be(t){if(!Array.isArray(t.end))return;if(t.skip||t.excludeEnd||t.returnEnd){Oe("skip, excludeEnd, returnEnd not compatible with endScope: {}");throw Re}if(typeof t.endScope!=="object"||t.endScope===null){Oe("endScope must be object");throw Re}Ie(t,t.end,{key:"endScope"});t.end=qt(t.end,{joinWith:""})}function Pe(t){if(t.scope&&typeof t.scope==="object"&&t.scope!==null){t.beginScope=t.scope;delete t.scope}}function je(t){Pe(t);if(typeof t.beginScope==="string"){t.beginScope={_wrap:t.beginScope}}if(typeof t.endScope==="string"){t.endScope={_wrap:t.endScope}}Ne(t);Be(t)}function $e(t){function e(e,i){return new RegExp(Nt(e),"m"+(t.case_insensitive?"i":"")+(t.unicodeRegex?"u":"")+(i?"g":""))}class i{constructor(){this.matchIndexes={};this.regexes=[];this.matchAt=1;this.position=0}addRule(t,e){e.position=this.position++;this.matchIndexes[this.matchAt]=e;this.regexes.push([e,t]);this.matchAt+=Wt(t)+1}compile(){if(this.regexes.length===0){this.exec=()=>null}const t=this.regexes.map((t=>t[1]));this.matcherRe=e(qt(t,{joinWith:"|"}),true);this.lastIndex=0}exec(t){this.matcherRe.lastIndex=this.lastIndex;const e=this.matcherRe.exec(t);if(!e){return null}const i=e.findIndex(((t,e)=>e>0&&t!==undefined));const n=this.matchIndexes[i];e.splice(0,i);return Object.assign(e,n)}}class n{constructor(){this.rules=[];this.multiRegexes=[];this.count=0;this.lastIndex=0;this.regexIndex=0}getMatcher(t){if(this.multiRegexes[t])return this.multiRegexes[t];const e=new i;this.rules.slice(t).forEach((([t,i])=>e.addRule(t,i)));e.compile();this.multiRegexes[t]=e;return e}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(t,e){this.rules.push([t,e]);if(e.type==="begin")this.count++}exec(t){const e=this.getMatcher(this.regexIndex);e.lastIndex=this.lastIndex;let i=e.exec(t);if(this.resumingScanAtSamePosition()){if(i&&i.index===this.lastIndex);else{const e=this.getMatcher(0);e.lastIndex=this.lastIndex+1;i=e.exec(t)}}if(i){this.regexIndex+=i.position+1;if(this.regexIndex===this.count){this.considerAll()}}return i}}function s(t){const e=new n;t.contains.forEach((t=>e.addRule(t.begin,{rule:t,type:"begin"})));if(t.terminatorEnd){e.addRule(t.terminatorEnd,{type:"end"})}if(t.illegal){e.addRule(t.illegal,{type:"illegal"})}return e}function r(i,n){const o=i;if(i.isCompiled)return o;[ve,xe,je,Se].forEach((t=>t(i,n)));t.compilerExtensions.forEach((t=>t(i,n)));i.__beforeBegin=null;[ye,ke,Ce].forEach((t=>t(i,n)));i.isCompiled=true;let c=null;if(typeof i.keywords==="object"&&i.keywords.$pattern){i.keywords=Object.assign({},i.keywords);c=i.keywords.$pattern;delete i.keywords.$pattern}c=c||/\w+/;if(i.keywords){i.keywords=Ee(i.keywords,t.case_insensitive)}o.keywordPatternRe=e(c,true);if(n){if(!i.begin)i.begin=/\B|\b/;o.beginRe=e(o.begin);if(!i.end&&!i.endsWithParent)i.end=/\B|\b/;if(i.end)o.endRe=e(o.end);o.terminatorEnd=Nt(o.end)||"";if(i.endsWithParent&&n.terminatorEnd){o.terminatorEnd+=(i.end?"|":"")+n.terminatorEnd}}if(i.illegal)o.illegalRe=e(i.illegal);if(!i.contains)i.contains=[];i.contains=[].concat(...i.contains.map((function(t){return He(t==="self"?i:t)})));i.contains.forEach((function(t){r(t,o)}));if(i.starts){r(i.starts,n)}o.matcher=s(o);return o}if(!t.compilerExtensions)t.compilerExtensions=[];if(t.contains&&t.contains.includes("self")){throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.")}t.classNameAliases=Mt(t.classNameAliases||{});return r(t)}function ze(t){if(!t)return false;return t.endsWithParent||ze(t.starts)}function He(t){if(t.variants&&!t.cachedVariants){t.cachedVariants=t.variants.map((function(e){return Mt(t,{variants:null},e)}))}if(t.cachedVariants){return t.cachedVariants}if(ze(t)){return Mt(t,{starts:t.starts?Mt(t.starts):null})}if(Object.isFrozen(t)){return Mt(t)}return t}var We="11.6.0";class Ve extends Error{constructor(t,e){super(t);this.name="HTMLInjectionError";this.html=e}}const Ue=Et;const qe=Mt;const Ke=Symbol("nomatch");const Ge=7;const Ze=function(t){const e=Object.create(null);const i=Object.create(null);const n=[];let s=true;const r="Could not find the language '{}', did you forget to load/include a language module?";const o={disableAutodetect:true,name:"Plain text",contains:[]};let c={ignoreUnescapedHTML:false,throwUnescapedHTML:false,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:It};function h(t){return c.noHighlightRe.test(t)}function l(t){let e=t.className+" ";e+=t.parentNode?t.parentNode.className:"";const i=c.languageDetectRe.exec(e);if(i){const e=D(i[1]);if(!e){Fe(r.replace("{}",i[1]));Fe("Falling back to no-highlight mode for this block.",t)}return e?i[1]:"no-highlight"}return e.split(/\s+/).find((t=>h(t)||D(t)))}function a(t,e,i){let n="";let s="";if(typeof e==="object"){n=t;i=e.ignoreIllegals;s=e.language}else{Te("10.7.0","highlight(lang, code, ...args) has been deprecated.");Te("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277");s=t;n=e}if(i===undefined){i=true}const r={code:n,language:s};_("before:highlight",r);const o=r.result?r.result:u(r.language,r.code,i);o.code=r.code;_("after:highlight",o);return o}function u(t,i,n,o){const h=Object.create(null);function l(t,e){return t.keywords[e]}function a(){if(!M.keywords){_.addText(O);return}let t=0;M.keywordPatternRe.lastIndex=0;let e=M.keywordPatternRe.exec(O);let i="";while(e){i+=O.substring(t,e.index);const n=S.case_insensitive?e[0].toLowerCase():e[0];const s=l(M,n);if(s){const[t,r]=s;_.addText(i);i="";h[n]=(h[n]||0)+1;if(h[n]<=Ge)F+=r;if(t.startsWith("_")){i+=e[0]}else{const i=S.classNameAliases[t]||t;_.addKeyword(e[0],i)}}else{i+=e[0]}t=M.keywordPatternRe.lastIndex;e=M.keywordPatternRe.exec(O)}i+=O.substring(t);_.addText(i)}function d(){if(O==="")return;let t=null;if(typeof M.subLanguage==="string"){if(!e[M.subLanguage]){_.addText(O);return}t=u(M.subLanguage,O,true,L[M.subLanguage]);L[M.subLanguage]=t._top}else{t=f(O,M.subLanguage.length?M.subLanguage:null)}if(M.relevance>0){F+=t.relevance}_.addSublanguage(t._emitter,t.language)}function g(){if(M.subLanguage!=null){d()}else{a()}O=""}function p(t,e){let i=1;const n=e.length-1;while(i<=n){if(!t._emit[i]){i++;continue}const n=S.classNameAliases[t[i]]||t[i];const s=e[i];if(n){_.addKeyword(s,n)}else{O=s;a();O=""}i++}}function m(t,e){if(t.scope&&typeof t.scope==="string"){_.openNode(S.classNameAliases[t.scope]||t.scope)}if(t.beginScope){if(t.beginScope._wrap){_.addKeyword(O,S.classNameAliases[t.beginScope._wrap]||t.beginScope._wrap);O=""}else if(t.beginScope._multi){p(t.beginScope,e);O=""}}M=Object.create(t,{parent:{value:M}});return M}function w(t,e,i){let n=Vt(t.endRe,i);if(n){if(t["on:end"]){const i=new At(t);t["on:end"](e,i);if(i.isMatchIgnored)n=false}if(n){while(t.endsParent&&t.parent){t=t.parent}return t}}if(t.endsWithParent){return w(t.parent,e,i)}}function b(t){if(M.matcher.regexIndex===0){O+=t[0];return 1}else{I=true;return 0}}function v(t){const e=t[0];const i=t.rule;const n=new At(i);const s=[i.__beforeBegin,i["on:begin"]];for(const i of s){if(!i)continue;i(t,n);if(n.isMatchIgnored)return b(e)}if(i.skip){O+=e}else{if(i.excludeBegin){O+=e}g();if(!i.returnBegin&&!i.excludeBegin){O=e}}m(i,t);return i.returnBegin?0:e.length}function y(t){const e=t[0];const n=i.substring(t.index);const s=w(M,t,n);if(!s){return Ke}const r=M;if(M.endScope&&M.endScope._wrap){g();_.addKeyword(e,M.endScope._wrap)}else if(M.endScope&&M.endScope._multi){g();p(M.endScope,t)}else if(r.skip){O+=e}else{if(!(r.returnEnd||r.excludeEnd)){O+=e}g();if(r.excludeEnd){O=e}}do{if(M.scope){_.closeNode()}if(!M.skip&&!M.subLanguage){F+=M.relevance}M=M.parent}while(M!==s.parent);if(s.starts){m(s.starts,t)}return r.returnEnd?0:e.length}function k(){const t=[];for(let e=M;e!==S;e=e.parent){if(e.scope){t.unshift(e.scope)}}t.forEach((t=>_.openNode(t)))}let x={};function C(e,r){const o=r&&r[0];O+=e;if(o==null){g();return 0}if(x.type==="begin"&&r.type==="end"&&x.index===r.index&&o===""){O+=i.slice(r.index,r.index+1);if(!s){const e=new Error(`0 width match regex (${t})`);e.languageName=t;e.badRule=x.rule;throw e}return 1}x=r;if(r.type==="begin"){return v(r)}else if(r.type==="illegal"&&!n){const t=new Error('Illegal lexeme "'+o+'" for mode "'+(M.scope||"")+'"');t.mode=M;throw t}else if(r.type==="end"){const t=y(r);if(t!==Ke){return t}}if(r.type==="illegal"&&o===""){return 1}if(R>1e5&&R>r.index*3){const t=new Error("potential infinite loop, way more iterations than matches");throw t}O+=o;return o.length}const S=D(t);if(!S){Oe(r.replace("{}",t));throw new Error('Unknown language: "'+t+'"')}const A=$e(S);let E="";let M=o||A;const L={};const _=new c.__emitter(c);k();let O="";let F=0;let T=0;let R=0;let I=false;try{M.matcher.considerAll();for(;;){R++;if(I){I=false}else{M.matcher.considerAll()}M.matcher.lastIndex=T;const t=M.matcher.exec(i);if(!t)break;const e=i.substring(T,t.index);const n=C(e,t);T=t.index+n}C(i.substring(T));_.closeAllNodes();_.finalize();E=_.toHTML();return{language:t,value:E,relevance:F,illegal:false,_emitter:_,_top:M}}catch(e){if(e.message&&e.message.includes("Illegal")){return{language:t,value:Ue(i),illegal:true,relevance:0,_illegalBy:{message:e.message,index:T,context:i.slice(T-100,T+100),mode:e.mode,resultSoFar:E},_emitter:_}}else if(s){return{language:t,value:Ue(i),illegal:false,relevance:0,errorRaised:e,_emitter:_,_top:M}}else{throw e}}}function d(t){const e={value:Ue(t),illegal:false,relevance:0,_top:o,_emitter:new c.__emitter(c)};e._emitter.addText(t);return e}function f(t,i){i=i||c.languages||Object.keys(e);const n=d(t);const s=i.filter(D).filter(E).map((e=>u(e,t,false)));s.unshift(n);const r=s.sort(((t,e)=>{if(t.relevance!==e.relevance)return e.relevance-t.relevance;if(t.language&&e.language){if(D(t.language).supersetOf===e.language){return 1}else if(D(e.language).supersetOf===t.language){return-1}}return 0}));const[o,h]=r;const l=o;l.secondBest=h;return l}function g(t,e,n){const s=e&&i[e]||n;t.classList.add("hljs");t.classList.add(`language-${s}`)}function p(t){let e=null;const i=l(t);if(h(i))return;_("before:highlightElement",{el:t,language:i});if(t.children.length>0){if(!c.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(t)}if(c.throwUnescapedHTML){const e=new Ve("One of your code blocks includes unescaped HTML.",t.innerHTML);throw e}}e=t;const n=e.textContent;const s=i?a(n,{language:i,ignoreIllegals:true}):f(n);t.innerHTML=s.value;g(t,i,s.language);t.result={language:s.language,re:s.relevance,relevance:s.relevance};if(s.secondBest){t.secondBest={language:s.secondBest.language,relevance:s.secondBest.relevance}}_("after:highlightElement",{el:t,result:s,text:n})}function m(t){c=qe(c,t)}const w=()=>{y();Te("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function b(){y();Te("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let v=false;function y(){if(document.readyState==="loading"){v=true;return}const t=document.querySelectorAll(c.cssSelector);t.forEach(p)}function k(){if(v)y()}if(typeof window!=="undefined"&&window.addEventListener){window.addEventListener("DOMContentLoaded",k,false)}function x(i,n){let r=null;try{r=n(t)}catch(t){Oe("Language definition for '{}' could not be registered.".replace("{}",i));if(!s){throw t}else{Oe(t)}r=o}if(!r.name)r.name=i;e[i]=r;r.rawDefinition=n.bind(null,t);if(r.aliases){A(r.aliases,{languageName:i})}}function C(t){delete e[t];for(const e of Object.keys(i)){if(i[e]===t){delete i[e]}}}function S(){return Object.keys(e)}function D(t){t=(t||"").toLowerCase();return e[t]||e[i[t]]}function A(t,{languageName:e}){if(typeof t==="string"){t=[t]}t.forEach((t=>{i[t.toLowerCase()]=e}))}function E(t){const e=D(t);return e&&!e.disableAutodetect}function M(t){if(t["before:highlightBlock"]&&!t["before:highlightElement"]){t["before:highlightElement"]=e=>{t["before:highlightBlock"](Object.assign({block:e.el},e))}}if(t["after:highlightBlock"]&&!t["after:highlightElement"]){t["after:highlightElement"]=e=>{t["after:highlightBlock"](Object.assign({block:e.el},e))}}}function L(t){M(t);n.push(t)}function _(t,e){const i=t;n.forEach((function(t){if(t[i]){t[i](e)}}))}function O(t){Te("10.7.0","highlightBlock will be removed entirely in v12.0");Te("10.7.0","Please use highlightElement now.");return p(t)}Object.assign(t,{highlight:a,highlightAuto:f,highlightAll:y,highlightElement:p,highlightBlock:O,configure:m,initHighlighting:w,initHighlightingOnLoad:b,registerLanguage:x,unregisterLanguage:C,listLanguages:S,getLanguage:D,registerAliases:A,autoDetection:E,inherit:qe,addPlugin:L});t.debugMode=function(){s=false};t.safeMode=function(){s=true};t.versionString=We;t.regex={concat:$t,lookahead:Bt,either:Ht,optional:jt,anyNumberOfTimes:Pt};for(const t in we){if(typeof we[t]==="object"){St.exports(we[t])}}Object.assign(t,we);return t};var Je=Ze({});var Qe=Je;Je.HighlightJS=Je;Je.default=Je;var Ye=Qe;function Xe(t,e=[]){return t.map((t=>{const i=[...e,...t.properties?t.properties.className:[]];if(t.children){return Xe(t.children,i)}return{text:t.value,classes:i}})).flat()}function ti(t){return t.value||t.children||[]}function ei(t){return Boolean(Ye.getLanguage(t))}function ii({doc:t,name:e,lowlight:i,defaultLanguage:n}){const s=[];v(t,(t=>t.type.name===e)).forEach((t=>{let e=t.pos+1;const r=t.node.attrs.language||n;const o=i.listLanguages();const c=r&&(o.includes(r)||ei(r))?ti(i.highlight(r,t.node.textContent)):ti(i.highlightAuto(t.node.textContent));Xe(c).forEach((t=>{const i=e+t.text.length;if(t.classes.length){const n=y.inline(e,i,{class:t.classes.join(" ")});s.push(n)}e=i}))}));return b.create(t,s)}function ni(t){return typeof t==="function"}function si({name:t,lowlight:e,defaultLanguage:i}){if(!["highlight","highlightAuto","listLanguages"].every((t=>ni(e[t])))){throw Error("You should provide an instance of lowlight to use the code-block-lowlight extension")}const n=new o({key:new c("lowlight"),state:{init:(n,{doc:s})=>ii({doc:s,name:t,lowlight:e,defaultLanguage:i}),apply:(n,s,r,o)=>{const c=r.selection.$head.parent.type.name;const h=o.selection.$head.parent.type.name;const l=v(r.doc,(e=>e.type.name===t));const a=v(o.doc,(e=>e.type.name===t));if(n.docChanged&&([c,h].includes(t)||a.length!==l.length||n.steps.some((t=>t.from!==undefined&&t.to!==undefined&&l.some((e=>e.pos>=t.from&&e.pos+e.node.nodeSize<=t.to)))))){return ii({doc:n.doc,name:t,lowlight:e,defaultLanguage:i})}return s.map(n.mapping,n.doc)}},props:{decorations(t){return n.getState(t)}}});return n}const ri=Ct.extend({addOptions(){var t;return{...(t=this.parent)===null||t===void 0?void 0:t.call(this),lowlight:{},defaultLanguage:null}},addProseMirrorPlugins(){var t;return[...((t=this.parent)===null||t===void 0?void 0:t.call(this))||[],si({name:this.name,lowlight:this.options.lowlight,defaultLanguage:this.options.defaultLanguage})]}});function oi(t){const e=t.regex;const i=t.COMMENT("//","$",{contains:[{begin:/\\\n/}]});const n="decltype\\(auto\\)";const s="[a-zA-Z_]\\w*::";const r="<[^<>]+>";const o="(?!struct)("+n+"|"+e.optional(s)+"[a-zA-Z_]\\w*"+e.optional(r)+")";const c={className:"type",begin:"\\b[a-z\\d_]*_t\\b"};const h="\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)";const l={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+h+"|.)",end:"'",illegal:"."},t.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]};const a={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0};const u={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line "+"pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},t.inherit(l,{className:"string"}),{className:"string",begin:/<.*?>/},i,t.C_BLOCK_COMMENT_MODE]};const d={className:"title",begin:e.optional(s)+t.IDENT_RE,relevance:0};const f=e.optional(s)+t.IDENT_RE+"\\s*\\(";const g=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"];const p=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"];const m=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"];const w=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"];const b=["NULL","false","nullopt","nullptr","true"];const v=["_Pragma"];const y={type:p,keyword:g,literal:b,built_in:v,_type_hints:m};const k={className:"function.dispatch",relevance:0,keywords:{_hint:w},begin:e.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,t.IDENT_RE,e.lookahead(/(<[^<>]+>|)\s*\(/))};const x=[k,u,c,i,t.C_BLOCK_COMMENT_MODE,a,l];const C={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:y,contains:x.concat([{begin:/\(/,end:/\)/,keywords:y,contains:x.concat(["self"]),relevance:0}]),relevance:0};const S={className:"function",begin:"("+o+"[\\*&\\s]+)+"+f,returnBegin:true,end:/[{;=]/,excludeEnd:true,keywords:y,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:n,keywords:y,relevance:0},{begin:f,returnBegin:true,contains:[d],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:true,contains:[l,a]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:[i,t.C_BLOCK_COMMENT_MODE,l,a,c,{begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:["self",i,t.C_BLOCK_COMMENT_MODE,l,a,c]}]},c,i,t.C_BLOCK_COMMENT_MODE,u]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:y,illegal:"",keywords:y,contains:["self",c]},{begin:t.IDENT_RE+"::",keywords:y},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function ci(t){const e={type:["boolean","byte","word","String"],built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"],_hints:["setup","loop","runShellCommandAsynchronously","analogWriteResolution","retrieveCallingNumber","printFirmwareVersion","analogReadResolution","sendDigitalPortPair","noListenOnLocalhost","readJoystickButton","setFirmwareVersion","readJoystickSwitch","scrollDisplayRight","getVoiceCallStatus","scrollDisplayLeft","writeMicroseconds","delayMicroseconds","beginTransmission","getSignalStrength","runAsynchronously","getAsynchronously","listenOnLocalhost","getCurrentCarrier","readAccelerometer","messageAvailable","sendDigitalPorts","lineFollowConfig","countryNameWrite","runShellCommand","readStringUntil","rewindDirectory","readTemperature","setClockDivider","readLightSensor","endTransmission","analogReference","detachInterrupt","countryNameRead","attachInterrupt","encryptionType","readBytesUntil","robotNameWrite","readMicrophone","robotNameRead","cityNameWrite","userNameWrite","readJoystickY","readJoystickX","mouseReleased","openNextFile","scanNetworks","noInterrupts","digitalWrite","beginSpeaker","mousePressed","isActionDone","mouseDragged","displayLogos","noAutoscroll","addParameter","remoteNumber","getModifiers","keyboardRead","userNameRead","waitContinue","processInput","parseCommand","printVersion","readNetworks","writeMessage","blinkVersion","cityNameRead","readMessage","setDataMode","parsePacket","isListening","setBitOrder","beginPacket","isDirectory","motorsWrite","drawCompass","digitalRead","clearScreen","serialEvent","rightToLeft","setTextSize","leftToRight","requestFrom","keyReleased","compassRead","analogWrite","interrupts","WiFiServer","disconnect","playMelody","parseFloat","autoscroll","getPINUsed","setPINUsed","setTimeout","sendAnalog","readSlider","analogRead","beginWrite","createChar","motorsStop","keyPressed","tempoWrite","readButton","subnetMask","debugPrint","macAddress","writeGreen","randomSeed","attachGPRS","readString","sendString","remotePort","releaseAll","mouseMoved","background","getXChange","getYChange","answerCall","getResult","voiceCall","endPacket","constrain","getSocket","writeJSON","getButton","available","connected","findUntil","readBytes","exitValue","readGreen","writeBlue","startLoop","IPAddress","isPressed","sendSysex","pauseMode","gatewayIP","setCursor","getOemKey","tuneWrite","noDisplay","loadImage","switchPIN","onRequest","onReceive","changePIN","playFile","noBuffer","parseInt","overflow","checkPIN","knobRead","beginTFT","bitClear","updateIR","bitWrite","position","writeRGB","highByte","writeRed","setSpeed","readBlue","noStroke","remoteIP","transfer","shutdown","hangCall","beginSMS","endWrite","attached","maintain","noCursor","checkReg","checkPUK","shiftOut","isValid","shiftIn","pulseIn","connect","println","localIP","pinMode","getIMEI","display","noBlink","process","getBand","running","beginSD","drawBMP","lowByte","setBand","release","bitRead","prepare","pointTo","readRed","setMode","noFill","remove","listen","stroke","detach","attach","noTone","exists","buffer","height","bitSet","circle","config","cursor","random","IRread","setDNS","endSMS","getKey","micros","millis","begin","print","write","ready","flush","width","isPIN","blink","clear","press","mkdir","rmdir","close","point","yield","image","BSSID","click","delay","read","text","move","peek","beep","rect","line","open","seek","fill","size","turn","stop","home","find","step","tone","sqrt","RSSI","SSID","end","bit","tan","cos","sin","pow","map","abs","max","min","get","run","put"],literal:["DIGITAL_MESSAGE","FIRMATA_STRING","ANALOG_MESSAGE","REPORT_DIGITAL","REPORT_ANALOG","INPUT_PULLUP","SET_PIN_MODE","INTERNAL2V56","SYSTEM_RESET","LED_BUILTIN","INTERNAL1V1","SYSEX_START","INTERNAL","EXTERNAL","DEFAULT","OUTPUT","INPUT","HIGH","LOW"]};const i=oi(t);const n=i.keywords;n.type=[...n.type,...e.type];n.literal=[...n.literal,...e.literal];n.built_in=[...n.built_in,...e.built_in];n._hints=e._hints;i.name="Arduino";i.aliases=["ino"];i.supersetOf="cpp";return i}var hi=ci;function li(t){const e=t.regex;const i={};const n={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[i]}]};Object.assign(i,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,`(?![\\w\\d])(?![$])`)},n]});const s={className:"subst",begin:/\$\(/,end:/\)/,contains:[t.BACKSLASH_ESCAPE]};const r={begin:/<<-?\s*(?=\w+)/,starts:{contains:[t.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}};const o={className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,i,s]};s.contains.push(o);const c={className:"",begin:/\\"/};const h={className:"string",begin:/'/,end:/'/};const l={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},t.NUMBER_MODE,i]};const a=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"];const u=t.SHEBANG({binary:`(${a.join("|")})`,relevance:10});const d={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:true,contains:[t.inherit(t.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};const f=["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"];const g=["true","false"];const p={match:/(\/[a-z._-]+)+/};const m=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"];const w=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias"];const b=["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"];const v=["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:f,literal:g,built_in:[...m,...w,"set","shopt",...b,...v]},contains:[u,t.SHEBANG(),d,l,t.HASH_COMMENT_MODE,r,p,o,c,h,i]}}var ai=li;function ui(t){const e=t.regex;const i=t.COMMENT("//","$",{contains:[{begin:/\\\n/}]});const n="decltype\\(auto\\)";const s="[a-zA-Z_]\\w*::";const r="<[^<>]+>";const o="("+n+"|"+e.optional(s)+"[a-zA-Z_]\\w*"+e.optional(r)+")";const c={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]};const h="\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)";const l={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+h+"|.)",end:"'",illegal:"."},t.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]};const a={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0};const u={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line "+"pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},t.inherit(l,{className:"string"}),{className:"string",begin:/<.*?>/},i,t.C_BLOCK_COMMENT_MODE]};const d={className:"title",begin:e.optional(s)+t.IDENT_RE,relevance:0};const f=e.optional(s)+t.IDENT_RE+"\\s*\\(";const g=["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"];const p=["float","double","signed","unsigned","int","short","long","char","void","_Bool","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal128","const","static","complex","bool","imaginary"];const m={keyword:g,type:p,literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream "+"auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set "+"unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos "+"asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp "+"fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper "+"isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow "+"printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp "+"strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan "+"vfprintf vprintf vsprintf endl initializer_list unique_ptr"};const w=[u,c,i,t.C_BLOCK_COMMENT_MODE,a,l];const b={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:m,contains:w.concat([{begin:/\(/,end:/\)/,keywords:m,contains:w.concat(["self"]),relevance:0}]),relevance:0};const v={begin:"("+o+"[\\*&\\s]+)+"+f,returnBegin:true,end:/[{;=]/,excludeEnd:true,keywords:m,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:n,keywords:m,relevance:0},{begin:f,returnBegin:true,contains:[t.inherit(d,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:m,relevance:0,contains:[i,t.C_BLOCK_COMMENT_MODE,l,a,c,{begin:/\(/,end:/\)/,keywords:m,relevance:0,contains:["self",i,t.C_BLOCK_COMMENT_MODE,l,a,c]}]},c,i,t.C_BLOCK_COMMENT_MODE,u]};return{name:"C",aliases:["h"],keywords:m,disableAutodetect:true,illegal:"=]/,contains:[{beginKeywords:"final class struct"},t.TITLE_MODE]}]),exports:{preprocessor:u,strings:l,keywords:m}}}var di=ui;function fi(t){const e=t.regex;const i=t.COMMENT("//","$",{contains:[{begin:/\\\n/}]});const n="decltype\\(auto\\)";const s="[a-zA-Z_]\\w*::";const r="<[^<>]+>";const o="(?!struct)("+n+"|"+e.optional(s)+"[a-zA-Z_]\\w*"+e.optional(r)+")";const c={className:"type",begin:"\\b[a-z\\d_]*_t\\b"};const h="\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)";const l={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+h+"|.)",end:"'",illegal:"."},t.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]};const a={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0};const u={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line "+"pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},t.inherit(l,{className:"string"}),{className:"string",begin:/<.*?>/},i,t.C_BLOCK_COMMENT_MODE]};const d={className:"title",begin:e.optional(s)+t.IDENT_RE,relevance:0};const f=e.optional(s)+t.IDENT_RE+"\\s*\\(";const g=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"];const p=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"];const m=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"];const w=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"];const b=["NULL","false","nullopt","nullptr","true"];const v=["_Pragma"];const y={type:p,keyword:g,literal:b,built_in:v,_type_hints:m};const k={className:"function.dispatch",relevance:0,keywords:{_hint:w},begin:e.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,t.IDENT_RE,e.lookahead(/(<[^<>]+>|)\s*\(/))};const x=[k,u,c,i,t.C_BLOCK_COMMENT_MODE,a,l];const C={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:y,contains:x.concat([{begin:/\(/,end:/\)/,keywords:y,contains:x.concat(["self"]),relevance:0}]),relevance:0};const S={className:"function",begin:"("+o+"[\\*&\\s]+)+"+f,returnBegin:true,end:/[{;=]/,excludeEnd:true,keywords:y,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:n,keywords:y,relevance:0},{begin:f,returnBegin:true,contains:[d],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:true,contains:[l,a]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:[i,t.C_BLOCK_COMMENT_MODE,l,a,c,{begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:["self",i,t.C_BLOCK_COMMENT_MODE,l,a,c]}]},c,i,t.C_BLOCK_COMMENT_MODE,u]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:y,illegal:"",keywords:y,contains:["self",c]},{begin:t.IDENT_RE+"::",keywords:y},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}var gi=fi;function pi(t){const e=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"];const i=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"];const n=["default","false","null","true"];const s=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"];const r=["add","alias","and","ascending","async","await","by","descending","equals","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","remove","select","set","unmanaged","value|0","var","when","where","with","yield"];const o={keyword:s.concat(r),built_in:e,literal:n};const c=t.inherit(t.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"});const h={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0};const l={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]};const a=t.inherit(l,{illegal:/\n/});const u={className:"subst",begin:/\{/,end:/\}/,keywords:o};const d=t.inherit(u,{illegal:/\n/});const f={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},t.BACKSLASH_ESCAPE,d]};const g={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},u]};const p=t.inherit(g,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},d]});u.contains=[g,f,l,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,h,t.C_BLOCK_COMMENT_MODE];d.contains=[p,f,a,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,h,t.inherit(t.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const m={variants:[g,f,l,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]};const w={begin:"<",end:">",contains:[{beginKeywords:"in out"},c]};const b=t.IDENT_RE+"(<"+t.IDENT_RE+"(\\s*,\\s*"+t.IDENT_RE+")*>)?(\\[\\])?";const v={begin:"@"+t.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:o,illegal:/::/,contains:[t.COMMENT("///","$",{returnBegin:true,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"\x3c!--|--\x3e"},{begin:""}]}]}),t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},m,h,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},c,w,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[c,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[c,w,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:true,end:"\\]",excludeEnd:true,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+b+"\\s+)+"+t.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:true,end:/\s*[{;=]/,excludeEnd:true,keywords:o,contains:[{beginKeywords:i.join(" "),relevance:0},{begin:t.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:true,contains:[t.TITLE_MODE,w],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:true,excludeEnd:true,keywords:o,relevance:0,contains:[m,h,t.C_BLOCK_COMMENT_MODE]},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},v]}}var mi=pi;const wi=t=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:t.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:t.NUMBER_RE+"("+"%|em|ex|ch|rem"+"|vw|vh|vmin|vmax"+"|cm|mm|in|pt|pc|px"+"|deg|grad|rad|turn"+"|s|ms"+"|Hz|kHz"+"|dpi|dpcm|dppx"+")?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}});const bi=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"];const vi=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"];const yi=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"];const ki=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"];const xi=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse();function Ci(t){const e=t.regex;const i=wi(t);const n={begin:/-(webkit|moz|ms|o)-(?=[a-z])/};const s="and or not only";const r=/@-?\w[\w]*(-\w+)*/;const o="[a-zA-Z-][a-zA-Z0-9_-]*";const c=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:true,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[i.BLOCK_COMMENT,n,i.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+o,relevance:0},i.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+yi.join("|")+")"},{begin:":(:)?("+ki.join("|")+")"}]},i.CSS_VARIABLE,{className:"attribute",begin:"\\b("+xi.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[i.BLOCK_COMMENT,i.HEXCOLOR,i.IMPORTANT,i.CSS_NUMBER_MODE,...c,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...c,{className:"string",begin:/[^)]/,endsWithParent:true,excludeEnd:true}]},i.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:r},{begin:/\s/,endsWithParent:true,excludeEnd:true,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:s,attribute:vi.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...c,i.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+bi.join("|")+")\\b"}]}}var Si=Ci;function Di(t){const e=t.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:e.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:e.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}var Ai=Di;function Ei(t){const e=["true","false","iota","nil"];const i=["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"];const n=["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"];const s=["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"];const r={keyword:s,type:n,literal:e,built_in:i};return{name:"Go",aliases:["golang"],keywords:r,illegal:"Bi(t,e,i-1)))}function Pi(t){const e=t.regex;const i="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*";const n=i+Bi("(?:<"+i+"~~~(?:\\s*,\\s*"+i+"~~~)*>)?",/~~~/g,2);const s=["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"];const r=["super","this"];const o=["false","true","null"];const c=["char","boolean","long","float","int","byte","short","double"];const h={keyword:s,literal:o,type:c,built_in:r};const l={className:"meta",begin:"@"+i,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]};const a={className:"params",begin:/\(/,end:/\)/,keywords:h,relevance:0,contains:[t.C_BLOCK_COMMENT_MODE],endsParent:true};return{name:"Java",aliases:["jsp"],keywords:h,illegal:/<\/|#/,contains:[t.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[t.BACKSLASH_ESCAPE]},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,i],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[e.concat(/(?!else)/,i),/\s+/,i,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,i],className:{1:"keyword",3:"title.class"},contains:[a,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+n+"\\s+)",t.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:h,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:h,relevance:0,contains:[l,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,Ni,t.C_BLOCK_COMMENT_MODE]},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},Ni,l]}}var ji=Pi;const $i="[A-Za-z$_][0-9A-Za-z$_]*";const zi=["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"];const Hi=["true","false","null","undefined","NaN","Infinity"];const Wi=["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"];const Vi=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"];const Ui=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"];const qi=["arguments","this","super","console","window","document","localStorage","module","global"];const Ki=[].concat(Ui,Wi,Vi);function Gi(t){const e=t.regex;const i=(t,{after:e})=>{const i="",end:""};const r=/<[A-Za-z0-9\\._:-]+\s*\/>/;const o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(t,e)=>{const n=t[0].length+t.index;const s=t.input[n];if(s==="<"||s===","){e.ignoreMatch();return}if(s===">"){if(!i(t,{after:n})){e.ignoreMatch()}}let r;const o=t.input.substring(n);if(r=o.match(/^\s*=/)){e.ignoreMatch();return}if(r=o.match(/^\s+extends\s+/)){if(r.index===0){e.ignoreMatch();return}}}};const c={$pattern:$i,keyword:zi,literal:Hi,built_in:Ki,"variable.language":qi};const h="[0-9](_?[0-9])*";const l=`\\.(${h})`;const a=`0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`;const u={className:"number",variants:[{begin:`(\\b(${a})((${l})|\\.)?|(${l}))`+`[eE][+-]?(${h})\\b`},{begin:`\\b(${a})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:`\\b(0|[1-9](_?[0-9])*)n\\b`},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0};const d={className:"subst",begin:"\\$\\{",end:"\\}",keywords:c,contains:[]};const f={begin:"html`",end:"",starts:{end:"`",returnEnd:false,contains:[t.BACKSLASH_ESCAPE,d],subLanguage:"xml"}};const g={begin:"css`",end:"",starts:{end:"`",returnEnd:false,contains:[t.BACKSLASH_ESCAPE,d],subLanguage:"css"}};const p={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,d]};const m=t.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:true,excludeBegin:true,relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:true,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]});const w={className:"comment",variants:[m,t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]};const b=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,f,g,p,{match:/\$\d+/},u];d.contains=b.concat({begin:/\{/,end:/\}/,keywords:c,contains:["self"].concat(b)});const v=[].concat(w,d.contains);const y=v.concat([{begin:/\(/,end:/\)/,keywords:c,contains:["self"].concat(v)}]);const k={className:"params",begin:/\(/,end:/\)/,excludeBegin:true,excludeEnd:true,keywords:c,contains:y};const x={variants:[{match:[/class/,/\s+/,n,/\s+/,/extends/,/\s+/,e.concat(n,"(",e.concat(/\./,n),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,n],scope:{1:"keyword",3:"title.class"}}]};const C={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Wi,...Vi]}};const S={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/};const D={variants:[{match:[/function/,/\s+/,n,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[k],illegal:/%/};const A={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function E(t){return e.concat("(?!",t.join("|"),")")}const M={match:e.concat(/\b/,E([...Ui,"super","import"]),n,e.lookahead(/\(/)),className:"title.function",relevance:0};const L={begin:e.concat(/\./,e.lookahead(e.concat(n,/(?![0-9A-Za-z$_(])/))),end:n,excludeBegin:true,keywords:"prototype",className:"property",relevance:0};const _={match:[/get|set/,/\s+/,n,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},k]};const O="(\\("+"[^()]*(\\("+"[^()]*(\\("+"[^()]*"+"\\)[^()]*)*"+"\\)[^()]*)*"+"\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>";const F={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(O)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[k]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:c,exports:{PARAMS_CONTAINS:y,CLASS_REFERENCE:C},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),S,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,f,g,p,w,{match:/\$\d+/},u,C,{className:"attr",begin:n+e.lookahead(":"),relevance:0},F,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[w,t.REGEXP_MODE,{className:"function",begin:O,returnBegin:true,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:true},{begin:/\(/,end:/\)/,excludeBegin:true,excludeEnd:true,keywords:c,contains:y}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:s.begin,end:s.end},{match:r},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:true,contains:["self"]}]}]},D,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+t.UNDERSCORE_IDENT_RE+"\\("+"[^()]*(\\("+"[^()]*(\\("+"[^()]*"+"\\)[^()]*)*"+"\\)[^()]*)*"+"\\)\\s*\\{",returnBegin:true,label:"func.def",contains:[k,t.inherit(t.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},L,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[k]},M,A,x,_,{match:/\$[(.]/}]}}var Zi=Gi;function Ji(t){const e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01};const i={match:/[{}[\],:]/,className:"punctuation",relevance:0};const n=["true","false","null"];const s={scope:"literal",beginKeywords:n.join(" ")};return{name:"JSON",keywords:{literal:n},contains:[e,i,t.QUOTE_STRING_MODE,s,t.C_NUMBER_MODE,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var Qi=Ji;var Yi="[0-9](_*[0-9])*";var Xi=`\\.(${Yi})`;var tn="[0-9a-fA-F](_*[0-9a-fA-F])*";var en={className:"number",variants:[{begin:`(\\b(${Yi})((${Xi})|\\.)?|(${Xi}))`+`[eE][+-]?(${Yi})[fFdD]?\\b`},{begin:`\\b(${Yi})((${Xi})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Xi})[fFdD]?\\b`},{begin:`\\b(${Yi})[fFdD]\\b`},{begin:`\\b0[xX]((${tn})\\.?|(${tn})?\\.(${tn}))`+`[pP][+-]?(${Yi})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${tn})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function nn(t){const e={keyword:"abstract as val var vararg get set class object open private protected public noinline "+"crossinline dynamic final enum if else do while for when throw try catch finally "+"import package is in fun override companion reified inline lateinit init "+"interface annotation data sealed internal infix operator out by constructor super "+"tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"};const i={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}};const n={className:"symbol",begin:t.UNDERSCORE_IDENT_RE+"@"};const s={className:"subst",begin:/\$\{/,end:/\}/,contains:[t.C_NUMBER_MODE]};const r={className:"variable",begin:"\\$"+t.UNDERSCORE_IDENT_RE};const o={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[r,s]},{begin:"'",end:"'",illegal:/\n/,contains:[t.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[t.BACKSLASH_ESCAPE,r,s]}]};s.contains.push(o);const c={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+t.UNDERSCORE_IDENT_RE+")?"};const h={className:"meta",begin:"@"+t.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[t.inherit(o,{className:"string"}),"self"]}]};const l=en;const a=t.COMMENT("/\\*","\\*/",{contains:[t.C_BLOCK_COMMENT_MODE]});const u={variants:[{className:"type",begin:t.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]};const d=u;d.variants[1].contains=[u];u.variants[1].contains=[d];return{name:"Kotlin",aliases:["kt","kts"],keywords:e,contains:[t.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),t.C_LINE_COMMENT_MODE,a,i,n,c,h,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:true,excludeEnd:true,keywords:e,relevance:5,contains:[{begin:t.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:true,relevance:0,contains:[t.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:true,keywords:e,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:true,contains:[u,t.C_LINE_COMMENT_MODE,a],relevance:0},t.C_LINE_COMMENT_MODE,a,c,h,o,t.C_NUMBER_MODE]},a]},{begin:[/class|interface|trait/,/\s+/,t.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:true,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},t.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:true,excludeEnd:true,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:true,returnEnd:true},c,h]},o,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:"\n"},l]}}var sn=nn;const rn=t=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:t.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:t.NUMBER_RE+"("+"%|em|ex|ch|rem"+"|vw|vh|vmin|vmax"+"|cm|mm|in|pt|pc|px"+"|deg|grad|rad|turn"+"|s|ms"+"|Hz|kHz"+"|dpi|dpcm|dppx"+")?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}});const on=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"];const cn=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"];const hn=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"];const ln=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"];const an=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse();const un=hn.concat(ln);function dn(t){const e=rn(t);const i=un;const n="and or not only";const s="[\\w-]+";const r="("+s+"|@\\{"+s+"\\})";const o=[];const c=[];const h=function(t){return{className:"string",begin:"~?"+t+".*?"+t}};const l=function(t,e,i){return{className:t,begin:e,relevance:i}};const a={$pattern:/[a-z-]+/,keyword:n,attribute:cn.join(" ")};const u={begin:"\\(",end:"\\)",contains:c,keywords:a,relevance:0};c.push(t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,h("'"),h('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:true}},e.HEXCOLOR,u,l("variable","@@?"+s,10),l("variable","@\\{"+s+"\\}"),l("built_in","~?`[^`]*?`"),{className:"attribute",begin:s+"\\s*:",end:":",returnBegin:true,excludeEnd:true},e.IMPORTANT,{beginKeywords:"and not"},e.FUNCTION_DISPATCH);const d=c.concat({begin:/\{/,end:/\}/,contains:o});const f={beginKeywords:"when",endsWithParent:true,contains:[{beginKeywords:"and not"}].concat(c)};const g={begin:r+"\\s*:",returnBegin:true,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+an.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:true,illegal:"[<=$]",relevance:0,contains:c}}]};const p={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:a,returnEnd:true,contains:c,relevance:0}};const m={className:"variable",variants:[{begin:"@"+s+"\\s*:",relevance:15},{begin:"@"+s}],starts:{end:"[;}]",returnEnd:true,contains:d}};const w={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:r,end:/\{/}],returnBegin:true,returnEnd:true,illegal:"[<='$\"]",relevance:0,contains:[t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,f,l("keyword","all\\b"),l("variable","@\\{"+s+"\\}"),{begin:"\\b("+on.join("|")+")\\b",className:"selector-tag"},e.CSS_NUMBER_MODE,l("selector-tag",r,0),l("selector-id","#"+r),l("selector-class","\\."+r,0),l("selector-tag","&",0),e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+hn.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+ln.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:d},{begin:"!important"},e.FUNCTION_DISPATCH]};const b={begin:s+":(:)?"+`(${i.join("|")})`,returnBegin:true,contains:[w]};o.push(t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,p,m,b,g,w,f,e.FUNCTION_DISPATCH);return{name:"Less",case_insensitive:true,illegal:"[=>'/<($\"]",contains:o}}var fn=dn;function gn(t){const e="\\[=*\\[";const i="\\]=*\\]";const n={begin:e,end:i,contains:["self"]};const s=[t.COMMENT("--(?!"+e+")","$"),t.COMMENT("--"+e,i,{contains:[n],relevance:10})];return{name:"Lua",keywords:{$pattern:t.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len "+"__gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert "+"collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring "+"module next pairs pcall print rawequal rawget rawset require select setfenv "+"setmetatable tonumber tostring type unpack xpcall arg self "+"coroutine resume yield status wrap create running debug getupvalue "+"debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv "+"io lines write close flush open output type read stderr stdin input stdout popen tmpfile "+"math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan "+"os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall "+"string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower "+"table setn insert getn foreachi maxn foreach concat sort remove"},contains:s.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[t.inherit(t.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:true,contains:s}].concat(s)},t.C_NUMBER_MODE,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,{className:"string",begin:e,end:i,contains:[n],relevance:5}])}}var pn=gn;function mn(t){const e={className:"variable",variants:[{begin:"\\$\\("+t.UNDERSCORE_IDENT_RE+"\\)",contains:[t.BACKSLASH_ESCAPE]},{begin:/\$[@%",subLanguage:"xml",relevance:0};const n={begin:"^[-\\*]{3,}",end:"$"};const s={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]};const r={className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:true};const o={begin:/^\[[^\n]+\]:/,returnBegin:true,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:true,excludeEnd:true},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:true}]};const c=/[A-Za-z][A-Za-z0-9+.-]*/;const h={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,c,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:true,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:true,returnEnd:true},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:true,excludeEnd:true},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:true,excludeEnd:true}]};const l={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]};const a={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]};const u=t.inherit(l,{contains:[]});const d=t.inherit(a,{contains:[]});l.contains.push(d);a.contains.push(u);let f=[i,h];[l,a,u,d].forEach((t=>{t.contains=t.contains.concat(f)}));f=f.concat(l,a);const g={className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:f},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:f}]}]};const p={className:"quote",begin:"^>\\s+",contains:f,end:"$"};return{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[g,i,r,l,a,p,s,n,h,o]}}var vn=bn;function yn(t){const e={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"};const i=/[a-zA-Z@][a-zA-Z0-9_]*/;const n=["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"];const s=["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"];const r=["false","true","FALSE","TRUE","nil","YES","NO","NULL"];const o=["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"];const c={"variable.language":["this","super"],$pattern:i,keyword:s,literal:r,built_in:o,type:n};const h={$pattern:i,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:c,illegal:"/,end:/$/,illegal:"\\n"},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+h.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:true,keywords:h,contains:[t.UNDERSCORE_TITLE_MODE]},{begin:"\\."+t.UNDERSCORE_IDENT_RE,relevance:0}]}}var kn=yn;function xn(t){const e=t.regex;const i=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"];const n=/[dualxmsipngr]{0,12}/;const s={$pattern:/[\w.]+/,keyword:i.join(" ")};const r={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:s};const o={begin:/->\{/,end:/\}/};const c={variants:[{begin:/\$\d/},{begin:e.concat(/[$%@](\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,`(?![A-Za-z])(?![@$%])`)},{begin:/[$%@][^\s\w{]/,relevance:0}]};const h=[t.BACKSLASH_ESCAPE,r,c];const l=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/];const a=(t,i,s="\\1")=>{const r=s==="\\1"?s:e.concat(s,i);return e.concat(e.concat("(?:",t,")"),i,/(?:\\.|[^\\\/])*?/,r,/(?:\\.|[^\\\/])*?/,s,n)};const u=(t,i,s)=>e.concat(e.concat("(?:",t,")"),i,/(?:\\.|[^\\\/])*?/,s,n);const d=[c,t.HASH_COMMENT_MODE,t.COMMENT(/^=\w/,/=cut/,{endsWithParent:true}),o,{className:"string",contains:h,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[t.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\/\\/|"+t.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[t.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:a("s|tr|y",e.either(...l,{capture:true}))},{begin:a("s|tr|y","\\(","\\)")},{begin:a("s|tr|y","\\[","\\]")},{begin:a("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:u("(?:m|qr)?",/\//,/\//)},{begin:u("m|qr",e.either(...l,{capture:true}),/\1/)},{begin:u("m|qr",/\(/,/\)/)},{begin:u("m|qr",/\[/,/\]/)},{begin:u("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:true,relevance:5,contains:[t.TITLE_MODE]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];r.contains=d;o.contains=d;return{name:"Perl",aliases:["pl","pm"],keywords:s,contains:d}}var Cn=xn;function Sn(t){const e=t.regex;const i=/(?![A-Za-z0-9])(?![$])/;const n=e.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,i);const s=e.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,i);const r={scope:"variable",match:"\\$+"+n};const o={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]};const c={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]};const h=t.inherit(t.APOS_STRING_MODE,{illegal:null});const l=t.inherit(t.QUOTE_STRING_MODE,{illegal:null,contains:t.QUOTE_STRING_MODE.contains.concat(c)});const a=t.END_SAME_AS_BEGIN({begin:/<<<[ \t]*(\w+)\n/,end:/[ \t]*(\w+)\b/,contains:t.QUOTE_STRING_MODE.contains.concat(c)});const u="[ \t\n]";const d={scope:"string",variants:[l,h,a]};const f={scope:"number",variants:[{begin:`\\b0[bB][01]+(?:_[01]+)*\\b`},{begin:`\\b0[oO][0-7]+(?:_[0-7]+)*\\b`},{begin:`\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b`},{begin:`(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?`}],relevance:0};const g=["false","null","true"];const p=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"];const m=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"];const w=t=>{const e=[];t.forEach((t=>{e.push(t);if(t.toLowerCase()===t){e.push(t.toUpperCase())}else{e.push(t.toLowerCase())}}));return e};const b={keyword:p,literal:w(g),built_in:m};const v=t=>t.map((t=>t.replace(/\|\d+$/,"")));const y={variants:[{match:[/new/,e.concat(u,"+"),e.concat("(?!",v(m).join("\\b|"),"\\b)"),s],scope:{1:"keyword",4:"title.class"}}]};const k=e.concat(n,"\\b(?!\\()");const x={variants:[{match:[e.concat(/::/,e.lookahead(/(?!class\b)/)),k],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[s,e.concat(/::/,e.lookahead(/(?!class\b)/)),k],scope:{1:"title.class",3:"variable.constant"}},{match:[s,e.concat("::",e.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[s,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]};const C={scope:"attr",match:e.concat(n,e.lookahead(":"),e.lookahead(/(?!::)/))};const S={relevance:0,begin:/\(/,end:/\)/,keywords:b,contains:[C,r,x,t.C_BLOCK_COMMENT_MODE,d,f,y]};const D={relevance:0,match:[/\b/,e.concat("(?!fn\\b|function\\b|",v(p).join("\\b|"),"|",v(m).join("\\b|"),"\\b)"),n,e.concat(u,"*"),e.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[S]};S.contains.push(D);const A=[C,x,t.C_BLOCK_COMMENT_MODE,d,f,y];const E={begin:e.concat(/#\[\s*/,s),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:g,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:g,keyword:["new","array"]},contains:["self",...A]},...A,{scope:"meta",match:s}]};return{case_insensitive:false,keywords:b,contains:[E,t.HASH_COMMENT_MODE,t.COMMENT("//","$"),t.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:t.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:true}]}},o,{scope:"variable.language",match:/\$this\b/},r,D,x,{match:[/const/,/\s/,n],scope:{1:"keyword",3:"variable.constant"}},y,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:true,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},t.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:true},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:true,excludeEnd:true,keywords:b,contains:["self",r,x,t.C_BLOCK_COMMENT_MODE,d,f]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:true,contains:[{beginKeywords:"extends implements"},t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[t.inherit(t.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},t.UNDERSCORE_TITLE_MODE]},d,f]}}var Dn=Sn;function An(t){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:true},{begin:'b"',end:'"',skip:true},{begin:"b'",end:"'",skip:true},t.inherit(t.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:true}),t.inherit(t.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:true})]}]}}var En=An;function Mn(t){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:true}}var Ln=Mn;function _n(t){const e=t.regex;const i=/[\p{XID_Start}_]\p{XID_Continue}*/u;const n=["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"];const s=["__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"];const r=["__debug__","Ellipsis","False","None","NotImplemented","True"];const o=["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"];const c={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:n,built_in:s,literal:r,type:o};const h={className:"meta",begin:/^(>>>|\.\.\.) /};const l={className:"subst",begin:/\{/,end:/\}/,keywords:c,illegal:/#/};const a={begin:/\{\{/,relevance:0};const u={className:"string",contains:[t.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,h],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,h],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,h,a,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,h,a,l]},{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:[t.BACKSLASH_ESCAPE,a,l]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,a,l]},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]};const d="[0-9](_?[0-9])*";const f=`(\\b(${d}))?\\.(${d})|\\b(${d})\\.`;const g=`\\b|${n.join("|")}`;const p={className:"number",relevance:0,variants:[{begin:`(\\b(${d})|(${f}))[eE][+-]?(${d})[jJ]?(?=${g})`},{begin:`(${f})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${g})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${g})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${g})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${g})`},{begin:`\\b(${d})[jJ](?=${g})`}]};const m={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:c,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:true}]};const w={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:true},{begin:/\(/,end:/\)/,excludeBegin:true,excludeEnd:true,keywords:c,contains:["self",h,p,u,t.HASH_COMMENT_MODE]}]};l.contains=[u,p,h];return{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:true,keywords:c,illegal:/(<\/|->|\?)|=>/,contains:[h,p,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},u,m,t.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,i],scope:{1:"keyword",3:"title.function"},contains:[w]},{variants:[{match:[/\bclass/,/\s+/,i,/\s*/,/\(\s*/,i,/\s*\)/]},{match:[/\bclass/,/\s+/,i]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[p,w,u]}]}}var On=_n;function Fn(t){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}var Tn=Fn;function Rn(t){const e=t.regex;const i=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/;const n=e.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/);const s=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/;const r=e.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:i,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 "+"NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F "+"abs acos acosh all any anyNA Arg as.call as.character "+"as.complex as.double as.environment as.integer as.logical "+"as.null.default as.numeric as.raw asin asinh atan atanh attr "+"attributes baseenv browser c call ceiling class Conj cos cosh "+"cospi cummax cummin cumprod cumsum digamma dim dimnames "+"emptyenv exp expression floor forceAndCall gamma gc.time "+"globalenv Im interactive invisible is.array is.atomic is.call "+"is.character is.complex is.double is.environment is.expression "+"is.finite is.function is.infinite is.integer is.language "+"is.list is.logical is.matrix is.na is.name is.nan is.null "+"is.numeric is.object is.pairlist is.raw is.recursive is.single "+"is.symbol lazyLoadDBfetch length lgamma list log max min "+"missing Mod names nargs nzchar oldClass on.exit pos.to.env "+"proc.time prod quote range Re rep retracemem return round "+"seq_along seq_len seq.int sign signif sin sinh sinpi sqrt "+"standardGeneric substitute sum switch tan tanh tanpi tracemem "+"trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[t.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:e.lookahead(e.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:true}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:i},{match:/`(?:\\.|[^`\\])+`/}],endsParent:true}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),t.HASH_COMMENT_MODE,{scope:"string",contains:[t.BACKSLASH_ESCAPE],variants:[t.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),t.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),t.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),t.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),t.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),t.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[s,n]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,n]},{scope:{1:"punctuation",2:"number"},match:[r,n]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,n]}]},{scope:{3:"operator"},match:[i,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:s},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:r},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}var In=Rn;function Nn(t){const e=t.regex;const i="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)";const n=e.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/);const s=e.concat(n,/(::\w+)*/);const r=["include","extend","prepend","public","private","protected","raise","throw"];const o={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...r],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]};const c={className:"doctag",begin:"@[A-Za-z]+"};const h={begin:"#<",end:">"};const l=[t.COMMENT("#","$",{contains:[c]}),t.COMMENT("^=begin","^=end",{contains:[c],relevance:10}),t.COMMENT("^__END__",t.MATCH_NOTHING_RE)];const a={className:"subst",begin:/#\{/,end:/\}/,keywords:o};const u={className:"string",contains:[t.BACKSLASH_ESCAPE,a],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:e.concat(/<<[-~]?'?/,e.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[t.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[t.BACKSLASH_ESCAPE,a]})]}]};const d="[1-9](_?[0-9])*|0";const f="[0-9](_?[0-9])*";const g={className:"number",relevance:0,variants:[{begin:`\\b(${d})(\\.(${f}))?([eE][+-]?(${f})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]};const p={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:true,endsParent:true,keywords:o}]};const m={match:[/(include|extend)\s+/,s],scope:{2:"title.class"},keywords:o};const w={variants:[{match:[/class\s+/,s,/\s+<\s+/,s]},{match:[/\b(class|module)\s+/,s]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:o};const b={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};const v={match:[/def/,/\s+/,i],scope:{1:"keyword",3:"title.function"},contains:[p]};const y={relevance:0,match:[s,/\.new[. (]/],scope:{1:"title.class"}};const k={relevance:0,match:n,scope:"title.class"};const x=[u,w,m,y,b,k,v,{begin:t.IDENT_RE+"::"},{className:"symbol",begin:t.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[u,{begin:i}],relevance:0},g,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])"+`(?![A-Za-z])(?![@$?'])`},{className:"params",begin:/\|/,end:/\|/,excludeBegin:true,excludeEnd:true,relevance:0,keywords:o},{begin:"("+t.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[t.BACKSLASH_ESCAPE,a],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(h,l),relevance:0}].concat(h,l);a.contains=x;p.contains=x;const C="[>?]>";const S="[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]";const D="(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>";const A=[{begin:/^\s*=>/,starts:{end:"$",contains:x}},{className:"meta.prompt",begin:"^("+C+"|"+S+"|"+D+")(?=[ ])",starts:{end:"$",keywords:o,contains:x}}];l.unshift(h);return{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:o,illegal:/\/\*/,contains:[t.SHEBANG({binary:"ruby"})].concat(A).concat(l).concat(x)}}var Bn=Nn;function Pn(t){const e=t.regex;const i={className:"title.function.invoke",relevance:0,begin:e.concat(/\b/,/(?!let\b)/,t.IDENT_RE,e.lookahead(/\s*\(/))};const n="([ui](8|16|32|64|128|size)|f(32|64))?";const s=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","unsafe","unsized","use","virtual","where","while","yield"];const r=["true","false","Some","None","Ok","Err"];const o=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"];const c=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:t.IDENT_RE+"!?",type:c,keyword:s,literal:r,built_in:o},illegal:""},i]}}var jn=Pn;const $n=t=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:t.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:t.NUMBER_RE+"("+"%|em|ex|ch|rem"+"|vw|vh|vmin|vmax"+"|cm|mm|in|pt|pc|px"+"|deg|grad|rad|turn"+"|s|ms"+"|Hz|kHz"+"|dpi|dpcm|dppx"+")?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z][A-Za-z0-9_-]*/}});const zn=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"];const Hn=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"];const Wn=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"];const Vn=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"];const Un=["align-content","align-items","align-self","all","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","content","content-visibility","counter-increment","counter-reset","cue","cue-after","cue-before","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-synthesis","font-variant","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","gap","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inline-size","isolation","justify-content","left","letter-spacing","line-break","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","pause","pause-after","pause-before","perspective","perspective-origin","pointer-events","position","quotes","resize","rest","rest-after","rest-before","right","row-gap","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","speak","speak-as","src","tab-size","table-layout","text-align","text-align-all","text-align-last","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-box","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","z-index"].reverse();function qn(t){const e=$n(t);const i=Vn;const n=Wn;const s="@[a-z-]+";const r="and or not only";const o="[a-zA-Z-][a-zA-Z0-9_-]*";const c={className:"variable",begin:"(\\$"+o+")\\b",relevance:0};return{name:"SCSS",case_insensitive:true,illegal:"[=/|']",contains:[t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,e.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},e.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+zn.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+n.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+i.join("|")+")"},c,{begin:/\(/,end:/\)/,contains:[e.CSS_NUMBER_MODE]},e.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Un.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[e.BLOCK_COMMENT,c,e.HEXCOLOR,e.CSS_NUMBER_MODE,t.QUOTE_STRING_MODE,t.APOS_STRING_MODE,e.IMPORTANT,e.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:s,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:true,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:Hn.join(" ")},contains:[{begin:s,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},c,t.QUOTE_STRING_MODE,t.APOS_STRING_MODE,e.HEXCOLOR,e.CSS_NUMBER_MODE]},e.FUNCTION_DISPATCH]}}var Kn=qn;function Gn(t){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}var Zn=Gn;function Jn(t){const e=t.regex;const i=t.COMMENT("--","$");const n={className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]};const s={begin:/"/,end:/"/,contains:[{begin:/""/}]};const r=["true","false","unknown"];const o=["double precision","large object","with timezone","without timezone"];const c=["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"];const h=["add","asc","collation","desc","final","first","last","view"];const l=["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"];const a=["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"];const u=["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"];const d=["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"];const f=a;const g=[...l,...h].filter((t=>!a.includes(t)));const p={className:"variable",begin:/@[a-z0-9]+/};const m={className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0};const w={begin:e.concat(/\b/,e.either(...f),/\s*\(/),relevance:0,keywords:{built_in:f}};function b(t,{exceptions:e,when:i}={}){const n=i;e=e||[];return t.map((t=>{if(t.match(/\|\d+$/)||e.includes(t)){return t}else if(n(t)){return`${t}|0`}else{return t}}))}return{name:"SQL",case_insensitive:true,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:b(g,{when:t=>t.length<3}),literal:r,type:c,built_in:u},contains:[{begin:e.either(...d),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:g.concat(d),literal:r,type:c}},{className:"type",begin:e.either(...o)},w,p,n,s,t.C_NUMBER_MODE,t.C_BLOCK_COMMENT_MODE,i,m]}}var Qn=Jn;function Yn(t){if(!t)return null;if(typeof t==="string")return t;return t.source}function Xn(t){return ts("(?=",t,")")}function ts(...t){const e=t.map((t=>Yn(t))).join("");return e}function es(t){const e=t[t.length-1];if(typeof e==="object"&&e.constructor===Object){t.splice(t.length-1,1);return e}else{return{}}}function is(...t){const e=es(t);const i="("+(e.capture?"":"?:")+t.map((t=>Yn(t))).join("|")+")";return i}const ns=t=>ts(/\b/,t,/\w$/.test(t)?/\b/:/\B/);const ss=["Protocol","Type"].map(ns);const rs=["init","self"].map(ns);const os=["Any","Self"];const cs=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","distributed","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"];const hs=["false","nil","true"];const ls=["assignment","associativity","higherThan","left","lowerThan","none","right"];const as=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"];const us=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"];const ds=is(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/);const fs=is(ds,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/);const gs=ts(ds,fs,"*");const ps=is(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/);const ms=is(ps,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/);const ws=ts(ps,ms,"*");const bs=ts(/[A-Z]/,ms,"*");const vs=["autoclosure",ts(/convention\(/,is("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",ts(/objc\(/,ws,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","testable","UIApplicationMain","unknown","usableFromInline"];const ys=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function ks(t){const e={match:/\s+/,relevance:0};const i=t.COMMENT("/\\*","\\*/",{contains:["self"]});const n=[t.C_LINE_COMMENT_MODE,i];const s={match:[/\./,is(...ss,...rs)],className:{2:"keyword"}};const r={match:ts(/\./,is(...cs)),relevance:0};const o=cs.filter((t=>typeof t==="string")).concat(["_|0"]);const c=cs.filter((t=>typeof t!=="string")).concat(os).map(ns);const h={variants:[{className:"keyword",match:is(...c,...rs)}]};const l={$pattern:is(/\b\w+/,/#\w+/),keyword:o.concat(as),literal:hs};const a=[s,r,h];const u={match:ts(/\./,is(...us)),relevance:0};const d={className:"built_in",match:ts(/\b/,is(...us),/(?=\()/)};const f=[u,d];const g={match:/->/,relevance:0};const p={className:"operator",relevance:0,variants:[{match:gs},{match:`\\.(\\.|${fs})+`}]};const m=[g,p];const w="([0-9]_*)+";const b="([0-9a-fA-F]_*)+";const v={className:"number",relevance:0,variants:[{match:`\\b(${w})(\\.(${w}))?`+`([eE][+-]?(${w}))?\\b`},{match:`\\b0x(${b})(\\.(${b}))?`+`([pP][+-]?(${w}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]};const y=(t="")=>({className:"subst",variants:[{match:ts(/\\/,t,/[0\\tnr"']/)},{match:ts(/\\/,t,/u\{[0-9a-fA-F]{1,8}\}/)}]});const k=(t="")=>({className:"subst",match:ts(/\\/,t,/[\t ]*(?:[\r\n]|\r\n)/)});const x=(t="")=>({className:"subst",label:"interpol",begin:ts(/\\/,t,/\(/),end:/\)/});const C=(t="")=>({begin:ts(t,/"""/),end:ts(/"""/,t),contains:[y(t),k(t),x(t)]});const S=(t="")=>({begin:ts(t,/"/),end:ts(/"/,t),contains:[y(t),x(t)]});const D={className:"string",variants:[C(),C("#"),C("##"),C("###"),S(),S("#"),S("##"),S("###")]};const A={match:ts(/`/,ws,/`/)};const E={className:"variable",match:/\$\d+/};const M={className:"variable",match:`\\$${ms}+`};const L=[A,E,M];const _={match:/(@|#(un)?)available/,className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:ys,contains:[...m,v,D]}]}};const O={className:"keyword",match:ts(/@/,is(...vs))};const F={className:"meta",match:ts(/@/,ws)};const T=[_,O,F];const R={match:Xn(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:ts(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,ms,"+")},{className:"type",match:bs,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:ts(/\s+&\s+/,Xn(bs)),relevance:0}]};const I={begin://,keywords:l,contains:[...n,...a,...T,g,R]};R.contains.push(I);const N={match:ts(ws,/\s*:/),keywords:"_|0",relevance:0};const B={begin:/\(/,end:/\)/,relevance:0,keywords:l,contains:["self",N,...n,...a,...f,...m,v,D,...L,...T,R]};const P={begin://,contains:[...n,R]};const j={begin:is(Xn(ts(ws,/\s*:/)),Xn(ts(ws,/\s+/,ws,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:ws}]};const $={begin:/\(/,end:/\)/,keywords:l,contains:[j,...n,...a,...m,v,D,...T,R,B],endsParent:true,illegal:/["']/};const z={match:[/func/,/\s+/,is(A.match,ws,gs)],className:{1:"keyword",3:"title.function"},contains:[P,$,e],illegal:[/\[/,/%/]};const H={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[P,$,e],illegal:/\[|%/};const W={match:[/operator/,/\s+/,gs],className:{1:"keyword",3:"title"}};const V={begin:[/precedencegroup/,/\s+/,bs],className:{1:"keyword",3:"title"},contains:[R],keywords:[...ls,...hs],end:/}/};for(const t of D.variants){const e=t.contains.find((t=>t.label==="interpol"));e.keywords=l;const i=[...a,...f,...m,v,D,...L];e.contains=[...i,{begin:/\(/,end:/\)/,contains:["self",...i]}]}return{name:"Swift",keywords:l,contains:[...n,z,H,{beginKeywords:"struct protocol class extension enum actor",end:"\\{",excludeEnd:true,keywords:l,contains:[t.inherit(t.TITLE_MODE,{className:"title.class",begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/}),...a]},W,V,{beginKeywords:"import",end:/$/,contains:[...n],relevance:0},...a,...f,...m,v,D,...L,...T,R,B]}}var xs=ks;const Cs="[A-Za-z$_][0-9A-Za-z$_]*";const Ss=["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"];const Ds=["true","false","null","undefined","NaN","Infinity"];const As=["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"];const Es=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"];const Ms=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"];const Ls=["arguments","this","super","console","window","document","localStorage","module","global"];const _s=[].concat(Ms,As,Es);function Os(t){const e=t.regex;const i=(t,{after:e})=>{const i="",end:""};const r=/<[A-Za-z0-9\\._:-]+\s*\/>/;const o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(t,e)=>{const n=t[0].length+t.index;const s=t.input[n];if(s==="<"||s===","){e.ignoreMatch();return}if(s===">"){if(!i(t,{after:n})){e.ignoreMatch()}}let r;const o=t.input.substring(n);if(r=o.match(/^\s*=/)){e.ignoreMatch();return}if(r=o.match(/^\s+extends\s+/)){if(r.index===0){e.ignoreMatch();return}}}};const c={$pattern:Cs,keyword:Ss,literal:Ds,built_in:_s,"variable.language":Ls};const h="[0-9](_?[0-9])*";const l=`\\.(${h})`;const a=`0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`;const u={className:"number",variants:[{begin:`(\\b(${a})((${l})|\\.)?|(${l}))`+`[eE][+-]?(${h})\\b`},{begin:`\\b(${a})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:`\\b(0|[1-9](_?[0-9])*)n\\b`},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0};const d={className:"subst",begin:"\\$\\{",end:"\\}",keywords:c,contains:[]};const f={begin:"html`",end:"",starts:{end:"`",returnEnd:false,contains:[t.BACKSLASH_ESCAPE,d],subLanguage:"xml"}};const g={begin:"css`",end:"",starts:{end:"`",returnEnd:false,contains:[t.BACKSLASH_ESCAPE,d],subLanguage:"css"}};const p={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,d]};const m=t.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:true,excludeBegin:true,relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:true,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]});const w={className:"comment",variants:[m,t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]};const b=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,f,g,p,{match:/\$\d+/},u];d.contains=b.concat({begin:/\{/,end:/\}/,keywords:c,contains:["self"].concat(b)});const v=[].concat(w,d.contains);const y=v.concat([{begin:/\(/,end:/\)/,keywords:c,contains:["self"].concat(v)}]);const k={className:"params",begin:/\(/,end:/\)/,excludeBegin:true,excludeEnd:true,keywords:c,contains:y};const x={variants:[{match:[/class/,/\s+/,n,/\s+/,/extends/,/\s+/,e.concat(n,"(",e.concat(/\./,n),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,n],scope:{1:"keyword",3:"title.class"}}]};const C={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...As,...Es]}};const S={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/};const D={variants:[{match:[/function/,/\s+/,n,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[k],illegal:/%/};const A={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function E(t){return e.concat("(?!",t.join("|"),")")}const M={match:e.concat(/\b/,E([...Ms,"super","import"]),n,e.lookahead(/\(/)),className:"title.function",relevance:0};const L={begin:e.concat(/\./,e.lookahead(e.concat(n,/(?![0-9A-Za-z$_(])/))),end:n,excludeBegin:true,keywords:"prototype",className:"property",relevance:0};const _={match:[/get|set/,/\s+/,n,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},k]};const O="(\\("+"[^()]*(\\("+"[^()]*(\\("+"[^()]*"+"\\)[^()]*)*"+"\\)[^()]*)*"+"\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>";const F={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(O)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[k]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:c,exports:{PARAMS_CONTAINS:y,CLASS_REFERENCE:C},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),S,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,f,g,p,w,{match:/\$\d+/},u,C,{className:"attr",begin:n+e.lookahead(":"),relevance:0},F,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[w,t.REGEXP_MODE,{className:"function",begin:O,returnBegin:true,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:true},{begin:/\(/,end:/\)/,excludeBegin:true,excludeEnd:true,keywords:c,contains:y}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:s.begin,end:s.end},{match:r},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:true,contains:["self"]}]}]},D,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+t.UNDERSCORE_IDENT_RE+"\\("+"[^()]*(\\("+"[^()]*(\\("+"[^()]*"+"\\)[^()]*)*"+"\\)[^()]*)*"+"\\)\\s*\\{",returnBegin:true,label:"func.def",contains:[k,t.inherit(t.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},L,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[k]},M,A,x,_,{match:/\$[(.]/}]}}function Fs(t){const e=Os(t);const i=Cs;const n=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"];const s={beginKeywords:"namespace",end:/\{/,excludeEnd:true,contains:[e.exports.CLASS_REFERENCE]};const r={beginKeywords:"interface",end:/\{/,excludeEnd:true,keywords:{keyword:"interface extends",built_in:n},contains:[e.exports.CLASS_REFERENCE]};const o={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/};const c=["type","namespace","interface","public","private","protected","implements","declare","abstract","readonly","enum","override"];const h={$pattern:Cs,keyword:Ss.concat(c),literal:Ds,built_in:_s.concat(n),"variable.language":Ls};const l={className:"meta",begin:"@"+i};const a=(t,e,i)=>{const n=t.contains.findIndex((t=>t.label===e));if(n===-1){throw new Error("can not find mode to replace")}t.contains.splice(n,1,i)};Object.assign(e.keywords,h);e.exports.PARAMS_CONTAINS.push(l);e.contains=e.contains.concat([l,s,r]);a(e,"shebang",t.SHEBANG());a(e,"use_strict",o);const u=e.contains.find((t=>t.label==="func.def"));u.relevance=0;Object.assign(e,{name:"TypeScript",aliases:["ts","tsx"]});return e}var Ts=Fs;function Rs(t){const e=t.regex;const i={className:"string",begin:/"(""|[^/n])"C\b/};const n={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]};const s=/\d{1,2}\/\d{1,2}\/\d{4}/;const r=/\d{4}-\d{1,2}-\d{1,2}/;const o=/(\d|1[012])(:\d+){0,2} *(AM|PM)/;const c=/\d{1,2}(:\d{1,2}){1,2}/;const h={className:"literal",variants:[{begin:e.concat(/# */,e.either(r,s),/ *#/)},{begin:e.concat(/# */,c,/ *#/)},{begin:e.concat(/# */,o,/ *#/)},{begin:e.concat(/# */,e.either(r,s),/ +/,e.either(o,c),/ *#/)}]};const l={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]};const a={className:"label",begin:/^\w+:/};const u=t.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]});const d=t.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});const f={className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[d]};return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:true,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval "+"call case catch class compare const continue custom declare default delegate dim distinct do "+"each equals else elseif end enum erase error event exit explicit finally for friend from function "+"get global goto group handles if implements imports in inherits interface into iterator "+"join key let lib loop me mid module mustinherit mustoverride mybase myclass "+"namespace narrowing new next notinheritable notoverridable "+"of off on operator option optional order overloads overridable overrides "+"paramarray partial preserve private property protected public "+"raiseevent readonly redim removehandler resume return "+"select set shadows shared skip static step stop structure strict sub synclock "+"take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor "+"cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[i,n,h,l,a,u,d,f]}}var Is=Rs;function Ns(t){const e=t.COMMENT(/\(;/,/;\)/);e.contains.push("self");const i=t.COMMENT(/;;/,/$/);const n=["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"];const s={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}};const r={className:"variable",begin:/\$[\w_]+/};const o={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0};const c={className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/};const h={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"};const l={className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};const a={match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}};return{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:n},contains:[i,e,a,r,o,s,t.QUOTE_STRING_MODE,h,l,c]}}var Bs=Ns;function Ps(t){const e=t.regex;const i=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u);const n=/[\p{L}0-9._:-]+/u;const s={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/};const r={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]};const o=t.inherit(r,{begin:/\(/,end:/\)/});const c=t.inherit(t.APOS_STRING_MODE,{className:"string"});const h=t.inherit(t.QUOTE_STRING_MODE,{className:"string"});const l={endsWithParent:true,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:true,unicodeRegex:true,contains:[{className:"meta",begin://,relevance:10,contains:[r,h,c,o,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[r,o,h,c]}]}]},t.COMMENT(//,{relevance:10}),{begin://,relevance:10},s,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[h]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{end:/<\/style>/,returnEnd:true,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{end:/<\/script>/,returnEnd:true,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:i,relevance:0,starts:l}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(i,/>/))),contains:[{className:"name",begin:i,relevance:0},{begin:/>/,relevance:0,endsParent:true}]}]}}var js=Ps;function $s(t){const e="true false yes no null";const i="[\\w#;/?:@&=+$,.~*'()[\\]]+";const n={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]};const s={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]};const r={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[t.BACKSLASH_ESCAPE,s]};const o=t.inherit(r,{variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]});const c="[0-9]{4}(-[0-9][0-9]){0,2}";const h="([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?";const l="(\\.[0-9]*)?";const a="([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?";const u={className:"number",begin:"\\b"+c+h+l+a+"\\b"};const d={end:",",endsWithParent:true,excludeEnd:true,keywords:e,relevance:0};const f={begin:/\{/,end:/\}/,contains:[d],illegal:"\\n",relevance:0};const g={begin:"\\[",end:"\\]",contains:[d],illegal:"\\n",relevance:0};const p=[n,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:true,excludeEnd:true,relevance:0},{className:"type",begin:"!\\w+!"+i},{className:"type",begin:"!<"+i+">"},{className:"type",begin:"!"+i},{className:"type",begin:"!!"+i},{className:"meta",begin:"&"+t.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+t.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},t.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},u,{className:"number",begin:t.C_NUMBER_RE+"\\b",relevance:0},f,g,r];const m=[...p];m.pop();m.push(o);d.contains=m;return{name:"YAML",case_insensitive:true,aliases:["yml"],contains:p}}var zs=$s;var Hs={exports:{}};function Ws(t){if(t instanceof Map){t.clear=t.delete=t.set=function(){throw new Error("map is read-only")}}else if(t instanceof Set){t.add=t.clear=t.delete=function(){throw new Error("set is read-only")}}Object.freeze(t);Object.getOwnPropertyNames(t).forEach((function(e){var i=t[e];if(typeof i=="object"&&!Object.isFrozen(i)){Ws(i)}}));return t}Hs.exports=Ws;Hs.exports.default=Ws;class Vs{constructor(t){if(t.data===undefined)t.data={};this.data=t.data;this.isMatchIgnored=false}ignoreMatch(){this.isMatchIgnored=true}}function Us(t){return t.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function qs(t,...e){const i=Object.create(null);for(const e in t){i[e]=t[e]}e.forEach((function(t){for(const e in t){i[e]=t[e]}}));return i}const Ks="";const Gs=t=>!!t.scope||t.sublanguage&&t.language;const Zs=(t,{prefix:e})=>{if(t.includes(".")){const i=t.split(".");return[`${e}${i.shift()}`,...i.map(((t,e)=>`${t}${"_".repeat(e+1)}`))].join(" ")}return`${e}${t}`};class Js{constructor(t,e){this.buffer="";this.classPrefix=e.classPrefix;t.walk(this)}addText(t){this.buffer+=Us(t)}openNode(t){if(!Gs(t))return;let e="";if(t.sublanguage){e=`language-${t.language}`}else{e=Zs(t.scope,{prefix:this.classPrefix})}this.span(e)}closeNode(t){if(!Gs(t))return;this.buffer+=Ks}value(){return this.buffer}span(t){this.buffer+=``}}const Qs=(t={})=>{const e={children:[]};Object.assign(e,t);return e};class Ys{constructor(){this.rootNode=Qs();this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(t){this.top.children.push(t)}openNode(t){const e=Qs({scope:t});this.add(e);this.stack.push(e)}closeNode(){if(this.stack.length>1){return this.stack.pop()}return undefined}closeAllNodes(){while(this.closeNode());}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(t){return this.constructor._walk(t,this.rootNode)}static _walk(t,e){if(typeof e==="string"){t.addText(e)}else if(e.children){t.openNode(e);e.children.forEach((e=>this._walk(t,e)));t.closeNode(e)}return t}static _collapse(t){if(typeof t==="string")return;if(!t.children)return;if(t.children.every((t=>typeof t==="string"))){t.children=[t.children.join("")]}else{t.children.forEach((t=>{Ys._collapse(t)}))}}}class Xs extends Ys{constructor(t){super();this.options=t}addKeyword(t,e){if(t===""){return}this.openNode(e);this.addText(t);this.closeNode()}addText(t){if(t===""){return}this.add(t)}addSublanguage(t,e){const i=t.root;i.sublanguage=true;i.language=e;this.add(i)}toHTML(){const t=new Js(this,this.options);return t.value()}finalize(){return true}}function tr(t){if(!t)return null;if(typeof t==="string")return t;return t.source}function er(t){return sr("(?=",t,")")}function ir(t){return sr("(?:",t,")*")}function nr(t){return sr("(?:",t,")?")}function sr(...t){const e=t.map((t=>tr(t))).join("");return e}function rr(t){const e=t[t.length-1];if(typeof e==="object"&&e.constructor===Object){t.splice(t.length-1,1);return e}else{return{}}}function or(...t){const e=rr(t);const i="("+(e.capture?"":"?:")+t.map((t=>tr(t))).join("|")+")";return i}function cr(t){return new RegExp(t.toString()+"|").exec("").length-1}function hr(t,e){const i=t&&t.exec(e);return i&&i.index===0}const lr=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function ar(t,{joinWith:e}){let i=0;return t.map((t=>{i+=1;const e=i;let n=tr(t);let s="";while(n.length>0){const t=lr.exec(n);if(!t){s+=n;break}s+=n.substring(0,t.index);n=n.substring(t.index+t[0].length);if(t[0][0]==="\\"&&t[1]){s+="\\"+String(Number(t[1])+e)}else{s+=t[0];if(t[0]==="("){i++}}}return s})).map((t=>`(${t})`)).join(e)}const ur=/\b\B/;const dr="[a-zA-Z]\\w*";const fr="[a-zA-Z_]\\w*";const gr="\\b\\d+(\\.\\d+)?";const pr="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)";const mr="\\b(0b[01]+)";const wr="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~";const br=(t={})=>{const e=/^#![ ]*\//;if(t.binary){t.begin=sr(e,/.*\b/,t.binary,/\b.*/)}return qs({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,e)=>{if(t.index!==0)e.ignoreMatch()}},t)};const vr={begin:"\\\\[\\s\\S]",relevance:0};const yr={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[vr]};const kr={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[vr]};const xr={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/};const Cr=function(t,e,i={}){const n=qs({scope:"comment",begin:t,end:e,contains:[]},i);n.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:true,relevance:0});const s=or("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,}/);n.contains.push({begin:sr(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")});return n};const Sr=Cr("//","$");const Dr=Cr("/\\*","\\*/");const Ar=Cr("#","$");const Er={scope:"number",begin:gr,relevance:0};const Mr={scope:"number",begin:pr,relevance:0};const Lr={scope:"number",begin:mr,relevance:0};const _r={begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[vr,{begin:/\[/,end:/\]/,relevance:0,contains:[vr]}]}]};const Or={scope:"title",begin:dr,relevance:0};const Fr={scope:"title",begin:fr,relevance:0};const Tr={begin:"\\.\\s*"+fr,relevance:0};const Rr=function(t){return Object.assign(t,{"on:begin":(t,e)=>{e.data._beginMatch=t[1]},"on:end":(t,e)=>{if(e.data._beginMatch!==t[1])e.ignoreMatch()}})};var Ir=Object.freeze({__proto__:null,MATCH_NOTHING_RE:ur,IDENT_RE:dr,UNDERSCORE_IDENT_RE:fr,NUMBER_RE:gr,C_NUMBER_RE:pr,BINARY_NUMBER_RE:mr,RE_STARTERS_RE:wr,SHEBANG:br,BACKSLASH_ESCAPE:vr,APOS_STRING_MODE:yr,QUOTE_STRING_MODE:kr,PHRASAL_WORDS_MODE:xr,COMMENT:Cr,C_LINE_COMMENT_MODE:Sr,C_BLOCK_COMMENT_MODE:Dr,HASH_COMMENT_MODE:Ar,NUMBER_MODE:Er,C_NUMBER_MODE:Mr,BINARY_NUMBER_MODE:Lr,REGEXP_MODE:_r,TITLE_MODE:Or,UNDERSCORE_TITLE_MODE:Fr,METHOD_GUARD:Tr,END_SAME_AS_BEGIN:Rr});function Nr(t,e){const i=t.input[t.index-1];if(i==="."){e.ignoreMatch()}}function Br(t,e){if(t.className!==undefined){t.scope=t.className;delete t.className}}function Pr(t,e){if(!e)return;if(!t.beginKeywords)return;t.begin="\\b("+t.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)";t.__beforeBegin=Nr;t.keywords=t.keywords||t.beginKeywords;delete t.beginKeywords;if(t.relevance===undefined)t.relevance=0}function jr(t,e){if(!Array.isArray(t.illegal))return;t.illegal=or(...t.illegal)}function $r(t,e){if(!t.match)return;if(t.begin||t.end)throw new Error("begin & end are not supported with match");t.begin=t.match;delete t.match}function zr(t,e){if(t.relevance===undefined)t.relevance=1}const Hr=(t,e)=>{if(!t.beforeMatch)return;if(t.starts)throw new Error("beforeMatch cannot be used with starts");const i=Object.assign({},t);Object.keys(t).forEach((e=>{delete t[e]}));t.keywords=i.keywords;t.begin=sr(i.beforeMatch,er(i.begin));t.starts={relevance:0,contains:[Object.assign(i,{endsParent:true})]};t.relevance=0;delete i.beforeMatch};const Wr=["of","and","for","in","not","or","if","then","parent","list","value"];const Vr="keyword";function Ur(t,e,i=Vr){const n=Object.create(null);if(typeof t==="string"){s(i,t.split(" "))}else if(Array.isArray(t)){s(i,t)}else{Object.keys(t).forEach((function(i){Object.assign(n,Ur(t[i],e,i))}))}return n;function s(t,i){if(e){i=i.map((t=>t.toLowerCase()))}i.forEach((function(e){const i=e.split("|");n[i[0]]=[t,qr(i[0],i[1])]}))}}function qr(t,e){if(e){return Number(e)}return Kr(t)?0:1}function Kr(t){return Wr.includes(t.toLowerCase())}const Gr={};const Zr=t=>{console.error(t)};const Jr=(t,...e)=>{console.log(`WARN: ${t}`,...e)};const Qr=(t,e)=>{if(Gr[`${t}/${e}`])return;console.log(`Deprecated as of ${t}. ${e}`);Gr[`${t}/${e}`]=true};const Yr=new Error;function Xr(t,e,{key:i}){let n=0;const s=t[i];const r={};const o={};for(let t=1;t<=e.length;t++){o[t+n]=s[t];r[t+n]=true;n+=cr(e[t-1])}t[i]=o;t[i]._emit=r;t[i]._multi=true}function to(t){if(!Array.isArray(t.begin))return;if(t.skip||t.excludeBegin||t.returnBegin){Zr("skip, excludeBegin, returnBegin not compatible with beginScope: {}");throw Yr}if(typeof t.beginScope!=="object"||t.beginScope===null){Zr("beginScope must be object");throw Yr}Xr(t,t.begin,{key:"beginScope"});t.begin=ar(t.begin,{joinWith:""})}function eo(t){if(!Array.isArray(t.end))return;if(t.skip||t.excludeEnd||t.returnEnd){Zr("skip, excludeEnd, returnEnd not compatible with endScope: {}");throw Yr}if(typeof t.endScope!=="object"||t.endScope===null){Zr("endScope must be object");throw Yr}Xr(t,t.end,{key:"endScope"});t.end=ar(t.end,{joinWith:""})}function io(t){if(t.scope&&typeof t.scope==="object"&&t.scope!==null){t.beginScope=t.scope;delete t.scope}}function no(t){io(t);if(typeof t.beginScope==="string"){t.beginScope={_wrap:t.beginScope}}if(typeof t.endScope==="string"){t.endScope={_wrap:t.endScope}}to(t);eo(t)}function so(t){function e(e,i){return new RegExp(tr(e),"m"+(t.case_insensitive?"i":"")+(t.unicodeRegex?"u":"")+(i?"g":""))}class i{constructor(){this.matchIndexes={};this.regexes=[];this.matchAt=1;this.position=0}addRule(t,e){e.position=this.position++;this.matchIndexes[this.matchAt]=e;this.regexes.push([e,t]);this.matchAt+=cr(t)+1}compile(){if(this.regexes.length===0){this.exec=()=>null}const t=this.regexes.map((t=>t[1]));this.matcherRe=e(ar(t,{joinWith:"|"}),true);this.lastIndex=0}exec(t){this.matcherRe.lastIndex=this.lastIndex;const e=this.matcherRe.exec(t);if(!e){return null}const i=e.findIndex(((t,e)=>e>0&&t!==undefined));const n=this.matchIndexes[i];e.splice(0,i);return Object.assign(e,n)}}class n{constructor(){this.rules=[];this.multiRegexes=[];this.count=0;this.lastIndex=0;this.regexIndex=0}getMatcher(t){if(this.multiRegexes[t])return this.multiRegexes[t];const e=new i;this.rules.slice(t).forEach((([t,i])=>e.addRule(t,i)));e.compile();this.multiRegexes[t]=e;return e}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(t,e){this.rules.push([t,e]);if(e.type==="begin")this.count++}exec(t){const e=this.getMatcher(this.regexIndex);e.lastIndex=this.lastIndex;let i=e.exec(t);if(this.resumingScanAtSamePosition()){if(i&&i.index===this.lastIndex);else{const e=this.getMatcher(0);e.lastIndex=this.lastIndex+1;i=e.exec(t)}}if(i){this.regexIndex+=i.position+1;if(this.regexIndex===this.count){this.considerAll()}}return i}}function s(t){const e=new n;t.contains.forEach((t=>e.addRule(t.begin,{rule:t,type:"begin"})));if(t.terminatorEnd){e.addRule(t.terminatorEnd,{type:"end"})}if(t.illegal){e.addRule(t.illegal,{type:"illegal"})}return e}function r(i,n){const o=i;if(i.isCompiled)return o;[Br,$r,no,Hr].forEach((t=>t(i,n)));t.compilerExtensions.forEach((t=>t(i,n)));i.__beforeBegin=null;[Pr,jr,zr].forEach((t=>t(i,n)));i.isCompiled=true;let c=null;if(typeof i.keywords==="object"&&i.keywords.$pattern){i.keywords=Object.assign({},i.keywords);c=i.keywords.$pattern;delete i.keywords.$pattern}c=c||/\w+/;if(i.keywords){i.keywords=Ur(i.keywords,t.case_insensitive)}o.keywordPatternRe=e(c,true);if(n){if(!i.begin)i.begin=/\B|\b/;o.beginRe=e(o.begin);if(!i.end&&!i.endsWithParent)i.end=/\B|\b/;if(i.end)o.endRe=e(o.end);o.terminatorEnd=tr(o.end)||"";if(i.endsWithParent&&n.terminatorEnd){o.terminatorEnd+=(i.end?"|":"")+n.terminatorEnd}}if(i.illegal)o.illegalRe=e(i.illegal);if(!i.contains)i.contains=[];i.contains=[].concat(...i.contains.map((function(t){return oo(t==="self"?i:t)})));i.contains.forEach((function(t){r(t,o)}));if(i.starts){r(i.starts,n)}o.matcher=s(o);return o}if(!t.compilerExtensions)t.compilerExtensions=[];if(t.contains&&t.contains.includes("self")){throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.")}t.classNameAliases=qs(t.classNameAliases||{});return r(t)}function ro(t){if(!t)return false;return t.endsWithParent||ro(t.starts)}function oo(t){if(t.variants&&!t.cachedVariants){t.cachedVariants=t.variants.map((function(e){return qs(t,{variants:null},e)}))}if(t.cachedVariants){return t.cachedVariants}if(ro(t)){return qs(t,{starts:t.starts?qs(t.starts):null})}if(Object.isFrozen(t)){return qs(t)}return t}var co="11.7.0";class ho extends Error{constructor(t,e){super(t);this.name="HTMLInjectionError";this.html=e}}const lo=Us;const ao=qs;const uo=Symbol("nomatch");const fo=7;const go=function(t){const e=Object.create(null);const i=Object.create(null);const n=[];let s=true;const r="Could not find the language '{}', did you forget to load/include a language module?";const o={disableAutodetect:true,name:"Plain text",contains:[]};let c={ignoreUnescapedHTML:false,throwUnescapedHTML:false,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:Xs};function h(t){return c.noHighlightRe.test(t)}function l(t){let e=t.className+" ";e+=t.parentNode?t.parentNode.className:"";const i=c.languageDetectRe.exec(e);if(i){const e=D(i[1]);if(!e){Jr(r.replace("{}",i[1]));Jr("Falling back to no-highlight mode for this block.",t)}return e?i[1]:"no-highlight"}return e.split(/\s+/).find((t=>h(t)||D(t)))}function a(t,e,i){let n="";let s="";if(typeof e==="object"){n=t;i=e.ignoreIllegals;s=e.language}else{Qr("10.7.0","highlight(lang, code, ...args) has been deprecated.");Qr("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277");s=t;n=e}if(i===undefined){i=true}const r={code:n,language:s};_("before:highlight",r);const o=r.result?r.result:u(r.language,r.code,i);o.code=r.code;_("after:highlight",o);return o}function u(t,i,n,o){const h=Object.create(null);function l(t,e){return t.keywords[e]}function a(){if(!M.keywords){_.addText(O);return}let t=0;M.keywordPatternRe.lastIndex=0;let e=M.keywordPatternRe.exec(O);let i="";while(e){i+=O.substring(t,e.index);const n=S.case_insensitive?e[0].toLowerCase():e[0];const s=l(M,n);if(s){const[t,r]=s;_.addText(i);i="";h[n]=(h[n]||0)+1;if(h[n]<=fo)F+=r;if(t.startsWith("_")){i+=e[0]}else{const i=S.classNameAliases[t]||t;_.addKeyword(e[0],i)}}else{i+=e[0]}t=M.keywordPatternRe.lastIndex;e=M.keywordPatternRe.exec(O)}i+=O.substring(t);_.addText(i)}function d(){if(O==="")return;let t=null;if(typeof M.subLanguage==="string"){if(!e[M.subLanguage]){_.addText(O);return}t=u(M.subLanguage,O,true,L[M.subLanguage]);L[M.subLanguage]=t._top}else{t=f(O,M.subLanguage.length?M.subLanguage:null)}if(M.relevance>0){F+=t.relevance}_.addSublanguage(t._emitter,t.language)}function g(){if(M.subLanguage!=null){d()}else{a()}O=""}function p(t,e){let i=1;const n=e.length-1;while(i<=n){if(!t._emit[i]){i++;continue}const n=S.classNameAliases[t[i]]||t[i];const s=e[i];if(n){_.addKeyword(s,n)}else{O=s;a();O=""}i++}}function m(t,e){if(t.scope&&typeof t.scope==="string"){_.openNode(S.classNameAliases[t.scope]||t.scope)}if(t.beginScope){if(t.beginScope._wrap){_.addKeyword(O,S.classNameAliases[t.beginScope._wrap]||t.beginScope._wrap);O=""}else if(t.beginScope._multi){p(t.beginScope,e);O=""}}M=Object.create(t,{parent:{value:M}});return M}function w(t,e,i){let n=hr(t.endRe,i);if(n){if(t["on:end"]){const i=new Vs(t);t["on:end"](e,i);if(i.isMatchIgnored)n=false}if(n){while(t.endsParent&&t.parent){t=t.parent}return t}}if(t.endsWithParent){return w(t.parent,e,i)}}function b(t){if(M.matcher.regexIndex===0){O+=t[0];return 1}else{I=true;return 0}}function v(t){const e=t[0];const i=t.rule;const n=new Vs(i);const s=[i.__beforeBegin,i["on:begin"]];for(const i of s){if(!i)continue;i(t,n);if(n.isMatchIgnored)return b(e)}if(i.skip){O+=e}else{if(i.excludeBegin){O+=e}g();if(!i.returnBegin&&!i.excludeBegin){O=e}}m(i,t);return i.returnBegin?0:e.length}function y(t){const e=t[0];const n=i.substring(t.index);const s=w(M,t,n);if(!s){return uo}const r=M;if(M.endScope&&M.endScope._wrap){g();_.addKeyword(e,M.endScope._wrap)}else if(M.endScope&&M.endScope._multi){g();p(M.endScope,t)}else if(r.skip){O+=e}else{if(!(r.returnEnd||r.excludeEnd)){O+=e}g();if(r.excludeEnd){O=e}}do{if(M.scope){_.closeNode()}if(!M.skip&&!M.subLanguage){F+=M.relevance}M=M.parent}while(M!==s.parent);if(s.starts){m(s.starts,t)}return r.returnEnd?0:e.length}function k(){const t=[];for(let e=M;e!==S;e=e.parent){if(e.scope){t.unshift(e.scope)}}t.forEach((t=>_.openNode(t)))}let x={};function C(e,r){const o=r&&r[0];O+=e;if(o==null){g();return 0}if(x.type==="begin"&&r.type==="end"&&x.index===r.index&&o===""){O+=i.slice(r.index,r.index+1);if(!s){const e=new Error(`0 width match regex (${t})`);e.languageName=t;e.badRule=x.rule;throw e}return 1}x=r;if(r.type==="begin"){return v(r)}else if(r.type==="illegal"&&!n){const t=new Error('Illegal lexeme "'+o+'" for mode "'+(M.scope||"")+'"');t.mode=M;throw t}else if(r.type==="end"){const t=y(r);if(t!==uo){return t}}if(r.type==="illegal"&&o===""){return 1}if(R>1e5&&R>r.index*3){const t=new Error("potential infinite loop, way more iterations than matches");throw t}O+=o;return o.length}const S=D(t);if(!S){Zr(r.replace("{}",t));throw new Error('Unknown language: "'+t+'"')}const A=so(S);let E="";let M=o||A;const L={};const _=new c.__emitter(c);k();let O="";let F=0;let T=0;let R=0;let I=false;try{M.matcher.considerAll();for(;;){R++;if(I){I=false}else{M.matcher.considerAll()}M.matcher.lastIndex=T;const t=M.matcher.exec(i);if(!t)break;const e=i.substring(T,t.index);const n=C(e,t);T=t.index+n}C(i.substring(T));_.closeAllNodes();_.finalize();E=_.toHTML();return{language:t,value:E,relevance:F,illegal:false,_emitter:_,_top:M}}catch(e){if(e.message&&e.message.includes("Illegal")){return{language:t,value:lo(i),illegal:true,relevance:0,_illegalBy:{message:e.message,index:T,context:i.slice(T-100,T+100),mode:e.mode,resultSoFar:E},_emitter:_}}else if(s){return{language:t,value:lo(i),illegal:false,relevance:0,errorRaised:e,_emitter:_,_top:M}}else{throw e}}}function d(t){const e={value:lo(t),illegal:false,relevance:0,_top:o,_emitter:new c.__emitter(c)};e._emitter.addText(t);return e}function f(t,i){i=i||c.languages||Object.keys(e);const n=d(t);const s=i.filter(D).filter(E).map((e=>u(e,t,false)));s.unshift(n);const r=s.sort(((t,e)=>{if(t.relevance!==e.relevance)return e.relevance-t.relevance;if(t.language&&e.language){if(D(t.language).supersetOf===e.language){return 1}else if(D(e.language).supersetOf===t.language){return-1}}return 0}));const[o,h]=r;const l=o;l.secondBest=h;return l}function g(t,e,n){const s=e&&i[e]||n;t.classList.add("hljs");t.classList.add(`language-${s}`)}function p(t){let e=null;const i=l(t);if(h(i))return;_("before:highlightElement",{el:t,language:i});if(t.children.length>0){if(!c.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(t)}if(c.throwUnescapedHTML){const e=new ho("One of your code blocks includes unescaped HTML.",t.innerHTML);throw e}}e=t;const n=e.textContent;const s=i?a(n,{language:i,ignoreIllegals:true}):f(n);t.innerHTML=s.value;g(t,i,s.language);t.result={language:s.language,re:s.relevance,relevance:s.relevance};if(s.secondBest){t.secondBest={language:s.secondBest.language,relevance:s.secondBest.relevance}}_("after:highlightElement",{el:t,result:s,text:n})}function m(t){c=ao(c,t)}const w=()=>{y();Qr("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function b(){y();Qr("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let v=false;function y(){if(document.readyState==="loading"){v=true;return}const t=document.querySelectorAll(c.cssSelector);t.forEach(p)}function k(){if(v)y()}if(typeof window!=="undefined"&&window.addEventListener){window.addEventListener("DOMContentLoaded",k,false)}function x(i,n){let r=null;try{r=n(t)}catch(t){Zr("Language definition for '{}' could not be registered.".replace("{}",i));if(!s){throw t}else{Zr(t)}r=o}if(!r.name)r.name=i;e[i]=r;r.rawDefinition=n.bind(null,t);if(r.aliases){A(r.aliases,{languageName:i})}}function C(t){delete e[t];for(const e of Object.keys(i)){if(i[e]===t){delete i[e]}}}function S(){return Object.keys(e)}function D(t){t=(t||"").toLowerCase();return e[t]||e[i[t]]}function A(t,{languageName:e}){if(typeof t==="string"){t=[t]}t.forEach((t=>{i[t.toLowerCase()]=e}))}function E(t){const e=D(t);return e&&!e.disableAutodetect}function M(t){if(t["before:highlightBlock"]&&!t["before:highlightElement"]){t["before:highlightElement"]=e=>{t["before:highlightBlock"](Object.assign({block:e.el},e))}}if(t["after:highlightBlock"]&&!t["after:highlightElement"]){t["after:highlightElement"]=e=>{t["after:highlightBlock"](Object.assign({block:e.el},e))}}}function L(t){M(t);n.push(t)}function _(t,e){const i=t;n.forEach((function(t){if(t[i]){t[i](e)}}))}function O(t){Qr("10.7.0","highlightBlock will be removed entirely in v12.0");Qr("10.7.0","Please use highlightElement now.");return p(t)}Object.assign(t,{highlight:a,highlightAuto:f,highlightAll:y,highlightElement:p,highlightBlock:O,configure:m,initHighlighting:w,initHighlightingOnLoad:b,registerLanguage:x,unregisterLanguage:C,listLanguages:S,getLanguage:D,registerAliases:A,autoDetection:E,inherit:ao,addPlugin:L});t.debugMode=function(){s=false};t.safeMode=function(){s=true};t.versionString=co;t.regex={concat:sr,lookahead:er,either:or,optional:nr,anyNumberOfTimes:ir};for(const t in Ir){if(typeof Ir[t]==="object"){Hs.exports(Ir[t])}}Object.assign(t,Ir);return t};var po=go({});var mo=po;po.HighlightJS=po;po.default=po;function wo(t,e,i){return i={path:e,exports:{},require:function(t,e){return bo()}},t(i,i.exports),i.exports}function bo(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}var vo=wo((function(t){(function(){var e;{e=t.exports=s}e.format=s;e.vsprintf=n;if(typeof console!=="undefined"&&typeof console.log==="function"){e.printf=i}function i(){console.log(s.apply(null,arguments))}function n(t,e){return s.apply(null,[t].concat(e))}function s(t){var e=1,i=[].slice.call(arguments),n=0,s=t.length,r="",o,c=false,h,l,a=false,u,d=function(){return i[e++]},f=function(){var e="";while(/\d/.test(t[n])){e+=t[n++];o=t[n]}return e.length>0?parseInt(e):null};for(;ns.data.relevance)s=o}return s}function Ao(t,e){mo.registerLanguage(t,e)}const Eo=function(t,e){if(typeof t==="string"){mo.registerAliases(e,{languageName:t})}else{let e;for(e in t){if(xo.call(t,e)){mo.registerAliases(t[e],{languageName:e})}}}};function Mo(t){return Boolean(mo.getLanguage(t))}function Lo(){return mo.listLanguages()}class _o{constructor(t){this.options=t;this.root={type:"root",data:{language:null,relevance:0},children:[]};this.stack=[this.root]}addText(t){if(t==="")return;const e=this.stack[this.stack.length-1];const i=e.children[e.children.length-1];if(i&&i.type==="text"){i.value+=t}else{e.children.push({type:"text",value:t})}}addKeyword(t,e){this.openNode(e);this.addText(t);this.closeNode()}addSublanguage(t,e){const i=this.stack[this.stack.length-1];const n=t.root.children;if(e){i.children.push({type:"element",tagName:"span",properties:{className:[e]},children:n})}else{i.children.push(...n)}}openNode(t){const e=t.split(".").map(((t,e)=>e?t+"_".repeat(e):this.options.classPrefix+t));const i=this.stack[this.stack.length-1];const n={type:"element",tagName:"span",properties:{className:e},children:[]};i.children.push(n);this.stack.push(n)}closeNode(){this.stack.pop()}closeAllNodes(){}finalize(){}toHTML(){return""}}const Oo={highlight:So,highlightAuto:Do,registerLanguage:Ao,registered:Mo,listLanguages:Lo,registerAlias:Eo};Oo.registerLanguage("arduino",hi);Oo.registerLanguage("bash",ai);Oo.registerLanguage("c",di);Oo.registerLanguage("cpp",gi);Oo.registerLanguage("csharp",mi);Oo.registerLanguage("css",Si);Oo.registerLanguage("diff",Ai);Oo.registerLanguage("go",Mi);Oo.registerLanguage("graphql",_i);Oo.registerLanguage("ini",Fi);Oo.registerLanguage("java",ji);Oo.registerLanguage("javascript",Zi);Oo.registerLanguage("json",Qi);Oo.registerLanguage("kotlin",sn);Oo.registerLanguage("less",fn);Oo.registerLanguage("lua",pn);Oo.registerLanguage("makefile",wn);Oo.registerLanguage("markdown",vn);Oo.registerLanguage("objectivec",kn);Oo.registerLanguage("perl",Cn);Oo.registerLanguage("php",Dn);Oo.registerLanguage("php-template",En);Oo.registerLanguage("plaintext",Ln);Oo.registerLanguage("python",On);Oo.registerLanguage("python-repl",Tn);Oo.registerLanguage("r",In);Oo.registerLanguage("ruby",Bn);Oo.registerLanguage("rust",jn);Oo.registerLanguage("scss",Kn);Oo.registerLanguage("shell",Zn);Oo.registerLanguage("sql",Qn);Oo.registerLanguage("swift",xs);Oo.registerLanguage("typescript",Ts);Oo.registerLanguage("vbnet",Is);Oo.registerLanguage("wasm",Bs);Oo.registerLanguage("xml",js);Oo.registerLanguage("yaml",zs);const Fo=Object.freeze({__proto__:null,lowlight:Oo});const To=/(?:^|\s)(!\[(.+|:?)]\((\S+)(?:(?:\s+)["'](\S+)["'])?\))$/;const Ro=d.create({name:"image",addOptions(){return{inline:false,allowBase64:false,HTMLAttributes:{}}},inline(){return this.options.inline},group(){return this.options.inline?"inline":"block"},draggable:true,addAttributes(){return{src:{default:null},alt:{default:null},title:{default:null}}},parseHTML(){return[{tag:this.options.allowBase64?"img[src]":'img[src]:not([src^="data:"])'}]},renderHTML({HTMLAttributes:t}){return["img",l(this.options.HTMLAttributes,t)]},addCommands(){return{setImage:t=>({commands:e})=>e.insertContent({type:this.name,attrs:t})}},addInputRules(){return[k({find:To,type:this.type,getAttributes:t=>{const[,,e,i,n]=t;return{src:i,alt:e,title:n}}})]}});const Io="aaa1rp3barth4b0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0faromeo7ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4vianca6w0s2x0a2z0ure5ba0by2idu3namex3narepublic11d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2ntley5rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re2s2c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y0eats7k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0cast4mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking0channel11l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dabur3d1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t0isalat7u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0at2delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d0network8tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntdoor4ier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0ardian6cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5gtv3iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0eles2s3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6logistics9properties14fh2g1h1i0a1ds2m1nder2le4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3ncaster5ia3d0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4de2k2psy3ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0cys3drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7serati6ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic3tual5v1w1x1y1z2na0b1goya4me2tura4vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rthwesternmutual14on4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9dnavy5lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3ssagens7y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0america6xi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cher3ks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0a1b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp2w2ell3ia1ksha5oes2p0ping5uji3w0time7i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ffany5ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0channel7ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lkswagen7vo3te1ing3o2yage5u0elos6wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4finity6ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2";const No="ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5تصالات6رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2";const Bo=(t,e)=>{for(const i in e){t[i]=e[i]}return t};const Po="numeric";const jo="ascii";const $o="alpha";const zo="asciinumeric";const Ho="alphanumeric";const Wo="domain";const Vo="emoji";const Uo="scheme";const qo="slashscheme";const Ko="whitespace";function Go(t,e){if(!(t in e)){e[t]=[]}return e[t]}function Zo(t,e,i){if(e[Po]){e[zo]=true;e[Ho]=true}if(e[jo]){e[zo]=true;e[$o]=true}if(e[zo]){e[Ho]=true}if(e[$o]){e[Ho]=true}if(e[Ho]){e[Wo]=true}if(e[Vo]){e[Wo]=true}for(const n in e){const e=Go(n,i);if(e.indexOf(t)<0){e.push(t)}}}function Jo(t,e){const i={};for(const n in e){if(e[n].indexOf(t)>=0){i[n]=true}}return i}function Qo(t){if(t===void 0){t=null}this.j={};this.jr=[];this.jd=null;this.t=t}Qo.groups={};Qo.prototype={accepts(){return!!this.t},go(t){const e=this;const i=e.j[t];if(i){return i}for(let i=0;it.ta(e,i,n,s);const Xo=(t,e,i,n,s)=>t.tr(e,i,n,s);const tc=(t,e,i,n,s)=>t.ts(e,i,n,s);const ec=(t,e,i,n,s)=>t.tt(e,i,n,s);const ic="WORD";const nc="UWORD";const sc="LOCALHOST";const rc="TLD";const oc="UTLD";const cc="SCHEME";const hc="SLASH_SCHEME";const lc="NUM";const ac="WS";const uc="NL";const dc="OPENBRACE";const fc="OPENBRACKET";const gc="OPENANGLEBRACKET";const pc="OPENPAREN";const mc="CLOSEBRACE";const wc="CLOSEBRACKET";const bc="CLOSEANGLEBRACKET";const vc="CLOSEPAREN";const yc="AMPERSAND";const kc="APOSTROPHE";const xc="ASTERISK";const Cc="AT";const Sc="BACKSLASH";const Dc="BACKTICK";const Ac="CARET";const Ec="COLON";const Mc="COMMA";const Lc="DOLLAR";const _c="DOT";const Oc="EQUALS";const Fc="EXCLAMATION";const Tc="HYPHEN";const Rc="PERCENT";const Ic="PIPE";const Nc="PLUS";const Bc="POUND";const Pc="QUERY";const jc="QUOTE";const $c="SEMI";const zc="SLASH";const Hc="TILDE";const Wc="UNDERSCORE";const Vc="EMOJI";const Uc="SYM";var qc=Object.freeze({__proto__:null,WORD:ic,UWORD:nc,LOCALHOST:sc,TLD:rc,UTLD:oc,SCHEME:cc,SLASH_SCHEME:hc,NUM:lc,WS:ac,NL:uc,OPENBRACE:dc,OPENBRACKET:fc,OPENANGLEBRACKET:gc,OPENPAREN:pc,CLOSEBRACE:mc,CLOSEBRACKET:wc,CLOSEANGLEBRACKET:bc,CLOSEPAREN:vc,AMPERSAND:yc,APOSTROPHE:kc,ASTERISK:xc,AT:Cc,BACKSLASH:Sc,BACKTICK:Dc,CARET:Ac,COLON:Ec,COMMA:Mc,DOLLAR:Lc,DOT:_c,EQUALS:Oc,EXCLAMATION:Fc,HYPHEN:Tc,PERCENT:Rc,PIPE:Ic,PLUS:Nc,POUND:Bc,QUERY:Pc,QUOTE:jc,SEMI:$c,SLASH:zc,TILDE:Hc,UNDERSCORE:Wc,EMOJI:Vc,SYM:Uc});const Kc=/[a-z]/;const Gc=/\p{L}/u;const Zc=/\p{Emoji}/u;const Jc=/\d/;const Qc=/\s/;const Yc="\n";const Xc="️";const th="‍";let eh=null,ih=null;function nh(t){if(t===void 0){t=[]}const e={};Qo.groups=e;const i=new Qo;if(eh==null){eh=ch(Io)}if(ih==null){ih=ch(No)}ec(i,"'",kc);ec(i,"{",dc);ec(i,"[",fc);ec(i,"<",gc);ec(i,"(",pc);ec(i,"}",mc);ec(i,"]",wc);ec(i,">",bc);ec(i,")",vc);ec(i,"&",yc);ec(i,"*",xc);ec(i,"@",Cc);ec(i,"`",Dc);ec(i,"^",Ac);ec(i,":",Ec);ec(i,",",Mc);ec(i,"$",Lc);ec(i,".",_c);ec(i,"=",Oc);ec(i,"!",Fc);ec(i,"-",Tc);ec(i,"%",Rc);ec(i,"|",Ic);ec(i,"+",Nc);ec(i,"#",Bc);ec(i,"?",Pc);ec(i,'"',jc);ec(i,"/",zc);ec(i,";",$c);ec(i,"~",Hc);ec(i,"_",Wc);ec(i,"\\",Sc);const n=Xo(i,Jc,lc,{[Po]:true});Xo(n,Jc,n);const s=Xo(i,Kc,ic,{[jo]:true});Xo(s,Kc,s);const r=Xo(i,Gc,nc,{[$o]:true});Xo(r,Kc);Xo(r,Gc,r);const o=Xo(i,Qc,ac,{[Ko]:true});ec(i,Yc,uc,{[Ko]:true});ec(o,Yc);Xo(o,Qc,o);const c=Xo(i,Zc,Vc,{[Vo]:true});Xo(c,Zc,c);ec(c,Xc,c);const h=ec(c,th);Xo(h,Zc,c);const l=[[Kc,s]];const a=[[Kc,null],[Gc,r]];for(let t=0;tt[0]>e[0]?1:-1));for(let e=0;e=0){r[Wo]=true}else if(!Kc.test(n)){r[Po]=true}else if(Jc.test(n)){r[zo]=true}else{r[jo]=true}tc(i,n,n,r)}tc(i,"localhost",sc,{ascii:true});i.jd=new Qo(Uc);return{start:i,tokens:Bo({groups:e},qc)}}function sh(t,e){const i=rh(e.replace(/[A-Z]/g,(t=>t.toLowerCase())));const n=i.length;const s=[];let r=0;let o=0;while(o=0){u+=i[o].length;d++}l+=i[o].length;r+=i[o].length;o++}r-=u;o-=d;l-=u;s.push({t:a.t,v:e.slice(r-l,r),s:r-l,e:r})}return s}function rh(t){const e=[];const i=t.length;let n=0;while(n56319||n+1===i||(r=t.charCodeAt(n+1))<56320||r>57343?t[n]:t.slice(n,n+2);e.push(o);n+=o.length}return e}function oh(t,e,i,n,s){let r;const o=e.length;for(let i=0;i=0){r++}if(r>0){e.push(i.join(""));for(let e=parseInt(t.substring(n,n+r),10);e>0;e--){i.pop()}n+=r}else{i.push(t[n]);n++}}return e}const hh={defaultProtocol:"http",events:null,format:ah,formatHref:ah,nl2br:false,tagName:"a",target:null,rel:null,validate:true,truncate:Infinity,className:null,attributes:null,ignoreTags:[],render:null};function lh(t,e){if(e===void 0){e=null}let i=Bo({},hh);if(t){i=Bo(i,t instanceof lh?t.o:t)}const n=i.ignoreTags;const s=[];for(let t=0;ti?n.substring(0,i)+"…":n},toFormattedHref(t){return t.get("formatHref",this.toHref(t.get("defaultProtocol")),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(t){if(t===void 0){t=hh.defaultProtocol}return{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(t),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(t){return{type:this.t,value:this.toFormattedString(t),isLink:this.isLink,href:this.toFormattedHref(t),start:this.startIndex(),end:this.endIndex()}},validate(t){return t.get("validate",this.toString(),this)},render(t){const e=this;const i=this.toHref(t.get("defaultProtocol"));const n=t.get("formatHref",i,this);const s=t.get("tagName",i,e);const r=this.toFormattedString(t);const o={};const c=t.get("className",i,e);const h=t.get("target",i,e);const l=t.get("rel",i,e);const a=t.getObj("attributes",i,e);const u=t.getObj("events",i,e);o.href=n;if(c){o.class=c}if(h){o.target=h}if(l){o.rel=l}if(a){Bo(o,a)}return{tagName:s,attributes:o,content:r,eventListeners:u}}};function dh(t,e){class i extends uh{constructor(e,i){super(e,i);this.t=t}}for(const t in e){i.prototype[t]=e[t]}i.t=t;return i}const fh=dh("email",{isLink:true,toHref(){return"mailto:"+this.toString()}});const gh=dh("text");const ph=dh("nl");const mh=dh("url",{isLink:true,toHref(t){if(t===void 0){t=hh.defaultProtocol}return this.hasProtocol()?this.v:`${t}://${this.v}`},hasProtocol(){const t=this.tk;return t.length>=2&&t[0].t!==sc&&t[1].t===Ec}});const wh=t=>new Qo(t);function bh(t){let{groups:e}=t;const i=e.domain.concat([yc,xc,Cc,Sc,Dc,Ac,Lc,Oc,Tc,lc,Rc,Ic,Nc,Bc,zc,Uc,Hc,Wc]);const n=[kc,bc,mc,wc,vc,Ec,Mc,_c,Fc,gc,dc,fc,pc,Pc,jc,$c];const s=[yc,kc,xc,Sc,Dc,Ac,mc,Lc,Oc,Tc,dc,Rc,Ic,Nc,Bc,Pc,zc,Uc,Hc,Wc];const r=wh();const o=ec(r,Hc);Yo(o,s,o);Yo(o,e.domain,o);const c=wh(),h=wh(),l=wh();Yo(r,e.domain,c);Yo(r,e.scheme,h);Yo(r,e.slashscheme,l);Yo(c,s,o);Yo(c,e.domain,c);const a=ec(c,Cc);ec(o,Cc,a);ec(h,Cc,a);ec(l,Cc,a);const u=ec(o,_c);Yo(u,s,o);Yo(u,e.domain,o);const d=wh();Yo(a,e.domain,d);Yo(d,e.domain,d);const f=ec(d,_c);Yo(f,e.domain,d);const g=wh(fh);Yo(f,e.tld,g);Yo(f,e.utld,g);ec(a,sc,g);const p=ec(d,Tc);Yo(p,e.domain,d);Yo(g,e.domain,d);ec(g,_c,f);ec(g,Tc,p);const m=ec(g,Ec);Yo(m,e.numeric,fh);const w=ec(c,Tc);const b=ec(c,_c);Yo(w,e.domain,c);Yo(b,s,o);Yo(b,e.domain,c);const v=wh(mh);Yo(b,e.tld,v);Yo(b,e.utld,v);Yo(v,e.domain,c);Yo(v,s,o);ec(v,_c,b);ec(v,Tc,w);ec(v,Cc,a);const y=ec(v,Ec);const k=wh(mh);Yo(y,e.numeric,k);const x=wh(mh);const C=wh();Yo(x,i,x);Yo(x,n,C);Yo(C,i,x);Yo(C,n,C);ec(v,zc,x);ec(k,zc,x);const S=ec(h,Ec);const D=ec(l,Ec);const A=ec(D,zc);const E=ec(A,zc);Yo(h,e.domain,c);ec(h,_c,b);ec(h,Tc,w);Yo(l,e.domain,c);ec(l,_c,b);ec(l,Tc,w);Yo(S,e.domain,x);ec(S,zc,x);Yo(E,e.domain,x);Yo(E,i,x);ec(E,zc,x);const M=ec(x,dc);const L=ec(x,fc);const _=ec(x,gc);const O=ec(x,pc);ec(C,dc,M);ec(C,fc,L);ec(C,gc,_);ec(C,pc,O);ec(M,mc,x);ec(L,wc,x);ec(_,bc,x);ec(O,vc,x);ec(M,mc,x);const F=wh(mh);const T=wh(mh);const R=wh(mh);const I=wh(mh);Yo(M,i,F);Yo(L,i,T);Yo(_,i,R);Yo(O,i,I);const N=wh();const B=wh();const P=wh();const j=wh();Yo(M,n);Yo(L,n);Yo(_,n);Yo(O,n);Yo(F,i,F);Yo(T,i,T);Yo(R,i,R);Yo(I,i,I);Yo(F,n,F);Yo(T,n,T);Yo(R,n,R);Yo(I,n,I);Yo(N,i,N);Yo(B,i,T);Yo(P,i,R);Yo(j,i,I);Yo(N,n,N);Yo(B,n,B);Yo(P,n,P);Yo(j,n,j);ec(T,wc,x);ec(R,bc,x);ec(I,vc,x);ec(F,mc,x);ec(B,wc,x);ec(P,bc,x);ec(j,vc,x);ec(N,vc,x);ec(r,sc,v);ec(r,uc,ph);return{start:r,tokens:qc}}function vh(t,e,i){let n=i.length;let s=0;let r=[];let o=[];while(s=0){d++}s++;a++}if(d<0){s-=a;if(s0){r.push(yh(gh,e,o));o=[]}s-=d;a-=d;const t=u.t;const n=i.slice(s-a,s);r.push(yh(t,e,n))}}if(o.length>0){r.push(yh(gh,e,o))}return r}function yh(t,e,i){const n=i[0].s;const s=i[i.length-1].e;const r=e.slice(n,s);return new t(r,i)}const kh=typeof console!=="undefined"&&console&&console.warn||(()=>{});const xh="until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.";const Ch={scanner:null,parser:null,tokenQueue:[],pluginQueue:[],customSchemes:[],initialized:false};function Sh(){Qo.groups={};Ch.scanner=null;Ch.parser=null;Ch.tokenQueue=[];Ch.pluginQueue=[];Ch.customSchemes=[];Ch.initialized=false}function Dh(t,e){if(e===void 0){e=false}if(Ch.initialized){kh(`linkifyjs: already initialized - will not register custom scheme "${t}" ${xh}`)}if(!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(t)){throw new Error('linkifyjs: incorrect scheme format.\n 1. Must only contain digits, lowercase ASCII letters or "-"\n 2. Cannot start or end with "-"\n 3. "-" cannot repeat')}Ch.customSchemes.push([t,e])}function Ah(){Ch.scanner=nh(Ch.customSchemes);for(let t=0;t{const s=e.some((t=>t.docChanged))&&!i.doc.eq(n.doc);const r=e.some((t=>t.getMeta("preventAutolink")));if(!s||r){return}const{tr:o}=n;const c=x(i.doc,[...e]);const{mapping:h}=c;const l=C(c);l.forEach((({oldRange:e,newRange:s})=>{S(e.from,e.to,i.doc).filter((e=>e.mark.type===t.type)).forEach((e=>{const s=h.map(e.from);const r=h.map(e.to);const c=S(s,r,n.doc).filter((e=>e.mark.type===t.type));if(!c.length){return}const l=c[0];const a=i.doc.textBetween(e.from,e.to,undefined," ");const u=n.doc.textBetween(l.from,l.to,undefined," ");const d=Lh(a);const f=Lh(u);if(d&&!f){o.removeMark(l.from,l.to,t.type)}}));const r=D(n.doc,s,(t=>t.isTextblock));let c;let l;if(r.length>1){c=r[0];l=n.doc.textBetween(c.pos,c.pos+c.node.nodeSize,undefined," ")}else if(r.length&&n.doc.textBetween(s.from,s.to," "," ").endsWith(" ")){c=r[0];l=n.doc.textBetween(c.pos,s.to,undefined," ")}if(c&&l){const e=l.split(" ").filter((t=>t!==""));if(e.length<=0){return false}const i=e[e.length-1];const n=c.pos+l.lastIndexOf(i);if(!i){return false}Mh(i).filter((t=>t.isLink)).filter((e=>{if(t.validate){return t.validate(e.value)}return true})).map((t=>({...t,from:n+t.start+1,to:n+t.end+1}))).forEach((e=>{o.addMark(e.from,e.to,t.type.create({href:e.href}))}))}}));if(!o.steps.length){return}return o}})}function Oh(t){return new o({key:new c("handleClickLink"),props:{handleClick:(e,i,n)=>{var s,r,o;if(n.button!==0){return false}const c=A(e.state,t.type.name);const h=(s=n.target)===null||s===void 0?void 0:s.closest("a");const l=(r=h===null||h===void 0?void 0:h.href)!==null&&r!==void 0?r:c.href;const a=(o=h===null||h===void 0?void 0:h.target)!==null&&o!==void 0?o:c.target;if(h&&l){window.open(l,a);return true}return false}}})}function Fh(t){return new o({key:new c("handlePasteLink"),props:{handlePaste:(e,i,n)=>{const{state:s}=e;const{selection:r}=s;const{empty:o}=r;if(o){return false}let c="";n.content.forEach((t=>{c+=t.textContent}));const h=Mh(c).find((t=>t.isLink&&t.value===c));if(!c||!h){return false}t.editor.commands.setMark(t.type,{href:h.href});return true}}})}const Th=h.create({name:"link",priority:1e3,keepOnSplit:false,onCreate(){this.options.protocols.forEach((t=>{if(typeof t==="string"){Dh(t);return}Dh(t.scheme,t.optionalSlashes)}))},onDestroy(){Sh()},inclusive(){return this.options.autolink},addOptions(){return{openOnClick:true,linkOnPaste:true,autolink:true,protocols:[],HTMLAttributes:{target:"_blank",rel:"noopener noreferrer nofollow",class:null},validate:undefined}},addAttributes(){return{href:{default:null},target:{default:this.options.HTMLAttributes.target},class:{default:this.options.HTMLAttributes.class}}},parseHTML(){return[{tag:'a[href]:not([href *= "javascript:" i])'}]},renderHTML({HTMLAttributes:t}){return["a",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setLink:t=>({chain:e})=>e().setMark(this.name,t).setMeta("preventAutolink",true).run(),toggleLink:t=>({chain:e})=>e().toggleMark(this.name,t,{extendEmptyMarkRange:true}).setMeta("preventAutolink",true).run(),unsetLink:()=>({chain:t})=>t().unsetMark(this.name,{extendEmptyMarkRange:true}).setMeta("preventAutolink",true).run()}},addPasteRules(){return[u({find:t=>Mh(t).filter((t=>{if(this.options.validate){return this.options.validate(t.value)}return true})).filter((t=>t.isLink)).map((t=>({text:t.value,index:t.start,data:t}))),type:this.type,getAttributes:t=>{var e;return{href:(e=t.data)===null||e===void 0?void 0:e.href}}})]},addProseMirrorPlugins(){const t=[];if(this.options.autolink){t.push(_h({type:this.type,validate:this.options.validate}))}if(this.options.openOnClick){t.push(Oh({type:this.type}))}if(this.options.linkOnPaste){t.push(Fh({editor:this.editor,type:this.type}))}return t}});const Rh=h.create({name:"superscript",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"sup"},{style:"vertical-align",getAttrs(t){if(t!=="super"){return false}return null}}]},renderHTML({HTMLAttributes:t}){return["sup",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setSuperscript:()=>({commands:t})=>t.setMark(this.name),toggleSuperscript:()=>({commands:t})=>t.toggleMark(this.name),unsetSuperscript:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-.":()=>this.editor.commands.toggleSuperscript()}}});const Ih=h.create({name:"subscript",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"sub"},{style:"vertical-align",getAttrs(t){if(t!=="sub"){return false}return null}}]},renderHTML({HTMLAttributes:t}){return["sub",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setSubscript:()=>({commands:t})=>t.setMark(this.name),toggleSubscript:()=>({commands:t})=>t.toggleMark(this.name),unsetSubscript:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-,":()=>this.editor.commands.toggleSubscript()}}});const Nh=r.create({name:"textAlign",addOptions(){return{types:[],alignments:["left","center","right","justify"],defaultAlignment:"left"}},addGlobalAttributes(){return[{types:this.options.types,attributes:{textAlign:{default:this.options.defaultAlignment,parseHTML:t=>t.style.textAlign||this.options.defaultAlignment,renderHTML:t=>{if(t.textAlign===this.options.defaultAlignment){return{}}return{style:`text-align: ${t.textAlign}`}}}}}]},addCommands(){return{setTextAlign:t=>({commands:e})=>{if(!this.options.alignments.includes(t)){return false}return this.options.types.every((i=>e.updateAttributes(i,{textAlign:t})))},unsetTextAlign:()=>({commands:t})=>this.options.types.every((e=>t.resetAttributes(e,"textAlign")))}},addKeyboardShortcuts(){return{"Mod-Shift-l":()=>this.editor.commands.setTextAlign("left"),"Mod-Shift-e":()=>this.editor.commands.setTextAlign("center"),"Mod-Shift-r":()=>this.editor.commands.setTextAlign("right"),"Mod-Shift-j":()=>this.editor.commands.setTextAlign("justify")}}});class Bh{constructor({editor:t,element:e,view:i,tippyOptions:n={},updateDelay:s=250,shouldShow:r}){this.preventHide=false;this.shouldShow=({view:t,state:e,from:i,to:n})=>{const{doc:s,selection:r}=e;const{empty:o}=r;const c=!s.textBetween(i,n).length&&E(e.selection);const h=this.element.contains(document.activeElement);const l=t.hasFocus()||h;if(!l||o||c||!this.editor.isEditable){return false}return true};this.mousedownHandler=()=>{this.preventHide=true};this.dragstartHandler=()=>{this.hide()};this.focusHandler=()=>{setTimeout((()=>this.update(this.editor.view)))};this.blurHandler=({event:t})=>{var e;if(this.preventHide){this.preventHide=false;return}if((t===null||t===void 0?void 0:t.relatedTarget)&&((e=this.element.parentNode)===null||e===void 0?void 0:e.contains(t.relatedTarget))){return}this.hide()};this.tippyBlurHandler=t=>{this.blurHandler({event:t})};this.handleDebouncedUpdate=(t,e)=>{const i=!(e===null||e===void 0?void 0:e.selection.eq(t.state.selection));const n=!(e===null||e===void 0?void 0:e.doc.eq(t.state.doc));if(!i&&!n){return}if(this.updateDebounceTimer){clearTimeout(this.updateDebounceTimer)}this.updateDebounceTimer=window.setTimeout((()=>{this.updateHandler(t,i,n,e)}),this.updateDelay)};this.updateHandler=(t,e,i,n)=>{var s,r,o;const{state:c,composing:h}=t;const{selection:l}=c;const a=!e&&!i;if(h||a){return}this.createTooltip();const{ranges:u}=l;const d=Math.min(...u.map((t=>t.$from.pos)));const f=Math.max(...u.map((t=>t.$to.pos)));const g=(s=this.shouldShow)===null||s===void 0?void 0:s.call(this,{editor:this.editor,view:t,state:c,oldState:n,from:d,to:f});if(!g){this.hide();return}(r=this.tippy)===null||r===void 0?void 0:r.setProps({getReferenceClientRect:((o=this.tippyOptions)===null||o===void 0?void 0:o.getReferenceClientRect)||(()=>{if(M(c.selection)){let e=t.nodeDOM(d);const i=e.dataset.nodeViewWrapper?e:e.querySelector("[data-node-view-wrapper]");if(i){e=i.firstChild}if(e){return e.getBoundingClientRect()}}return L(t,d,f)})});this.show()};this.editor=t;this.element=e;this.view=i;this.updateDelay=s;if(r){this.shouldShow=r}this.element.addEventListener("mousedown",this.mousedownHandler,{capture:true});this.view.dom.addEventListener("dragstart",this.dragstartHandler);this.editor.on("focus",this.focusHandler);this.editor.on("blur",this.blurHandler);this.tippyOptions=n;this.element.remove();this.element.style.visibility="visible"}createTooltip(){const{element:t}=this.editor.options;const e=!!t.parentElement;if(this.tippy||!e){return}this.tippy=_(t,{duration:0,getReferenceClientRect:null,content:this.element,interactive:true,trigger:"manual",placement:"top",hideOnClick:"toggle",...this.tippyOptions});if(this.tippy.popper.firstChild){this.tippy.popper.firstChild.addEventListener("blur",this.tippyBlurHandler)}}update(t,e){const{state:i}=t;const n=i.selection.$from.pos!==i.selection.$to.pos;if(this.updateDelay>0&&n){this.handleDebouncedUpdate(t,e);return}const s=!(e===null||e===void 0?void 0:e.selection.eq(t.state.selection));const r=!(e===null||e===void 0?void 0:e.doc.eq(t.state.doc));this.updateHandler(t,s,r,e)}show(){var t;(t=this.tippy)===null||t===void 0?void 0:t.show()}hide(){var t;(t=this.tippy)===null||t===void 0?void 0:t.hide()}destroy(){var t,e;if((t=this.tippy)===null||t===void 0?void 0:t.popper.firstChild){this.tippy.popper.firstChild.removeEventListener("blur",this.tippyBlurHandler)}(e=this.tippy)===null||e===void 0?void 0:e.destroy();this.element.removeEventListener("mousedown",this.mousedownHandler,{capture:true});this.view.dom.removeEventListener("dragstart",this.dragstartHandler);this.editor.off("focus",this.focusHandler);this.editor.off("blur",this.blurHandler)}}const Ph=t=>new o({key:typeof t.pluginKey==="string"?new c(t.pluginKey):t.pluginKey,view:e=>new Bh({view:e,...t})});const jh=r.create({name:"bubbleMenu",addOptions(){return{element:null,tippyOptions:{},pluginKey:"bubbleMenu",updateDelay:undefined,shouldShow:null}},addProseMirrorPlugins(){if(!this.options.element){return[]}return[Ph({pluginKey:this.options.pluginKey,editor:this.editor,element:this.options.element,tippyOptions:this.options.tippyOptions,updateDelay:this.options.updateDelay,shouldShow:this.options.shouldShow})]}});const $h=r.create({name:"placeholder",addOptions(){return{emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",placeholder:"Write something …",showOnlyWhenEditable:true,showOnlyCurrent:true,includeChildren:false}},addProseMirrorPlugins(){return[new o({key:new c("placeholder"),props:{decorations:({doc:t,selection:e})=>{const i=this.editor.isEditable||!this.options.showOnlyWhenEditable;const{anchor:n}=e;const s=[];if(!i){return null}const r=t.type.createAndFill();const o=(r===null||r===void 0?void 0:r.sameMarkup(t))&&r.content.findDiffStart(t.content)===null;t.descendants(((t,e)=>{const i=n>=e&&n<=e+t.nodeSize;const r=!t.isLeaf&&!t.childCount;if((i||!this.options.showOnlyCurrent)&&r){const n=[this.options.emptyNodeClass];if(o){n.push(this.options.emptyEditorClass)}const r=y.node(e,e+t.nodeSize,{class:n.join(" "),"data-placeholder":typeof this.options.placeholder==="function"?this.options.placeholder({editor:this.editor,node:t,pos:e,hasAnchor:i}):this.options.placeholder});s.push(r)}return this.options.includeChildren}));return b.create(t,s)}}})]}});const zh=h.create({name:"underline",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"u"},{style:"text-decoration",consuming:false,getAttrs:t=>t.includes("underline")?{}:false}]},renderHTML({HTMLAttributes:t}){return["u",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setUnderline:()=>({commands:t})=>t.setMark(this.name),toggleUnderline:()=>({commands:t})=>t.toggleMark(this.name),unsetUnderline:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-u":()=>this.editor.commands.toggleUnderline(),"Mod-U":()=>this.editor.commands.toggleUnderline()}}});const Hh=r.create({name:"color",addOptions(){return{types:["textStyle"]}},addGlobalAttributes(){return[{types:this.options.types,attributes:{color:{default:null,parseHTML:t=>{var e;return(e=t.style.color)===null||e===void 0?void 0:e.replace(/['"]+/g,"")},renderHTML:t=>{if(!t.color){return{}}return{style:`color: ${t.color}`}}}}}]},addCommands(){return{setColor:t=>({chain:e})=>e().setMark("textStyle",{color:t}).run(),unsetColor:()=>({chain:t})=>t().setMark("textStyle",{color:null}).removeEmptyTextStyle().run()}}});const Wh=r.create({name:"fontFamily",addOptions(){return{types:["textStyle"]}},addGlobalAttributes(){return[{types:this.options.types,attributes:{fontFamily:{default:null,parseHTML:t=>{var e;return(e=t.style.fontFamily)===null||e===void 0?void 0:e.replace(/['"]+/g,"")},renderHTML:t=>{if(!t.fontFamily){return{}}return{style:`font-family: ${t.fontFamily}`}}}}}]},addCommands(){return{setFontFamily:t=>({chain:e})=>e().setMark("textStyle",{fontFamily:t}).run(),unsetFontFamily:()=>({chain:t})=>t().setMark("textStyle",{fontFamily:null}).removeEmptyTextStyle().run()}}});const Vh=/^\s*>\s$/;const Uh=d.create({name:"blockquote",addOptions(){return{HTMLAttributes:{}}},content:"block+",group:"block",defining:true,parseHTML(){return[{tag:"blockquote"}]},renderHTML({HTMLAttributes:t}){return["blockquote",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setBlockquote:()=>({commands:t})=>t.wrapIn(this.name),toggleBlockquote:()=>({commands:t})=>t.toggleWrap(this.name),unsetBlockquote:()=>({commands:t})=>t.lift(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-b":()=>this.editor.commands.toggleBlockquote()}},addInputRules(){return[f({find:Vh,type:this.type})]}});const qh=/(?:^|\s)((?:\*\*)((?:[^*]+))(?:\*\*))$/;const Kh=/(?:^|\s)((?:\*\*)((?:[^*]+))(?:\*\*))/g;const Gh=/(?:^|\s)((?:__)((?:[^__]+))(?:__))$/;const Zh=/(?:^|\s)((?:__)((?:[^__]+))(?:__))/g;const Jh=h.create({name:"bold",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"strong"},{tag:"b",getAttrs:t=>t.style.fontWeight!=="normal"&&null},{style:"font-weight",getAttrs:t=>/^(bold(er)?|[5-9]\d{2,})$/.test(t)&&null}]},renderHTML({HTMLAttributes:t}){return["strong",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setBold:()=>({commands:t})=>t.setMark(this.name),toggleBold:()=>({commands:t})=>t.toggleMark(this.name),unsetBold:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-b":()=>this.editor.commands.toggleBold(),"Mod-B":()=>this.editor.commands.toggleBold()}},addInputRules(){return[a({find:qh,type:this.type}),a({find:Gh,type:this.type})]},addPasteRules(){return[u({find:Kh,type:this.type}),u({find:Zh,type:this.type})]}});const Qh=d.create({name:"listItem",addOptions(){return{HTMLAttributes:{}}},content:"paragraph block*",defining:true,parseHTML(){return[{tag:"li"}]},renderHTML({HTMLAttributes:t}){return["li",l(this.options.HTMLAttributes,t),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}});const Yh=h.create({name:"textStyle",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"span",getAttrs:t=>{const e=t.hasAttribute("style");if(!e){return false}return{}}}]},renderHTML({HTMLAttributes:t}){return["span",l(this.options.HTMLAttributes,t),0]},addCommands(){return{removeEmptyTextStyle:()=>({state:t,commands:e})=>{const i=p(t,this.type);const n=Object.entries(i).some((([,t])=>!!t));if(n){return true}return e.unsetMark(this.name)}}}});const Xh=/^\s*([-+*])\s$/;const tl=d.create({name:"bulletList",addOptions(){return{itemTypeName:"listItem",HTMLAttributes:{},keepMarks:false,keepAttributes:false}},group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML(){return[{tag:"ul"}]},renderHTML({HTMLAttributes:t}){return["ul",l(this.options.HTMLAttributes,t),0]},addCommands(){return{toggleBulletList:()=>({commands:t,chain:e})=>{if(this.options.keepAttributes){return e().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes(Qh.name,this.editor.getAttributes(Yh.name)).run()}return t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let t=f({find:Xh,type:this.type});if(this.options.keepMarks||this.options.keepAttributes){t=f({find:Xh,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(Yh.name),editor:this.editor})}return[t]}});const el=/(?:^|\s)((?:`)((?:[^`]+))(?:`))$/;const il=/(?:^|\s)((?:`)((?:[^`]+))(?:`))/g;const nl=h.create({name:"code",addOptions(){return{HTMLAttributes:{}}},excludes:"_",code:true,exitable:true,parseHTML(){return[{tag:"code"}]},renderHTML({HTMLAttributes:t}){return["code",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setCode:()=>({commands:t})=>t.setMark(this.name),toggleCode:()=>({commands:t})=>t.toggleMark(this.name),unsetCode:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-e":()=>this.editor.commands.toggleCode()}},addInputRules(){return[a({find:el,type:this.type})]},addPasteRules(){return[u({find:il,type:this.type})]}});const sl=d.create({name:"doc",topNode:true,content:"block+"});function rl(t={}){return new o({view(e){return new ol(e,t)}})}class ol{constructor(t,e){var i;this.editorView=t;this.cursorPos=null;this.element=null;this.timeout=-1;this.width=(i=e.width)!==null&&i!==void 0?i:1;this.color=e.color===false?undefined:e.color||"black";this.class=e.class;this.handlers=["dragover","dragend","drop","dragleave"].map((e=>{let i=t=>{this[e](t)};t.dom.addEventListener(e,i);return{name:e,handler:i}}))}destroy(){this.handlers.forEach((({name:t,handler:e})=>this.editorView.dom.removeEventListener(t,e)))}update(t,e){if(this.cursorPos!=null&&e.doc!=t.state.doc){if(this.cursorPos>t.state.doc.content.size)this.setCursor(null);else this.updateOverlay()}}setCursor(t){if(t==this.cursorPos)return;this.cursorPos=t;if(t==null){this.element.parentNode.removeChild(this.element);this.element=null}else{this.updateOverlay()}}updateOverlay(){let t=this.editorView.state.doc.resolve(this.cursorPos);let e=!t.parent.inlineContent,i;if(e){let e=t.nodeBefore,n=t.nodeAfter;if(e||n){let t=this.editorView.nodeDOM(this.cursorPos-(e?e.nodeSize:0));if(t){let s=t.getBoundingClientRect();let r=e?s.bottom:s.top;if(e&&n)r=(r+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2;i={left:s.left,right:s.right,top:r-this.width/2,bottom:r+this.width/2}}}}if(!i){let t=this.editorView.coordsAtPos(this.cursorPos);i={left:t.left-this.width/2,right:t.left+this.width/2,top:t.top,bottom:t.bottom}}let n=this.editorView.dom.offsetParent;if(!this.element){this.element=n.appendChild(document.createElement("div"));if(this.class)this.element.className=this.class;this.element.style.cssText="position: absolute; z-index: 50; pointer-events: none;";if(this.color){this.element.style.backgroundColor=this.color}}this.element.classList.toggle("prosemirror-dropcursor-block",e);this.element.classList.toggle("prosemirror-dropcursor-inline",!e);let s,r;if(!n||n==document.body&&getComputedStyle(n).position=="static"){s=-pageXOffset;r=-pageYOffset}else{let t=n.getBoundingClientRect();s=t.left-n.scrollLeft;r=t.top-n.scrollTop}this.element.style.left=i.left-s+"px";this.element.style.top=i.top-r+"px";this.element.style.width=i.right-i.left+"px";this.element.style.height=i.bottom-i.top+"px"}scheduleRemoval(t){clearTimeout(this.timeout);this.timeout=setTimeout((()=>this.setCursor(null)),t)}dragover(t){if(!this.editorView.editable)return;let e=this.editorView.posAtCoords({left:t.clientX,top:t.clientY});let i=e&&e.inside>=0&&this.editorView.state.doc.nodeAt(e.inside);let n=i&&i.type.spec.disableDropCursor;let s=typeof n=="function"?n(this.editorView,e,t):n;if(e&&!s){let t=e.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){let e=O(this.editorView.state.doc,t,this.editorView.dragging.slice);if(e!=null)t=e}this.setCursor(t);this.scheduleRemoval(5e3)}}dragend(){this.scheduleRemoval(20)}drop(){this.scheduleRemoval(20)}dragleave(t){if(t.target==this.editorView.dom||!this.editorView.dom.contains(t.relatedTarget))this.setCursor(null)}}const cl=r.create({name:"dropCursor",addOptions(){return{color:"currentColor",width:1,class:undefined}},addProseMirrorPlugins(){return[rl(this.options)]}});class hl extends F{constructor(t){super(t,t)}map(t,e){let i=t.resolve(e.map(this.head));return hl.valid(i)?new hl(i):F.near(i)}content(){return T.empty}eq(t){return t instanceof hl&&t.head==this.head}toJSON(){return{type:"gapcursor",pos:this.head}}static fromJSON(t,e){if(typeof e.pos!="number")throw new RangeError("Invalid input for GapCursor.fromJSON");return new hl(t.resolve(e.pos))}getBookmark(){return new ll(this.anchor)}static valid(t){let e=t.parent;if(e.isTextblock||!al(t)||!ul(t))return false;let i=e.type.spec.allowGapCursor;if(i!=null)return i;let n=e.contentMatchAt(t.index()).defaultType;return n&&n.isTextblock}static findGapCursorFrom(t,e,i=false){t:for(;;){if(!i&&hl.valid(t))return t;let n=t.pos,s=null;for(let i=t.depth;;i--){let r=t.node(i);if(e>0?t.indexAfter(i)0){s=r.child(e>0?t.indexAfter(i):t.index(i)-1);break}else if(i==0){return null}n+=e;let o=t.doc.resolve(n);if(hl.valid(o))return o}for(;;){let r=e>0?s.firstChild:s.lastChild;if(!r){if(s.isAtom&&!s.isText&&!R.isSelectable(s)){t=t.doc.resolve(n+s.nodeSize*e);i=false;continue t}break}s=r;n+=e;let o=t.doc.resolve(n);if(hl.valid(o))return o}return null}}}hl.prototype.visible=false;hl.findFrom=hl.findGapCursorFrom;F.jsonID("gapcursor",hl);class ll{constructor(t){this.pos=t}map(t){return new ll(t.map(this.pos))}resolve(t){let e=t.resolve(this.pos);return hl.valid(e)?new hl(e):F.near(e)}}function al(t){for(let e=t.depth;e>=0;e--){let i=t.index(e),n=t.node(e);if(i==0){if(n.type.spec.isolating)return true;continue}for(let t=n.child(i-1);;t=t.lastChild){if(t.childCount==0&&!t.inlineContent||t.isAtom||t.type.spec.isolating)return true;if(t.inlineContent)return false}}return true}function ul(t){for(let e=t.depth;e>=0;e--){let i=t.indexAfter(e),n=t.node(e);if(i==n.childCount){if(n.type.spec.isolating)return true;continue}for(let t=n.child(i);;t=t.firstChild){if(t.childCount==0&&!t.inlineContent||t.isAtom||t.type.spec.isolating)return true;if(t.inlineContent)return false}}return true}function dl(){return new o({props:{decorations:wl,createSelectionBetween(t,e,i){return e.pos==i.pos&&hl.valid(i)?new hl(i):null},handleClick:pl,handleKeyDown:fl,handleDOMEvents:{beforeinput:ml}}})}const fl=I({ArrowLeft:gl("horiz",-1),ArrowRight:gl("horiz",1),ArrowUp:gl("vert",-1),ArrowDown:gl("vert",1)});function gl(t,e){const i=t=="vert"?e>0?"down":"up":e>0?"right":"left";return function(t,n,s){let r=t.selection;let o=e>0?r.$to:r.$from,c=r.empty;if(r instanceof w){if(!s.endOfTextblock(i)||o.depth==0)return false;c=false;o=t.doc.resolve(e>0?o.after():o.before())}let h=hl.findGapCursorFrom(o,e,c);if(!h)return false;if(n)n(t.tr.setSelection(new hl(h)));return true}}function pl(t,e,i){if(!t||!t.editable)return false;let n=t.state.doc.resolve(e);if(!hl.valid(n))return false;let s=t.posAtCoords({left:i.clientX,top:i.clientY});if(s&&s.inside>-1&&R.isSelectable(t.state.doc.nodeAt(s.inside)))return false;t.dispatch(t.state.tr.setSelection(new hl(n)));return true}function ml(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof hl))return false;let{$from:i}=t.state.selection;let n=i.parent.contentMatchAt(i.index()).findWrapping(t.state.schema.nodes.text);if(!n)return false;let s=N.empty;for(let t=n.length-1;t>=0;t--)s=N.from(n[t].createAndFill(null,s));let r=t.state.tr.replace(i.pos,i.pos,new T(s,0,0));r.setSelection(w.near(r.doc.resolve(i.pos+1)));t.dispatch(r);return false}function wl(t){if(!(t.selection instanceof hl))return null;let e=document.createElement("div");e.className="ProseMirror-gapcursor";return b.create(t.doc,[y.widget(t.selection.head,e,{key:"gapcursor"})])}const bl=r.create({name:"gapCursor",addProseMirrorPlugins(){return[dl()]},extendNodeSchema(t){var e;const i={name:t.name,options:t.options,storage:t.storage};return{allowGapCursor:(e=B(P(t,"allowGapCursor",i)))!==null&&e!==void 0?e:null}}});const vl=d.create({name:"hardBreak",addOptions(){return{keepMarks:true,HTMLAttributes:{}}},inline:true,group:"inline",selectable:false,parseHTML(){return[{tag:"br"}]},renderHTML({HTMLAttributes:t}){return["br",l(this.options.HTMLAttributes,t)]},renderText(){return"\n"},addCommands(){return{setHardBreak:()=>({commands:t,chain:e,state:i,editor:n})=>t.first([()=>t.exitCode(),()=>t.command((()=>{const{selection:t,storedMarks:s}=i;if(t.$from.parent.type.spec.isolating){return false}const{keepMarks:r}=this.options;const{splittableMarks:o}=n.extensionManager;const c=s||t.$to.parentOffset&&t.$from.marks();return e().insertContent({type:this.name}).command((({tr:t,dispatch:e})=>{if(e&&c&&r){const e=c.filter((t=>o.includes(t.type.name)));t.ensureMarks(e)}return true})).run()}))])}},addKeyboardShortcuts(){return{"Mod-Enter":()=>this.editor.commands.setHardBreak(),"Shift-Enter":()=>this.editor.commands.setHardBreak()}}});const yl=d.create({name:"heading",addOptions(){return{levels:[1,2,3,4,5,6],HTMLAttributes:{}}},content:"inline*",group:"block",defining:true,addAttributes(){return{level:{default:1,rendered:false}}},parseHTML(){return this.options.levels.map((t=>({tag:`h${t}`,attrs:{level:t}})))},renderHTML({node:t,HTMLAttributes:e}){const i=this.options.levels.includes(t.attrs.level);const n=i?t.attrs.level:this.options.levels[0];return[`h${n}`,l(this.options.HTMLAttributes,e),0]},addCommands(){return{setHeading:t=>({commands:e})=>{if(!this.options.levels.includes(t.level)){return false}return e.setNode(this.name,t)},toggleHeading:t=>({commands:e})=>{if(!this.options.levels.includes(t.level)){return false}return e.toggleNode(this.name,"paragraph",t)}}},addKeyboardShortcuts(){return this.options.levels.reduce(((t,e)=>({...t,...{[`Mod-Alt-${e}`]:()=>this.editor.commands.toggleHeading({level:e})}})),{})},addInputRules(){return this.options.levels.map((t=>m({find:new RegExp(`^(#{1,${t}})\\s$`),type:this.type,getAttributes:{level:t}})))}});var kl=200;var xl=function t(){};xl.prototype.append=function t(e){if(!e.length){return this}e=xl.from(e);return!this.length&&e||e.length=i){return xl.empty}return this.sliceInner(Math.max(0,e),Math.min(this.length,i))};xl.prototype.get=function t(e){if(e<0||e>=this.length){return undefined}return this.getInner(e)};xl.prototype.forEach=function t(e,i,n){if(i===void 0)i=0;if(n===void 0)n=this.length;if(i<=n){this.forEachInner(e,i,n,0)}else{this.forEachInvertedInner(e,i,n,0)}};xl.prototype.map=function t(e,i,n){if(i===void 0)i=0;if(n===void 0)n=this.length;var s=[];this.forEach((function(t,i){return s.push(e(t,i))}),i,n);return s};xl.from=function t(e){if(e instanceof xl){return e}return e&&e.length?new Cl(e):xl.empty};var Cl=function(t){function e(e){t.call(this);this.values=e}if(t)e.__proto__=t;e.prototype=Object.create(t&&t.prototype);e.prototype.constructor=e;var i={length:{configurable:true},depth:{configurable:true}};e.prototype.flatten=function t(){return this.values};e.prototype.sliceInner=function t(i,n){if(i==0&&n==this.length){return this}return new e(this.values.slice(i,n))};e.prototype.getInner=function t(e){return this.values[e]};e.prototype.forEachInner=function t(e,i,n,s){for(var r=i;r=n;r--){if(e(this.values[r],s+r)===false){return false}}};e.prototype.leafAppend=function t(i){if(this.length+i.length<=kl){return new e(this.values.concat(i.flatten()))}};e.prototype.leafPrepend=function t(i){if(this.length+i.length<=kl){return new e(i.flatten().concat(this.values))}};i.length.get=function(){return this.values.length};i.depth.get=function(){return 0};Object.defineProperties(e.prototype,i);return e}(xl);xl.empty=new Cl([]);var Sl=function(t){function e(e,i){t.call(this);this.left=e;this.right=i;this.length=e.length+i.length;this.depth=Math.max(e.depth,i.depth)+1}if(t)e.__proto__=t;e.prototype=Object.create(t&&t.prototype);e.prototype.constructor=e;e.prototype.flatten=function t(){return this.left.flatten().concat(this.right.flatten())};e.prototype.getInner=function t(e){return er&&this.right.forEachInner(e,Math.max(i-r,0),Math.min(this.length,n)-r,s+r)===false){return false}};e.prototype.forEachInvertedInner=function t(e,i,n,s){var r=this.left.length;if(i>r&&this.right.forEachInvertedInner(e,i-r,Math.max(n,r)-r,s+r)===false){return false}if(n=n){return this.right.slice(e-n,i-n)}return this.left.slice(e,n).append(this.right.slice(0,i-n))};e.prototype.leafAppend=function t(i){var n=this.right.leafAppend(i);if(n){return new e(this.left,n)}};e.prototype.leafPrepend=function t(i){var n=this.left.leafPrepend(i);if(n){return new e(n,this.right)}};e.prototype.appendInner=function t(i){if(this.left.depth>=Math.max(this.right.depth,i.depth)+1){return new e(this.left,new e(this.right,i))}return new e(this,i)};return e}(xl);var Dl=xl;const Al=500;class El{constructor(t,e){this.items=t;this.eventCount=e}popEvent(t,e){if(this.eventCount==0)return null;let i=this.items.length;for(;;i--){let t=this.items.get(i-1);if(t.selection){--i;break}}let n,s;if(e){n=this.remapping(i,this.items.length);s=n.maps.length}let r=t.tr;let o,c;let h=[],l=[];this.items.forEach(((t,e)=>{if(!t.step){if(!n){n=this.remapping(i,e+1);s=n.maps.length}s--;l.push(t);return}if(n){l.push(new Ll(t.map));let e=t.step.map(n.slice(s)),i;if(e&&r.maybeStep(e).doc){i=r.mapping.maps[r.mapping.maps.length-1];h.push(new Ll(i,undefined,undefined,h.length+l.length))}s--;if(i)n.appendMap(i,s)}else{r.maybeStep(t.step)}if(t.selection){o=n?t.selection.map(n.slice(s)):t.selection;c=new El(this.items.slice(0,i).append(l.reverse().concat(h)),this.eventCount-1);return false}}),this.items.length,0);return{remaining:c,transform:r,selection:o}}addTransform(t,e,i,n){let s=[],r=this.eventCount;let o=this.items,c=!n&&o.length?o.get(o.length-1):null;for(let i=0;iOl){o=Ml(o,h);r-=h}return new El(o.append(s),r)}remapping(t,e){let i=new j;this.items.forEach(((e,n)=>{let s=e.mirrorOffset!=null&&n-e.mirrorOffset>=t?i.maps.length-e.mirrorOffset:undefined;i.appendMap(e.map,s)}),t,e);return i}addMaps(t){if(this.eventCount==0)return this;return new El(this.items.append(t.map((t=>new Ll(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let i=[],n=Math.max(0,this.items.length-e);let s=t.mapping;let r=t.steps.length;let o=this.eventCount;this.items.forEach((t=>{if(t.selection)o--}),n);let c=e;this.items.forEach((e=>{let n=s.getMirror(--c);if(n==null)return;r=Math.min(r,n);let h=s.maps[n];if(e.step){let r=t.steps[n].invert(t.docs[n]);let l=e.selection&&e.selection.map(s.slice(c+1,n));if(l)o++;i.push(new Ll(h,r,l))}else{i.push(new Ll(h))}}),n);let h=[];for(let t=e;tAl)a=a.compress(this.items.length-i.length);return a}emptyItemCount(){let t=0;this.items.forEach((e=>{if(!e.step)t++}));return t}compress(t=this.items.length){let e=this.remapping(0,t),i=e.maps.length;let n=[],s=0;this.items.forEach(((r,o)=>{if(o>=t){n.push(r);if(r.selection)s++}else if(r.step){let t=r.step.map(e.slice(i)),o=t&&t.getMap();i--;if(o)e.appendMap(o,i);if(t){let c=r.selection&&r.selection.map(e.slice(i));if(c)s++;let h=new Ll(o.invert(),t,c),l,a=n.length-1;if(l=n.length&&n[a].merge(h))n[a]=l;else n.push(h)}}else if(r.map){i--}}),this.items.length,0);return new El(Dl.from(n.reverse()),s)}}El.empty=new El(Dl.empty,0);function Ml(t,e){let i;t.forEach(((t,n)=>{if(t.selection&&e--==0){i=n;return false}}));return t.slice(i)}class Ll{constructor(t,e,i,n){this.map=t;this.step=e;this.selection=i;this.mirrorOffset=n}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new Ll(e.getMap().invert(),e,this.selection)}}}class _l{constructor(t,e,i,n){this.done=t;this.undone=e;this.prevRanges=i;this.prevTime=n}}const Ol=20;function Fl(t,e,i,n){let s=i.getMeta($l),r;if(s)return s.historyState;if(i.getMeta(zl))t=new _l(t.done,t.undone,null,0);let o=i.getMeta("appendedTransaction");if(i.steps.length==0){return t}else if(o&&o.getMeta($l)){if(o.getMeta($l).redo)return new _l(t.done.addTransform(i,undefined,n,jl(e)),t.undone,Rl(i.mapping.maps[i.steps.length-1]),t.prevTime);else return new _l(t.done,t.undone.addTransform(i,undefined,n,jl(e)),null,t.prevTime)}else if(i.getMeta("addToHistory")!==false&&!(o&&o.getMeta("addToHistory")===false)){let s=t.prevTime==0||!o&&(t.prevTime<(i.time||0)-n.newGroupDelay||!Tl(i,t.prevRanges));let r=o?Il(t.prevRanges,i.mapping):Rl(i.mapping.maps[i.steps.length-1]);return new _l(t.done.addTransform(i,s?e.selection.getBookmark():undefined,n,jl(e)),El.empty,r,i.time)}else if(r=i.getMeta("rebased")){return new _l(t.done.rebased(i,r),t.undone.rebased(i,r),Il(t.prevRanges,i.mapping),t.prevTime)}else{return new _l(t.done.addMaps(i.mapping.maps),t.undone.addMaps(i.mapping.maps),Il(t.prevRanges,i.mapping),t.prevTime)}}function Tl(t,e){if(!e)return false;if(!t.docChanged)return true;let i=false;t.mapping.maps[0].forEach(((t,n)=>{for(let s=0;s=e[s])i=true}));return i}function Rl(t){let e=[];t.forEach(((t,i,n,s)=>e.push(n,s)));return e}function Il(t,e){if(!t)return null;let i=[];for(let n=0;n{let i=$l.getState(t);if(!i||i.done.eventCount==0)return false;if(e)Nl(i,t,e,false);return true};const Vl=(t,e)=>{let i=$l.getState(t);if(!i||i.undone.eventCount==0)return false;if(e)Nl(i,t,e,true);return true};const Ul=r.create({name:"history",addOptions(){return{depth:100,newGroupDelay:500}},addCommands(){return{undo:()=>({state:t,dispatch:e})=>Wl(t,e),redo:()=>({state:t,dispatch:e})=>Vl(t,e)}},addProseMirrorPlugins(){return[Hl(this.options)]},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Mod-y":()=>this.editor.commands.redo(),"Shift-Mod-z":()=>this.editor.commands.redo(),"Mod-я":()=>this.editor.commands.undo(),"Shift-Mod-я":()=>this.editor.commands.redo()}}});const ql=d.create({name:"horizontalRule",addOptions(){return{HTMLAttributes:{}}},group:"block",parseHTML(){return[{tag:"hr"}]},renderHTML({HTMLAttributes:t}){return["hr",l(this.options.HTMLAttributes,t)]},addCommands(){return{setHorizontalRule:()=>({chain:t})=>t().insertContent({type:this.name}).command((({tr:t,dispatch:e})=>{var i;if(e){const{$to:e}=t.selection;const n=e.end();if(e.nodeAfter){t.setSelection(w.create(t.doc,e.pos))}else{const s=(i=e.parent.type.contentMatch.defaultType)===null||i===void 0?void 0:i.create();if(s){t.insert(n,s);t.setSelection(w.create(t.doc,n))}}t.scrollIntoView()}return true})).run()}},addInputRules(){return[k({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}});const Kl=/(?:^|\s)((?:\*)((?:[^*]+))(?:\*))$/;const Gl=/(?:^|\s)((?:\*)((?:[^*]+))(?:\*))/g;const Zl=/(?:^|\s)((?:_)((?:[^_]+))(?:_))$/;const Jl=/(?:^|\s)((?:_)((?:[^_]+))(?:_))/g;const Ql=h.create({name:"italic",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"em"},{tag:"i",getAttrs:t=>t.style.fontStyle!=="normal"&&null},{style:"font-style=italic"}]},renderHTML({HTMLAttributes:t}){return["em",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setItalic:()=>({commands:t})=>t.setMark(this.name),toggleItalic:()=>({commands:t})=>t.toggleMark(this.name),unsetItalic:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-i":()=>this.editor.commands.toggleItalic(),"Mod-I":()=>this.editor.commands.toggleItalic()}},addInputRules(){return[a({find:Kl,type:this.type}),a({find:Zl,type:this.type})]},addPasteRules(){return[u({find:Gl,type:this.type}),u({find:Jl,type:this.type})]}});const Yl=d.create({name:"listItem",addOptions(){return{HTMLAttributes:{}}},content:"paragraph block*",defining:true,parseHTML(){return[{tag:"li"}]},renderHTML({HTMLAttributes:t}){return["li",l(this.options.HTMLAttributes,t),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}});const Xl=d.create({name:"listItem",addOptions(){return{HTMLAttributes:{}}},content:"paragraph block*",defining:true,parseHTML(){return[{tag:"li"}]},renderHTML({HTMLAttributes:t}){return["li",l(this.options.HTMLAttributes,t),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}});const ta=h.create({name:"textStyle",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"span",getAttrs:t=>{const e=t.hasAttribute("style");if(!e){return false}return{}}}]},renderHTML({HTMLAttributes:t}){return["span",l(this.options.HTMLAttributes,t),0]},addCommands(){return{removeEmptyTextStyle:()=>({state:t,commands:e})=>{const i=p(t,this.type);const n=Object.entries(i).some((([,t])=>!!t));if(n){return true}return e.unsetMark(this.name)}}}});const ea=/^(\d+)\.\s$/;const ia=d.create({name:"orderedList",addOptions(){return{itemTypeName:"listItem",HTMLAttributes:{},keepMarks:false,keepAttributes:false}},group:"block list",content(){return`${this.options.itemTypeName}+`},addAttributes(){return{start:{default:1,parseHTML:t=>t.hasAttribute("start")?parseInt(t.getAttribute("start")||"",10):1}}},parseHTML(){return[{tag:"ol"}]},renderHTML({HTMLAttributes:t}){const{start:e,...i}=t;return e===1?["ol",l(this.options.HTMLAttributes,i),0]:["ol",l(this.options.HTMLAttributes,t),0]},addCommands(){return{toggleOrderedList:()=>({commands:t,chain:e})=>{if(this.options.keepAttributes){return e().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes(Xl.name,this.editor.getAttributes(ta.name)).run()}return t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let t=f({find:ea,type:this.type,getAttributes:t=>({start:+t[1]}),joinPredicate:(t,e)=>e.childCount+e.attrs.start===+t[1]});if(this.options.keepMarks||this.options.keepAttributes){t=f({find:ea,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:t=>({start:+t[1],...this.editor.getAttributes(ta.name)}),joinPredicate:(t,e)=>e.childCount+e.attrs.start===+t[1],editor:this.editor})}return[t]}});const na=d.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:t}){return["p",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setParagraph:()=>({commands:t})=>t.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}});const sa=/(?:^|\s)((?:~~)((?:[^~]+))(?:~~))$/;const ra=/(?:^|\s)((?:~~)((?:[^~]+))(?:~~))/g;const oa=h.create({name:"strike",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration",consuming:false,getAttrs:t=>t.includes("line-through")?{}:false}]},renderHTML({HTMLAttributes:t}){return["s",l(this.options.HTMLAttributes,t),0]},addCommands(){return{setStrike:()=>({commands:t})=>t.setMark(this.name),toggleStrike:()=>({commands:t})=>t.toggleMark(this.name),unsetStrike:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-x":()=>this.editor.commands.toggleStrike()}},addInputRules(){return[a({find:sa,type:this.type})]},addPasteRules(){return[u({find:ra,type:this.type})]}});const ca=d.create({name:"text",group:"inline"});const ha=r.create({name:"starterKit",addExtensions(){var t,e,i,n,s,r,o,c,h,l,a,u,d,f,g,p,m,w;const b=[];if(this.options.blockquote!==false){b.push(Uh.configure((t=this.options)===null||t===void 0?void 0:t.blockquote))}if(this.options.bold!==false){b.push(Jh.configure((e=this.options)===null||e===void 0?void 0:e.bold))}if(this.options.bulletList!==false){b.push(tl.configure((i=this.options)===null||i===void 0?void 0:i.bulletList))}if(this.options.code!==false){b.push(nl.configure((n=this.options)===null||n===void 0?void 0:n.code))}if(this.options.codeBlock!==false){b.push(Ct.configure((s=this.options)===null||s===void 0?void 0:s.codeBlock))}if(this.options.document!==false){b.push(sl.configure((r=this.options)===null||r===void 0?void 0:r.document))}if(this.options.dropcursor!==false){b.push(cl.configure((o=this.options)===null||o===void 0?void 0:o.dropcursor))}if(this.options.gapcursor!==false){b.push(bl.configure((c=this.options)===null||c===void 0?void 0:c.gapcursor))}if(this.options.hardBreak!==false){b.push(vl.configure((h=this.options)===null||h===void 0?void 0:h.hardBreak))}if(this.options.heading!==false){b.push(yl.configure((l=this.options)===null||l===void 0?void 0:l.heading))}if(this.options.history!==false){b.push(Ul.configure((a=this.options)===null||a===void 0?void 0:a.history))}if(this.options.horizontalRule!==false){b.push(ql.configure((u=this.options)===null||u===void 0?void 0:u.horizontalRule))}if(this.options.italic!==false){b.push(Ql.configure((d=this.options)===null||d===void 0?void 0:d.italic))}if(this.options.listItem!==false){b.push(Yl.configure((f=this.options)===null||f===void 0?void 0:f.listItem))}if(this.options.orderedList!==false){b.push(ia.configure((g=this.options)===null||g===void 0?void 0:g.orderedList))}if(this.options.paragraph!==false){b.push(na.configure((p=this.options)===null||p===void 0?void 0:p.paragraph))}if(this.options.strike!==false){b.push(oa.configure((m=this.options)===null||m===void 0?void 0:m.strike))}if(this.options.text!==false){b.push(ca.configure((w=this.options)===null||w===void 0?void 0:w.text))}return b}});const la=()=>new Map;const aa=t=>{const e=la();t.forEach(((t,i)=>{e.set(i,t)}));return e};const ua=(t,e,i)=>{let n=t.get(e);if(n===undefined){t.set(e,n=i())}return n};const da=(t,e)=>{const i=[];for(const[n,s]of t){i.push(e(s,n))}return i};const fa=(t,e)=>{for(const[i,n]of t){if(e(n,i)){return true}}return false};const ga=()=>new Set;const pa=t=>t[t.length-1];const ma=(t,e)=>{for(let i=0;i{for(let i=0;i{this.off(t,i);e(...n)};this.on(t,i)}off(t,e){const i=this._observers.get(t);if(i!==undefined){i.delete(e);if(i.size===0){this._observers.delete(t)}}}emit(t,e){return wa((this._observers.get(t)||la()).values()).forEach((t=>t(...e)))}destroy(){this._observers=la()}}const ka=Math.floor;const xa=Math.abs;const Ca=(t,e)=>tt>e?t:e;const Da=t=>t!==0?t<0:1/t<0;const Aa=t=>t.toLowerCase();const Ea=/^\s*/g;const Ma=t=>t.replace(Ea,"");const La=/([A-Z])/g;const _a=(t,e)=>Ma(t.replace(La,(t=>`${e}${Aa(t)}`)));const Oa=t=>{const e=unescape(encodeURIComponent(t));const i=e.length;const n=new Uint8Array(i);for(let t=0;tFa.encode(t);const Ra=Fa?Ta:Oa;let Ia=typeof TextDecoder==="undefined"?null:new TextDecoder("utf-8",{fatal:true,ignoreBOM:true});if(Ia&&Ia.decode(new Uint8Array).length===1){Ia=null}const Na=t=>t===undefined?null:t;class Ba{constructor(){this.map=new Map}setItem(t,e){this.map.set(t,e)}getItem(t){return this.map.get(t)}}let Pa=new Ba;try{if(typeof localStorage!=="undefined"){Pa=localStorage}}catch(t){}const ja=Pa;const $a=Object.assign;const za=Object.keys;const Ha=t=>za(t).length;const Wa=t=>{for(const e in t){return false}return true};const Va=(t,e)=>{for(const i in t){if(!e(t[i],i)){return false}}return true};const Ua=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);const qa=(t,e)=>t===e||Ha(t)===Ha(e)&&Va(t,((t,i)=>(t!==undefined||Ua(e,i))&&e[i]===t));const Ka=(t,e,i=0)=>{try{for(;it;const Za=(t,e)=>e.includes(t);const Ja=typeof process!=="undefined"&&process.release&&/node|io\.js/.test(process.release.name);const Qa=typeof window!=="undefined"&&typeof document!=="undefined"&&!Ja;typeof navigator!=="undefined"?/Mac/.test(navigator.platform):false;let Ya;const Xa=()=>{if(Ya===undefined){if(Ja){Ya=la();const t=process.argv;let e=null;for(let i=0;i{if(t.length!==0){const[e,i]=t.split("=");Ya.set(`--${_a(e,"-")}`,i);Ya.set(`-${_a(e,"-")}`,i)}}))}else{Ya=la()}}return Ya};const tu=t=>Xa().has(t);const eu=t=>Ja?Na(process.env[t.toUpperCase()]):Na(ja.getItem(t));const iu=t=>tu("--"+t)||eu(t)!==null;iu("production");const nu=Ja&&Za(process.env.FORCE_COLOR,["true","1","2"]);const su=!tu("no-colors")&&(!Ja||process.stdout.isTTY||nu)&&(!Ja||tu("color")||nu||eu("COLORTERM")!==null||(eu("TERM")||"").includes("color"));const ru=1;const ou=2;const cu=4;const hu=8;const lu=32;const au=64;const uu=128;const du=31;const fu=63;const gu=127;const pu=2147483647;const mu=Number.MAX_SAFE_INTEGER;const wu=Number.isInteger||(t=>typeof t==="number"&&isFinite(t)&&ka(t)===t);const bu=t=>new Error(t);const vu=()=>{throw bu("Method unimplemented")};const yu=()=>{throw bu("Unexpected case")};const ku=bu("Unexpected end of array");const xu=bu("Integer out of Range");class Cu{constructor(t){this.arr=t;this.pos=0}}const Su=t=>new Cu(t);const Du=t=>t.pos!==t.arr.length;const Au=(t,e)=>{const i=Uu(t.arr.buffer,t.pos+t.arr.byteOffset,e);t.pos+=e;return i};const Eu=t=>Au(t,Lu(t));const Mu=t=>t.arr[t.pos++];const Lu=t=>{let e=0;let i=1;const n=t.arr.length;while(t.posmu){throw xu}}throw ku};const _u=t=>{let e=t.arr[t.pos++];let i=e&fu;let n=64;const s=(e&au)>0?-1:1;if((e&uu)===0){return s*i}const r=t.arr.length;while(t.posmu){throw xu}}throw ku};const Ou=t=>{let e=Lu(t);if(e===0){return""}else{let i=String.fromCodePoint(Mu(t));if(--e<100){while(e--){i+=String.fromCodePoint(Mu(t))}}else{while(e>0){const n=e<1e4?e:1e4;const s=t.arr.subarray(t.pos,t.pos+n);t.pos+=n;i+=String.fromCodePoint.apply(null,s);e-=n}}return decodeURIComponent(escape(i))}};const Fu=t=>Ia.decode(Eu(t));const Tu=Ia?Fu:Ou;const Ru=(t,e)=>{const i=new DataView(t.arr.buffer,t.arr.byteOffset+t.pos,e);t.pos+=e;return i};const Iu=t=>Ru(t,4).getFloat32(0,false);const Nu=t=>Ru(t,8).getFloat64(0,false);const Bu=t=>Ru(t,8).getBigInt64(0,false);const Pu=[t=>undefined,t=>null,_u,Iu,Nu,Bu,t=>false,t=>true,Tu,t=>{const e=Lu(t);const i={};for(let n=0;n{const e=Lu(t);const i=[];for(let n=0;nPu[127-Mu(t)](t);class $u extends Cu{constructor(t,e){super(t);this.reader=e;this.s=null;this.count=0}read(){if(this.count===0){this.s=this.reader(this);if(Du(this)){this.count=Lu(this)+1}else{this.count=-1}}this.count--;return this.s}}class zu extends Cu{constructor(t){super(t);this.s=0;this.count=0}read(){if(this.count===0){this.s=_u(this);const t=Da(this.s);this.count=1;if(t){this.s=-this.s;this.count=Lu(this)+2}}this.count--;return this.s}}class Hu extends Cu{constructor(t){super(t);this.s=0;this.count=0;this.diff=0}read(){if(this.count===0){const t=_u(this);const e=t&1;this.diff=ka(t/2);this.count=1;if(e){this.count=Lu(this)+2}}this.s+=this.diff;this.count--;return this.s}}class Wu{constructor(t){this.decoder=new zu(t);this.str=Tu(this.decoder);this.spos=0}read(){const t=this.spos+this.decoder.read();const e=this.str.slice(this.spos,t);this.spos=t;return e}}const Vu=t=>new Uint8Array(t);const Uu=(t,e,i)=>new Uint8Array(t,e,i);const qu=t=>{const e=Vu(t.byteLength);e.set(t);return e};class Ku{constructor(){this.cpos=0;this.cbuf=new Uint8Array(100);this.bufs=[]}}const Gu=()=>new Ku;const Zu=t=>{let e=t.cpos;for(let i=0;i{const e=new Uint8Array(Zu(t));let i=0;for(let n=0;n{const i=t.cbuf.length;if(i-t.cpos{const i=t.cbuf.length;if(t.cpos===i){t.bufs.push(t.cbuf);t.cbuf=new Uint8Array(i*2);t.cpos=0}t.cbuf[t.cpos++]=e};const Xu=Yu;const td=(t,e)=>{while(e>gu){Yu(t,uu|gu&e);e=ka(e/128)}Yu(t,gu&e)};const ed=(t,e)=>{const i=Da(e);if(i){e=-e}Yu(t,(e>fu?uu:0)|(i?au:0)|fu&e);e=ka(e/64);while(e>0){Yu(t,(e>gu?uu:0)|gu&e);e=ka(e/128)}};const id=new Uint8Array(3e4);const nd=id.length/3;const sd=(t,e)=>{if(e.length{const i=unescape(encodeURIComponent(e));const n=i.length;td(t,n);for(let e=0;e{const i=t.cbuf.length;const n=t.cpos;const s=Ca(i-n,e.length);const r=e.length-s;t.cbuf.set(e.subarray(0,s),n);t.cpos+=s;if(r>0){t.bufs.push(t.cbuf);t.cbuf=new Uint8Array(Sa(i*2,r));t.cbuf.set(e.subarray(s));t.cpos=r}};const hd=(t,e)=>{td(t,e.byteLength);cd(t,e)};const ld=(t,e)=>{Qu(t,e);const i=new DataView(t.cbuf.buffer,t.cpos,e);t.cpos+=e;return i};const ad=(t,e)=>ld(t,4).setFloat32(0,e,false);const ud=(t,e)=>ld(t,8).setFloat64(0,e,false);const dd=(t,e)=>ld(t,8).setBigInt64(0,e,false);const fd=new DataView(new ArrayBuffer(4));const gd=t=>{fd.setFloat32(0,t);return fd.getFloat32(0)===t};const pd=(t,e)=>{switch(typeof e){case"string":Yu(t,119);od(t,e);break;case"number":if(wu(e)&&xa(e)<=pu){Yu(t,125);ed(t,e)}else if(gd(e)){Yu(t,124);ad(t,e)}else{Yu(t,123);ud(t,e)}break;case"bigint":Yu(t,122);dd(t,e);break;case"object":if(e===null){Yu(t,126)}else if(va(e)){Yu(t,117);td(t,e.length);for(let i=0;i0){td(this,this.count-1)}this.count=1;this.w(this,t);this.s=t}}}const wd=t=>{if(t.count>0){ed(t.encoder,t.count===1?t.s:-t.s);if(t.count>1){td(t.encoder,t.count-2)}}};class bd{constructor(){this.encoder=new Ku;this.s=0;this.count=0}write(t){if(this.s===t){this.count++}else{wd(this);this.count=1;this.s=t}}toUint8Array(){wd(this);return Ju(this.encoder)}}const vd=t=>{if(t.count>0){const e=t.diff*2+(t.count===1?0:1);ed(t.encoder,e);if(t.count>1){td(t.encoder,t.count-2)}}};class yd{constructor(){this.encoder=new Ku;this.s=0;this.count=0;this.diff=0}write(t){if(this.diff===t-this.s){this.s=t;this.count++}else{vd(this);this.count=1;this.diff=t-this.s;this.s=t}}toUint8Array(){vd(this);return Ju(this.encoder)}}class kd{constructor(){this.sarr=[];this.s="";this.lensE=new bd}write(t){this.s+=t;if(this.s.length>19){this.sarr.push(this.s);this.s=""}this.lensE.write(t.length)}toUint8Array(){const t=new Ku;this.sarr.push(this.s);this.s="";od(t,this.sarr.join(""));cd(t,this.lensE.toUint8Array());return Ju(t)}}const xd=crypto.getRandomValues.bind(crypto);const Cd=Math.random;const Sd=()=>xd(new Uint32Array(1))[0];const Dd=t=>t[ka(Cd()*t.length)];const Ad=[1e7]+-1e3+-4e3+-8e3+-1e11;const Ed=()=>Ad.replace(/[018]/g,(t=>(t^Sd()&15>>t/4).toString(16)));const Md=Date.now;const Ld=t=>new Promise(t);class _d{constructor(t,e){this.left=t;this.right=e}}const Od=(t,e)=>new _d(t,e);const Fd=typeof document!=="undefined"?document:{};typeof DOMParser!=="undefined"?new DOMParser:null;const Td=t=>da(t,((t,e)=>`${e}:${t};`)).join("");const Rd=t=>class e{constructor(t){this._=t}destroy(){t(this._)}};const Id=Rd(clearTimeout);const Nd=(t,e)=>new Id(setTimeout(e,t));const Bd=Symbol;const Pd=Bd();const jd=Bd();const $d=Bd();const zd=Bd();const Hd=Bd();const Wd=Bd();const Vd=Bd();const Ud=Bd();const qd=Bd();const Kd=t=>{const e=[];let i=0;for(;i{const e=[];const i=[];const n=la();let s=[];let r=0;for(;r0||t.length>0){e.push("%c"+s);i.push(t)}else{e.push(s)}}else{break}}}if(r>0){s=i;s.unshift(e.join(""))}for(;r{console.log(...Jd(t));Yd.forEach((e=>e.print(t)))};const Yd=ga();const Xd=t=>({[Symbol.iterator](){return this},next:t});const tf=(t,e)=>Xd((()=>{let i;do{i=t.next()}while(!i.done&&!e(i.value));return i}));const ef=(t,e)=>Xd((()=>{const{done:i,value:n}=t.next();return{done:i,value:i?undefined:e(n)}}));class nf{constructor(t,e){this.clock=t;this.len=e}}class sf{constructor(){this.clients=new Map}}const rf=(t,e,i)=>e.clients.forEach(((e,n)=>{const s=t.doc.store.clients.get(n);for(let n=0;n{let i=0;let n=t.length-1;while(i<=n){const s=ka((i+n)/2);const r=t[s];const o=r.clock;if(o<=e){if(e{const i=t.clients.get(e.client);return i!==undefined&&of(i,e.clock)!==null};const hf=t=>{t.clients.forEach((t=>{t.sort(((t,e)=>t.clock-e.clock));let e,i;for(e=1,i=1;e=s.clock){n.len=Sa(n.len,s.clock+s.len-n.clock)}else{if(i{const e=new sf;for(let i=0;i{if(!e.clients.has(s)){const r=n.slice();for(let e=i+1;e{ua(t.clients,e,(()=>[])).push(new nf(i,n))};const uf=()=>new sf;const df=t=>{const e=uf();t.clients.forEach(((t,i)=>{const n=[];for(let e=0;e0){e.clients.set(i,n)}}));return e};const ff=(t,e)=>{td(t.restEncoder,e.clients.size);wa(e.clients.entries()).sort(((t,e)=>e[0]-t[0])).forEach((([e,i])=>{t.resetDsCurVal();td(t.restEncoder,e);const n=i.length;td(t.restEncoder,n);for(let e=0;e{const e=new sf;const i=Lu(t.restDecoder);for(let n=0;n0){const s=ua(e.clients,i,(()=>[]));for(let e=0;e{const n=new sf;const s=Lu(t.restDecoder);for(let r=0;r0){const t=new Df;td(t.restEncoder,0);ff(t,n);return t.toUint8Array()}return null};const mf=Sd;class wf extends ya{constructor({guid:t=Ed(),collectionid:e=null,gc:i=true,gcFilter:n=(()=>true),meta:s=null,autoLoad:r=false,shouldLoad:o=true}={}){super();this.gc=i;this.gcFilter=n;this.clientID=mf();this.guid=t;this.collectionid=e;this.share=new Map;this.store=new dg;this._transaction=null;this._transactionCleanups=[];this.subdocs=new Set;this._item=null;this.shouldLoad=o;this.autoLoad=r;this.meta=s;this.isLoaded=false;this.isSynced=false;this.whenLoaded=Ld((t=>{this.on("load",(()=>{this.isLoaded=true;t(this)}))}));const c=()=>Ld((t=>{const e=i=>{if(i===undefined||i===true){this.off("sync",e);t()}};this.on("sync",e)}));this.on("sync",(t=>{if(t===false&&this.isSynced){this.whenSynced=c()}this.isSynced=t===undefined||t===true;if(!this.isLoaded){this.emit("load",[])}}));this.whenSynced=c()}load(){const t=this._item;if(t!==null&&!this.shouldLoad){Og(t.parent.doc,(t=>{t.subdocsLoaded.add(this)}),null,true)}this.shouldLoad=true}getSubdocs(){return this.subdocs}getSubdocGuids(){return new Set(wa(this.subdocs).map((t=>t.guid)))}transact(t,e=null){return Og(this,t,e)}get(t,e=rp){const i=ua(this.share,t,(()=>{const t=new e;t._integrate(this,null);return t}));const n=i.constructor;if(e!==rp&&n!==e){if(n===rp){const n=new e;n._map=i._map;i._map.forEach((t=>{for(;t!==null;t=t.left){t.parent=n}}));n._start=i._start;for(let t=n._start;t!==null;t=t.right){t.parent=n}n._length=i._length;this.share.set(t,n);n._integrate(this,null);return n}else{throw new Error(`Type with the name ${t} has already been defined with a different constructor`)}}return i}getArray(t=""){return this.get(t,Dp)}getText(t=""){return this.get(t,Up)}getMap(t=""){return this.get(t,Mp)}getXmlFragment(t=""){return this.get(t,Gp)}toJSON(){const t={};this.share.forEach(((e,i)=>{t[i]=e.toJSON()}));return t}destroy(){wa(this.subdocs).forEach((t=>t.destroy()));const t=this._item;if(t!==null){this._item=null;const e=t.content;e.doc=new wf({guid:this.guid,...e.opts,shouldLoad:false});e.doc._item=t;Og(t.parent.doc,(i=>{const n=e.doc;if(!t.deleted){i.subdocsAdded.add(n)}i.subdocsRemoved.add(this)}),null,true)}this.emit("destroyed",[true]);this.emit("destroy",[this]);super.destroy()}on(t,e){super.on(t,e)}off(t,e){super.off(t,e)}}class bf{constructor(t){this.restDecoder=t}resetDsCurVal(){}readDsClock(){return Lu(this.restDecoder)}readDsLen(){return Lu(this.restDecoder)}}class vf extends bf{readLeftID(){return Jf(Lu(this.restDecoder),Lu(this.restDecoder))}readRightID(){return Jf(Lu(this.restDecoder),Lu(this.restDecoder))}readClient(){return Lu(this.restDecoder)}readInfo(){return Mu(this.restDecoder)}readString(){return Tu(this.restDecoder)}readParentInfo(){return Lu(this.restDecoder)===1}readTypeRef(){return Lu(this.restDecoder)}readLen(){return Lu(this.restDecoder)}readAny(){return ju(this.restDecoder)}readBuf(){return qu(Eu(this.restDecoder))}readJSON(){return JSON.parse(Tu(this.restDecoder))}readKey(){return Tu(this.restDecoder)}}class yf{constructor(t){this.dsCurrVal=0;this.restDecoder=t}resetDsCurVal(){this.dsCurrVal=0}readDsClock(){this.dsCurrVal+=Lu(this.restDecoder);return this.dsCurrVal}readDsLen(){const t=Lu(this.restDecoder)+1;this.dsCurrVal+=t;return t}}class kf extends yf{constructor(t){super(t);this.keys=[];Lu(t);this.keyClockDecoder=new Hu(Eu(t));this.clientDecoder=new zu(Eu(t));this.leftClockDecoder=new Hu(Eu(t));this.rightClockDecoder=new Hu(Eu(t));this.infoDecoder=new $u(Eu(t),Mu);this.stringDecoder=new Wu(Eu(t));this.parentInfoDecoder=new $u(Eu(t),Mu);this.typeRefDecoder=new zu(Eu(t));this.lenDecoder=new zu(Eu(t))}readLeftID(){return new Gf(this.clientDecoder.read(),this.leftClockDecoder.read())}readRightID(){return new Gf(this.clientDecoder.read(),this.rightClockDecoder.read())}readClient(){return this.clientDecoder.read()}readInfo(){return this.infoDecoder.read()}readString(){return this.stringDecoder.read()}readParentInfo(){return this.parentInfoDecoder.read()===1}readTypeRef(){return this.typeRefDecoder.read()}readLen(){return this.lenDecoder.read()}readAny(){return ju(this.restDecoder)}readBuf(){return Eu(this.restDecoder)}readJSON(){return ju(this.restDecoder)}readKey(){const t=this.keyClockDecoder.read();if(t{n=Sa(n,e[0].id.clock);const s=mg(e,n);td(t.restEncoder,e.length-s);t.writeClient(i);td(t.restEncoder,n);const r=e[s];r.write(t,n-r.id.clock);for(let i=s+1;i{const n=new Map;i.forEach(((t,i)=>{if(gg(e,i)>t){n.set(i,t)}}));fg(e).forEach(((t,e)=>{if(!i.has(e)){n.set(e,0)}}));td(t.restEncoder,n.size);wa(n.entries()).sort(((t,e)=>e[0]-t[0])).forEach((([i,n])=>{Af(t,e.clients.get(i),i,n)}))};const Mf=(t,e)=>{const i=la();const n=Lu(t.restDecoder);for(let s=0;s{const n=[];let s=wa(i.keys()).sort(((t,e)=>t-e));if(s.length===0){return null}const r=()=>{if(s.length===0){return null}let t=i.get(s[s.length-1]);while(t.refs.length===t.i){s.pop();if(s.length>0){t=i.get(s[s.length-1])}else{return null}}return t};let o=r();if(o===null&&n.length===0){return null}const c=new dg;const h=new Map;const l=(t,e)=>{const i=h.get(t);if(i==null||i>e){h.set(t,e)}};let a=o.refs[o.i++];const u=new Map;const d=()=>{for(const t of n){const e=t.id.client;const n=i.get(e);if(n){n.i--;c.clients.set(e,n.refs.slice(n.i));i.delete(e);n.i=0;n.refs=[]}else{c.clients.set(e,[t])}s=s.filter((t=>t!==e))}n.length=0};while(true){if(a.constructor!==Hm){const s=ua(u,a.id.client,(()=>gg(e,a.id.client)));const r=s-a.id.clock;if(r<0){n.push(a);l(a.id.client,a.id.clock-1);d()}else{const s=a.getMissing(t,e);if(s!==null){n.push(a);const t=i.get(s)||{refs:[],i:0};if(t.refs.length===t.i){l(s,gg(e,s));d()}else{a=t.refs[t.i++];continue}}else if(r===0||r0){a=n.pop()}else if(o!==null&&o.i0){const t=new Df;Ef(t,c,new Map);td(t.restEncoder,0);return{missing:h,update:t.toUint8Array()}}return null};const _f=(t,e)=>Ef(t,e.doc.store,e.beforeState);const Of=(t,e,i,n=new kf(t))=>Og(e,(t=>{t.local=false;let e=false;const i=t.doc;const s=i.store;const r=Mf(n,i);const o=Lf(t,s,r);const c=s.pendingStructs;if(c){for(const[t,i]of c.missing){if(ie){c.missing.set(t,e)}}c.update=zg([c.update,o.update])}}else{s.pendingStructs=o}const h=pf(n,t,s);if(s.pendingDs){const e=new kf(Su(s.pendingDs));Lu(e.restDecoder);const i=pf(e,t,s);if(h&&i){s.pendingDs=zg([h,i])}else{s.pendingDs=h||i}}else{s.pendingDs=h}if(e){const e=s.pendingStructs.update;s.pendingStructs=null;Ff(t.doc,e)}}),i,false);const Ff=(t,e,i,n=kf)=>{const s=Su(e);Of(s,t,i,new n(s))};const Tf=(t,e,i)=>Ff(t,e,i,vf);const Rf=(t,e,i=new Map)=>{Ef(t,e.store,i);ff(t,df(e.store))};const If=(t,e=new Uint8Array([0]),i=new Df)=>{const n=Pf(e);Rf(i,t,n);const s=[i.toUint8Array()];if(t.store.pendingDs){s.push(t.store.pendingDs)}if(t.store.pendingStructs){s.push(Hg(t.store.pendingStructs.update,e))}if(s.length>1){if(i.constructor===Cf){return jg(s.map(((t,e)=>e===0?t:Kg(t))))}else if(i.constructor===Df){return zg(s)}}return s[0]};const Nf=(t,e)=>If(t,e,new Cf);const Bf=t=>{const e=new Map;const i=Lu(t.restDecoder);for(let n=0;nBf(new bf(Su(t)));const jf=(t,e)=>{td(t.restEncoder,e.size);wa(e.entries()).sort(((t,e)=>e[0]-t[0])).forEach((([e,i])=>{td(t.restEncoder,e);td(t.restEncoder,i)}));return t};const $f=(t,e)=>jf(t,fg(e.store));const zf=(t,e=new Sf)=>{if(t instanceof Map){jf(e,t)}else{$f(e,t)}return e.toUint8Array()};const Hf=t=>zf(t,new xf);class Wf{constructor(){this.l=[]}}const Vf=()=>new Wf;const Uf=(t,e)=>t.l.push(e);const qf=(t,e)=>{const i=t.l;const n=i.length;t.l=i.filter((t=>e!==t));if(n===t.l.length){console.error("[yjs] Tried to remove event handler that doesn't exist.")}};const Kf=(t,e,i)=>Ka(t.l,[e,i]);class Gf{constructor(t,e){this.client=t;this.clock=e}}const Zf=(t,e)=>t===e||t!==null&&e!==null&&t.client===e.client&&t.clock===e.clock;const Jf=(t,e)=>new Gf(t,e);const Qf=t=>{for(const[e,i]of t.doc.share.entries()){if(i===t){return e}}throw yu()};const Yf=(t,e)=>{while(e!==null){if(e.parent===t){return true}e=e.parent._item}return false};class Xf{constructor(t,e,i,n=0){this.type=t;this.tname=e;this.item=i;this.assoc=n}}const tg=t=>new Xf(t.type==null?null:Jf(t.type.client,t.type.clock),t.tname||null,t.item==null?null:Jf(t.item.client,t.item.clock),t.assoc==null?0:t.assoc);class eg{constructor(t,e,i=0){this.type=t;this.index=e;this.assoc=i}}const ig=(t,e,i=0)=>new eg(t,e,i);const ng=(t,e,i)=>{let n=null;let s=null;if(t._item===null){s=Qf(t)}else{n=Jf(t._item.id.client,t._item.id.clock)}return new Xf(n,s,e,i)};const sg=(t,e,i=0)=>{let n=t._start;if(i<0){if(e===0){return ng(t,null,i)}e--}while(n!==null){if(!n.deleted&&n.countable){if(n.length>e){return ng(t,Jf(n.id.client,n.id.clock+e),i)}e-=n.length}if(n.right===null&&i<0){return ng(t,n.lastId,i)}n=n.right}return ng(t,null,i)};const rg=(t,e)=>{const i=e.store;const n=t.item;const s=t.type;const r=t.tname;const o=t.assoc;let c=null;let h=0;if(n!==null){if(gg(i,n.client)<=n.clock){return null}const t=Tm(i,n);const e=t.item;if(!(e instanceof Pm)){return null}c=e.parent;if(c._item===null||!c._item.deleted){h=e.deleted||!e.countable?0:t.diff+(o>=0?0:1);let i=e.left;while(i!==null){if(!i.deleted&&i.countable){h+=i.length}i=i.left}}}else{if(r!==null){c=e.get(r)}else if(s!==null){if(gg(i,s.client)<=s.clock){return null}const{item:t}=Tm(i,s);if(t instanceof Pm&&t.content instanceof Om){c=t.content.type}else{return null}}else{throw yu()}if(o>=0){h=c._length}else{h=0}}return ig(c,h,t.assoc)};const og=(t,e)=>t===e||t!==null&&e!==null&&t.tname===e.tname&&Zf(t.item,e.item)&&Zf(t.type,e.type)&&t.assoc===e.assoc;class cg{constructor(t,e){this.ds=t;this.sv=e}}const hg=(t,e)=>new cg(t,e);const lg=t=>hg(df(t.store),fg(t.store));const ag=(t,e)=>e===undefined?!t.deleted:e.sv.has(t.id.client)&&(e.sv.get(t.id.client)||0)>t.id.clock&&!cf(e.ds,t.id);const ug=(t,e)=>{const i=ua(t.meta,ug,ga);const n=t.doc.store;if(!i.has(e)){e.sv.forEach(((e,i)=>{if(e{}));i.add(e)}};class dg{constructor(){this.clients=new Map;this.pendingStructs=null;this.pendingDs=null}}const fg=t=>{const e=new Map;t.clients.forEach(((t,i)=>{const n=t[t.length-1];e.set(i,n.id.clock+n.length)}));return e};const gg=(t,e)=>{const i=t.clients.get(e);if(i===undefined){return 0}const n=i[i.length-1];return n.id.clock+n.length};const pg=(t,e)=>{let i=t.clients.get(e.id.client);if(i===undefined){i=[];t.clients.set(e.id.client,i)}else{const t=i[i.length-1];if(t.id.clock+t.length!==e.id.clock){throw yu()}}i.push(e)};const mg=(t,e)=>{let i=0;let n=t.length-1;let s=t[n];let r=s.id.clock;if(r===e){return n}let o=ka(e/(r+s.length-1)*n);while(i<=n){s=t[o];r=s.id.clock;if(r<=e){if(e{const i=t.clients.get(e.client);return i[mg(i,e.clock)]};const bg=wg;const vg=(t,e,i)=>{const n=mg(e,i);const s=e[n];if(s.id.clock{const i=t.doc.store.clients.get(e.client);return i[vg(t,i,e.clock)]};const kg=(t,e,i)=>{const n=e.clients.get(i.client);const s=mg(n,i.clock);const r=n[s];if(i.clock!==r.id.clock+r.length-1&&r.constructor!==rm){n.splice(s+1,0,Im(t,r,i.clock-r.id.clock+1))}return r};const xg=(t,e,i)=>{const n=t.clients.get(e.id.client);n[mg(n,e.id.clock)]=i};const Cg=(t,e,i,n,s)=>{if(n===0){return}const r=i+n;let o=vg(t,e,i);let c;do{c=e[o++];if(r{if(e.deleteSet.clients.size===0&&!fa(e.afterState,((t,i)=>e.beforeState.get(i)!==t))){return false}hf(e.deleteSet);_f(t,e);ff(t,e.deleteSet);return true};const Ag=(t,e,i)=>{const n=e._item;if(n===null||n.id.clock<(t.beforeState.get(n.id.client)||0)&&!n.deleted){ua(t.changed,e,ga).add(i)}};const Eg=(t,e)=>{const i=t[e-1];const n=t[e];if(i.deleted===n.deleted&&i.constructor===n.constructor){if(i.mergeWith(n)){t.splice(e,1);if(n instanceof Pm&&n.parentSub!==null&&n.parent._map.get(n.parentSub)===n){n.parent._map.set(n.parentSub,i)}}}};const Mg=(t,e,i)=>{for(const[n,s]of t.clients.entries()){const t=e.clients.get(n);for(let n=s.length-1;n>=0;n--){const r=s[n];const o=r.clock+r.len;for(let n=mg(t,r.clock),s=t[n];n{t.clients.forEach(((t,i)=>{const n=e.clients.get(i);for(let e=t.length-1;e>=0;e--){const i=t[e];const s=Ca(n.length-1,1+mg(n,i.clock+i.len-1));for(let t=s,e=n[t];t>0&&e.id.clock>=i.clock;e=n[--t]){Eg(n,t)}}}))};const _g=(t,e)=>{if(et.push((()=>{if(n._item===null||!n._item.deleted){n._callObserver(i,e)}}))));t.push((()=>{i.changedParentTypes.forEach(((e,n)=>t.push((()=>{if(n._item===null||!n._item.deleted){e=e.filter((t=>t.target._item===null||!t.target._item.deleted));e.forEach((t=>{t.currentTarget=n}));e.sort(((t,e)=>t.path.length-e.path.length));Kf(n._dEH,e,i)}}))));t.push((()=>n.emit("afterTransaction",[i,n])))}));Ka(t,[])}finally{if(n.gc){Mg(r,s,n.gcFilter)}Lg(r,s);i.afterState.forEach(((t,e)=>{const n=i.beforeState.get(e)||0;if(n!==t){const t=s.clients.get(e);const i=Sa(mg(t,n),1);for(let e=t.length-1;e>=i;e--){Eg(t,e)}}}));for(let t=0;t0){Eg(n,r)}}if(!i.local&&i.afterState.get(n.clientID)!==i.beforeState.get(n.clientID)){Qd(Ud,Pd,"[yjs] ",jd,Wd,"Changed the client-id because another client seems to be using it.");n.clientID=mf()}n.emit("afterTransactionCleanup",[i,n]);if(n._observers.has("update")){const t=new Cf;const e=Dg(t,i);if(e){n.emit("update",[t.toUint8Array(),i.origin,n,i])}}if(n._observers.has("updateV2")){const t=new Df;const e=Dg(t,i);if(e){n.emit("updateV2",[t.toUint8Array(),i.origin,n,i])}}const{subdocsAdded:c,subdocsLoaded:h,subdocsRemoved:l}=i;if(c.size>0||l.size>0||h.size>0){c.forEach((t=>{t.clientID=n.clientID;if(t.collectionid==null){t.collectionid=n.collectionid}n.subdocs.add(t)}));l.forEach((t=>n.subdocs.delete(t)));n.emit("subdocs",[{loaded:h,added:c,removed:l},n,i]);l.forEach((t=>t.destroy()))}if(t.length<=e+1){n._transactionCleanups=[];n.emit("afterAllTransactions",[n,t])}else{_g(t,e+1)}}}};const Og=(t,e,i=null,n=true)=>{const s=t._transactionCleanups;let r=false;let o=null;if(t._transaction===null){r=true;t._transaction=new Sg(t,i,n);s.push(t._transaction);if(s.length===1){t.emit("beforeAllTransactions",[t])}t.emit("beforeTransaction",[t._transaction,t])}try{o=e(t._transaction)}finally{if(r){const e=t._transaction===s[0];t._transaction=null;if(e){_g(s,0)}}}return o};class Fg{constructor(t,e){this.insertions=e;this.deletions=t;this.meta=new Map}}const Tg=(t,e,i)=>{rf(t,i.deletions,(t=>{if(t instanceof Pm&&e.scope.some((e=>Yf(e,t)))){Rm(t,false)}}))};const Rg=(t,e,i)=>{let n=null;let s=null;const r=t.doc;const o=t.scope;Og(r,(i=>{while(e.length>0&&n===null){const s=r.store;const c=e.pop();const h=new Set;const l=[];let a=false;rf(i,c.insertions,(t=>{if(t instanceof Pm){if(t.redone!==null){let{item:e,diff:n}=Tm(s,t.id);if(n>0){e=yg(i,Jf(e.id.client,e.id.clock+n))}t=e}if(!t.deleted&&o.some((e=>Yf(e,t)))){l.push(t)}}}));rf(i,c.deletions,(t=>{if(t instanceof Pm&&o.some((e=>Yf(e,t)))&&!cf(c.insertions,t.id)){h.add(t)}}));h.forEach((e=>{a=Bm(i,e,h,c.insertions,t.ignoreRemoteMapChanges,t)!==null||a}));for(let e=l.length-1;e>=0;e--){const n=l[e];if(t.deleteFilter(n)){n.delete(i);a=true}}n=a?c:null}i.changed.forEach(((t,e)=>{if(t.has(null)&&e._searchMarker){e._searchMarker.length=0}}));s=i}),t);if(n!=null){const e=s.changedParentTypes;t.emit("stack-item-popped",[{stackItem:n,type:i,changedParentTypes:e},t])}return n};class Ig extends ya{constructor(t,{captureTimeout:e=500,captureTransaction:i=(t=>true),deleteFilter:n=(()=>true),trackedOrigins:s=new Set([null]),ignoreRemoteMapChanges:r=false,doc:o=(va(t)?t[0].doc:t.doc)}={}){super();this.scope=[];this.addToScope(t);this.deleteFilter=n;s.add(this);this.trackedOrigins=s;this.captureTransaction=i;this.undoStack=[];this.redoStack=[];this.undoing=false;this.redoing=false;this.doc=o;this.lastChange=0;this.ignoreRemoteMapChanges=r;this.captureTimeout=e;this.afterTransactionHandler=t=>{if(!this.captureTransaction(t)||!this.scope.some((e=>t.changedParentTypes.has(e)))||!this.trackedOrigins.has(t.origin)&&(!t.origin||!this.trackedOrigins.has(t.origin.constructor))){return}const e=this.undoing;const i=this.redoing;const n=e?this.redoStack:this.undoStack;if(e){this.stopCapturing()}else if(!i){this.clear(false,true)}const s=new sf;t.afterState.forEach(((e,i)=>{const n=t.beforeState.get(i)||0;const r=e-n;if(r>0){af(s,i,n,r)}}));const r=Md();let o=false;if(this.lastChange>0&&r-this.lastChange0&&!e&&!i){const e=n[n.length-1];e.deletions=lf([e.deletions,t.deleteSet]);e.insertions=lf([e.insertions,s])}else{n.push(new Fg(t.deleteSet,s));o=true}if(!e&&!i){this.lastChange=r}rf(t,t.deleteSet,(t=>{if(t instanceof Pm&&this.scope.some((e=>Yf(e,t)))){Rm(t,true)}}));const c=[{stackItem:n[n.length-1],origin:t.origin,type:e?"redo":"undo",changedParentTypes:t.changedParentTypes},this];if(o){this.emit("stack-item-added",c)}else{this.emit("stack-item-updated",c)}};this.doc.on("afterTransaction",this.afterTransactionHandler);this.doc.on("destroy",(()=>{this.destroy()}))}addToScope(t){t=va(t)?t:[t];t.forEach((t=>{if(this.scope.every((e=>e!==t))){this.scope.push(t)}}))}addTrackedOrigin(t){this.trackedOrigins.add(t)}removeTrackedOrigin(t){this.trackedOrigins.delete(t)}clear(t=true,e=true){if(t&&this.canUndo()||e&&this.canRedo()){this.doc.transact((i=>{if(t){this.undoStack.forEach((t=>Tg(i,this,t)));this.undoStack=[]}if(e){this.redoStack.forEach((t=>Tg(i,this,t)));this.redoStack=[]}this.emit("stack-cleared",[{undoStackCleared:t,redoStackCleared:e}])}))}}stopCapturing(){this.lastChange=0}undo(){this.undoing=true;let t;try{t=Rg(this,this.undoStack,"undo")}finally{this.undoing=false}return t}redo(){this.redoing=true;let t;try{t=Rg(this,this.redoStack,"redo")}finally{this.redoing=false}return t}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}destroy(){this.trackedOrigins.delete(this);this.doc.off("afterTransaction",this.afterTransactionHandler);super.destroy()}}function*Ng(t){const e=Lu(t.restDecoder);for(let i=0;izg(t,vf,Cf);const $g=(t,e)=>{if(t.constructor===rm){const{client:i,clock:n}=t.id;return new rm(Jf(i,n+e),t.length-e)}else if(t.constructor===Hm){const{client:i,clock:n}=t.id;return new Hm(Jf(i,n+e),t.length-e)}else{const i=t;const{client:n,clock:s}=i.id;return new Pm(Jf(n,s+e),null,Jf(n,s+e-1),null,i.rightOrigin,i.parent,i.parentSub,i.content.splice(e))}};const zg=(t,e=kf,i=Df)=>{if(t.length===1){return t[0]}const n=t.map((t=>new e(Su(t))));let s=n.map((t=>new Bg(t,true)));let r=null;const o=new i;const c=new Pg(o);while(true){s=s.filter((t=>t.curr!==null));s.sort(((t,e)=>{if(t.curr.id.client===e.curr.id.client){const i=t.curr.id.clock-e.curr.id.clock;if(i===0){return t.curr.constructor===e.curr.constructor?0:t.curr.constructor===Hm?1:-1}else{return i}}else{return e.curr.id.client-t.curr.id.client}}));if(s.length===0){break}const t=s[0];const e=t.curr.id.client;if(r!==null){let i=t.curr;let n=false;while(i!==null&&i.id.clock+i.length<=r.struct.id.clock+r.struct.length&&i.id.client>=r.struct.id.client){i=t.next();n=true}if(i===null||i.id.client!==e||n&&i.id.clock>r.struct.id.clock+r.struct.length){continue}if(e!==r.struct.id.client){Vg(c,r.struct,r.offset);r={struct:i,offset:0};t.next()}else{if(r.struct.id.clock+r.struct.length0){if(r.struct.constructor===Hm){r.struct.length-=e}else{i=$g(i,e)}}if(!r.struct.mergeWith(i)){Vg(c,r.struct,r.offset);r={struct:i,offset:0};t.next()}}}}else{r={struct:t.curr,offset:0};t.next()}for(let i=t.curr;i!==null&&i.id.client===e&&i.id.clock===r.struct.id.clock+r.struct.length&&i.constructor!==Hm;i=t.next()){Vg(c,r.struct,r.offset);r={struct:i,offset:0}}}if(r!==null){Vg(c,r.struct,r.offset);r=null}Ug(c);const h=n.map((t=>gf(t)));const l=lf(h);ff(o,l);return o.toUint8Array()};const Hg=(t,e,i=kf,n=Df)=>{const s=Pf(e);const r=new n;const o=new Pg(r);const c=new i(Su(t));const h=new Bg(c,false);while(h.curr){const t=h.curr;const e=t.id.client;const i=s.get(e)||0;if(h.curr.constructor===Hm){h.next();continue}if(t.id.clock+t.length>i){Vg(o,t,Sa(i-t.id.clock,0));h.next();while(h.curr&&h.curr.id.client===e){Vg(o,h.curr,0);h.next()}}else{while(h.curr&&h.curr.id.client===e&&h.curr.id.clock+h.curr.length<=i){h.next()}}}Ug(o);const l=gf(c);ff(r,l);return r.toUint8Array()};const Wg=t=>{if(t.written>0){t.clientStructs.push({written:t.written,restEncoder:Ju(t.encoder.restEncoder)});t.encoder.restEncoder=Gu();t.written=0}};const Vg=(t,e,i)=>{if(t.written>0&&t.currClient!==e.id.client){Wg(t)}if(t.written===0){t.currClient=e.id.client;t.encoder.writeClient(e.id.client);td(t.encoder.restEncoder,e.id.clock+i)}e.write(t.encoder,i);t.written++};const Ug=t=>{Wg(t);const e=t.encoder.restEncoder;td(e,t.clientStructs.length);for(let i=0;i{const s=new i(Su(t));const r=new Bg(s,false);const o=new n;const c=new Pg(o);for(let t=r.curr;t!==null;t=r.next()){Vg(c,e(t),0)}Ug(c);const h=gf(s);ff(o,h);return o.toUint8Array()};const Kg=t=>qg(t,Ga,kf,Cf);class Gg{constructor(t,e){this.target=t;this.currentTarget=t;this.transaction=e;this._changes=null;this._keys=null;this._delta=null}get path(){return Zg(this.currentTarget,this.target)}deletes(t){return cf(this.transaction.deleteSet,t.id)}get keys(){if(this._keys===null){const t=new Map;const e=this.target;const i=this.transaction.changed.get(e);i.forEach((i=>{if(i!==null){const n=e._map.get(i);let s;let r;if(this.adds(n)){let t=n.left;while(t!==null&&this.adds(t)){t=t.left}if(this.deletes(n)){if(t!==null&&this.deletes(t)){s="delete";r=pa(t.content.getContent())}else{return}}else{if(t!==null&&this.deletes(t)){s="update";r=pa(t.content.getContent())}else{s="add";r=undefined}}}else{if(this.deletes(n)){s="delete";r=pa(n.content.getContent())}else{return}}t.set(i,{action:s,oldValue:r})}}));this._keys=t}return this._keys}get delta(){return this.changes.delta}adds(t){return t.id.clock>=(this.transaction.beforeState.get(t.id.client)||0)}get changes(){let t=this._changes;if(t===null){const e=this.target;const i=ga();const n=ga();const s=[];t={added:i,deleted:n,delta:s,keys:this.keys};const r=this.transaction.changed.get(e);if(r.has(null)){let t=null;const r=()=>{if(t){s.push(t)}};for(let s=e._start;s!==null;s=s.right){if(s.deleted){if(this.deletes(s)&&!this.adds(s)){if(t===null||t.delete===undefined){r();t={delete:0}}t.delete+=s.length;n.add(s)}}else{if(this.adds(s)){if(t===null||t.insert===undefined){r();t={insert:[]}}t.insert=t.insert.concat(s.content.getContent());i.add(s)}else{if(t===null||t.retain===undefined){r();t={retain:0}}t.retain+=s.length}}}if(t!==null&&t.retain===undefined){r()}}this._changes=t}return t}}const Zg=(t,e)=>{const i=[];while(e._item!==null&&e!==t){if(e._item.parentSub!==null){i.unshift(e._item.parentSub)}else{let t=0;let n=e._item.parent._start;while(n!==e._item&&n!==null){if(!n.deleted){t++}n=n.right}i.unshift(t)}e=e._item.parent}return i};const Jg=80;let Qg=0;class Yg{constructor(t,e){t.marker=true;this.p=t;this.index=e;this.timestamp=Qg++}}const Xg=t=>{t.timestamp=Qg++};const tp=(t,e,i)=>{t.p.marker=false;t.p=e;e.marker=true;t.index=i;t.timestamp=Qg++};const ep=(t,e,i)=>{if(t.length>=Jg){const n=t.reduce(((t,e)=>t.timestamp{if(t._start===null||e===0||t._searchMarker===null){return null}const i=t._searchMarker.length===0?null:t._searchMarker.reduce(((t,i)=>xa(e-t.index)e){n=n.left;if(!n.deleted&&n.countable){s-=n.length}}while(n.left!==null&&n.left.id.client===n.id.client&&n.left.id.clock+n.left.length===n.id.clock){n=n.left;if(!n.deleted&&n.countable){s-=n.length}}if(i!==null&&xa(i.index-s){for(let n=t.length-1;n>=0;n--){const s=t[n];if(i>0){let e=s.p;e.marker=false;while(e&&(e.deleted||!e.countable)){e=e.left;if(e&&!e.deleted&&e.countable){s.index-=e.length}}if(e===null||e.marker===true){t.splice(n,1);continue}s.p=e;e.marker=true}if(e0&&e===s.index){s.index=Sa(e,s.index+i)}}};const sp=(t,e,i)=>{const n=t;const s=e.changedParentTypes;while(true){ua(s,t,(()=>[])).push(i);if(t._item===null){break}t=t._item.parent}Kf(n._eH,i,e)};class rp{constructor(){this._item=null;this._map=new Map;this._start=null;this.doc=null;this._length=0;this._eH=Vf();this._dEH=Vf();this._searchMarker=null}get parent(){return this._item?this._item.parent:null}_integrate(t,e){this.doc=t;this._item=e}_copy(){throw vu()}clone(){throw vu()}_write(t){}get _first(){let t=this._start;while(t!==null&&t.deleted){t=t.right}return t}_callObserver(t,e){if(!t.local&&this._searchMarker){this._searchMarker.length=0}}observe(t){Uf(this._eH,t)}observeDeep(t){Uf(this._dEH,t)}unobserve(t){qf(this._eH,t)}unobserveDeep(t){qf(this._dEH,t)}toJSON(){}}const op=(t,e,i)=>{if(e<0){e=t._length+e}if(i<0){i=t._length+i}let n=i-e;const s=[];let r=t._start;while(r!==null&&n>0){if(r.countable&&!r.deleted){const t=r.content.getContent();if(t.length<=e){e-=t.length}else{for(let i=e;i0;i++){s.push(t[i]);n--}e=0}}r=r.right}return s};const cp=t=>{const e=[];let i=t._start;while(i!==null){if(i.countable&&!i.deleted){const t=i.content.getContent();for(let i=0;i{const i=[];let n=t._start;while(n!==null){if(n.countable&&ag(n,e)){const t=n.content.getContent();for(let e=0;e{let i=0;let n=t._start;while(n!==null){if(n.countable&&!n.deleted){const s=n.content.getContent();for(let n=0;n{const i=[];lp(t,((n,s)=>{i.push(e(n,s,t))}));return i};const up=t=>{let e=t._start;let i=null;let n=0;return{[Symbol.iterator](){return this},next:()=>{if(i===null){while(e!==null&&e.deleted){e=e.right}if(e===null){return{done:true,value:undefined}}i=e.content.getContent();n=0;e=e.right}const t=i[n++];if(i.length<=n){i=null}return{done:false,value:t}}}};const dp=(t,e)=>{const i=ip(t,e);let n=t._start;if(i!==null){n=i.p;e-=i.index}for(;n!==null;n=n.right){if(!n.deleted&&n.countable){if(e{let s=i;const r=t.doc;const o=r.clientID;const c=r.store;const h=i===null?e._start:i.right;let l=[];const a=()=>{if(l.length>0){s=new Pm(Jf(o,gg(c,o)),s,s&&s.lastId,h,h&&h.id,e,null,new vm(l));s.integrate(t,0);l=[]}};n.forEach((i=>{if(i===null){l.push(i)}else{switch(i.constructor){case Number:case Object:case Boolean:case Array:case String:l.push(i);break;default:a();switch(i.constructor){case Uint8Array:case ArrayBuffer:s=new Pm(Jf(o,gg(c,o)),s,s&&s.lastId,h,h&&h.id,e,null,new om(new Uint8Array(i)));s.integrate(t,0);break;case wf:s=new Pm(Jf(o,gg(c,o)),s,s&&s.lastId,h,h&&h.id,e,null,new um(i));s.integrate(t,0);break;default:if(i instanceof rp){s=new Pm(Jf(o,gg(c,o)),s,s&&s.lastId,h,h&&h.id,e,null,new Om(i));s.integrate(t,0)}else{throw new Error("Unexpected content type in insert operation")}}}}}));a()};const gp=bu("Length exceeded!");const pp=(t,e,i,n)=>{if(i>e._length){throw gp}if(i===0){if(e._searchMarker){np(e._searchMarker,i,n.length)}return fp(t,e,null,n)}const s=i;const r=ip(e,i);let o=e._start;if(r!==null){o=r.p;i-=r.index;if(i===0){o=o.prev;i+=o&&o.countable&&!o.deleted?o.length:0}}for(;o!==null;o=o.right){if(!o.deleted&&o.countable){if(i<=o.length){if(i{const n=(e._searchMarker||[]).reduce(((t,e)=>e.index>t.index?e:t),{index:0,p:e._start});let s=n.p;if(s){while(s.right){s=s.right}}return fp(t,e,s,i)};const wp=(t,e,i,n)=>{if(n===0){return}const s=i;const r=n;const o=ip(e,i);let c=e._start;if(o!==null){c=o.p;i-=o.index}for(;c!==null&&i>0;c=c.right){if(!c.deleted&&c.countable){if(i0&&c!==null){if(!c.deleted){if(n0){throw gp}if(e._searchMarker){np(e._searchMarker,s,-r+n)}};const bp=(t,e,i)=>{const n=e._map.get(i);if(n!==undefined){n.delete(t)}};const vp=(t,e,i,n)=>{const s=e._map.get(i)||null;const r=t.doc;const o=r.clientID;let c;if(n==null){c=new vm([n])}else{switch(n.constructor){case Number:case Object:case Boolean:case Array:case String:c=new vm([n]);break;case Uint8Array:c=new om(n);break;case wf:c=new um(n);break;default:if(n instanceof rp){c=new Om(n)}else{throw new Error("Unexpected content type")}}}new Pm(Jf(o,gg(r.store,o)),s,s&&s.lastId,null,null,e,i,c).integrate(t,0)};const yp=(t,e)=>{const i=t._map.get(e);return i!==undefined&&!i.deleted?i.content.getContent()[i.length-1]:undefined};const kp=t=>{const e={};t._map.forEach(((t,i)=>{if(!t.deleted){e[i]=t.content.getContent()[t.length-1]}}));return e};const xp=(t,e)=>{const i=t._map.get(e);return i!==undefined&&!i.deleted};const Cp=t=>tf(t.entries(),(t=>!t[1].deleted));class Sp extends Gg{constructor(t,e){super(t,e);this._transaction=e}}class Dp extends rp{constructor(){super();this._prelimContent=[];this._searchMarker=[]}static from(t){const e=new Dp;e.push(t);return e}_integrate(t,e){super._integrate(t,e);this.insert(0,this._prelimContent);this._prelimContent=null}_copy(){return new Dp}clone(){const t=new Dp;t.insert(0,this.toArray().map((t=>t instanceof rp?t.clone():t)));return t}get length(){return this._prelimContent===null?this._length:this._prelimContent.length}_callObserver(t,e){super._callObserver(t,e);sp(this,t,new Sp(this,t))}insert(t,e){if(this.doc!==null){Og(this.doc,(i=>{pp(i,this,t,e)}))}else{this._prelimContent.splice(t,0,...e)}}push(t){if(this.doc!==null){Og(this.doc,(e=>{mp(e,this,t)}))}else{this._prelimContent.push(...t)}}unshift(t){this.insert(0,t)}delete(t,e=1){if(this.doc!==null){Og(this.doc,(i=>{wp(i,this,t,e)}))}else{this._prelimContent.splice(t,e)}}get(t){return dp(this,t)}toArray(){return cp(this)}slice(t=0,e=this.length){return op(this,t,e)}toJSON(){return this.map((t=>t instanceof rp?t.toJSON():t))}map(t){return ap(this,t)}forEach(t){lp(this,t)}[Symbol.iterator](){return up(this)}_write(t){t.writeTypeRef(Sm)}}const Ap=t=>new Dp;class Ep extends Gg{constructor(t,e,i){super(t,e);this.keysChanged=i}}class Mp extends rp{constructor(t){super();this._prelimContent=null;if(t===undefined){this._prelimContent=new Map}else{this._prelimContent=new Map(t)}}_integrate(t,e){super._integrate(t,e);this._prelimContent.forEach(((t,e)=>{this.set(e,t)}));this._prelimContent=null}_copy(){return new Mp}clone(){const t=new Mp;this.forEach(((e,i)=>{t.set(i,e instanceof rp?e.clone():e)}));return t}_callObserver(t,e){sp(this,t,new Ep(this,t,e))}toJSON(){const t={};this._map.forEach(((e,i)=>{if(!e.deleted){const n=e.content.getContent()[e.length-1];t[i]=n instanceof rp?n.toJSON():n}}));return t}get size(){return[...Cp(this._map)].length}keys(){return ef(Cp(this._map),(t=>t[0]))}values(){return ef(Cp(this._map),(t=>t[1].content.getContent()[t[1].length-1]))}entries(){return ef(Cp(this._map),(t=>[t[0],t[1].content.getContent()[t[1].length-1]]))}forEach(t){this._map.forEach(((e,i)=>{if(!e.deleted){t(e.content.getContent()[e.length-1],i,this)}}))}[Symbol.iterator](){return this.entries()}delete(t){if(this.doc!==null){Og(this.doc,(e=>{bp(e,this,t)}))}else{this._prelimContent.delete(t)}}set(t,e){if(this.doc!==null){Og(this.doc,(i=>{vp(i,this,t,e)}))}else{this._prelimContent.set(t,e)}return e}get(t){return yp(this,t)}has(t){return xp(this,t)}clear(){if(this.doc!==null){Og(this.doc,(t=>{this.forEach((function(e,i,n){bp(t,n,i)}))}))}else{this._prelimContent.clear()}}_write(t){t.writeTypeRef(Dm)}}const Lp=t=>new Mp;const _p=(t,e)=>t===e||typeof t==="object"&&typeof e==="object"&&t&&e&&qa(t,e);class Op{constructor(t,e,i,n){this.left=t;this.right=e;this.index=i;this.currentAttributes=n}forward(){if(this.right===null){yu()}switch(this.right.content.constructor){case pm:if(!this.right.deleted){Ip(this.currentAttributes,this.right.content)}break;default:if(!this.right.deleted){this.index+=this.right.length}break}this.left=this.right;this.right=this.right.right}}const Fp=(t,e,i)=>{while(e.right!==null&&i>0){switch(e.right.content.constructor){case pm:if(!e.right.deleted){Ip(e.currentAttributes,e.right.content)}break;default:if(!e.right.deleted){if(i{const n=new Map;const s=ip(e,i);if(s){const e=new Op(s.p.left,s.p,s.index,n);return Fp(t,e,i-s.index)}else{const s=new Op(null,e._start,0,n);return Fp(t,s,i)}};const Rp=(t,e,i,n)=>{while(i.right!==null&&(i.right.deleted===true||i.right.content.constructor===pm&&_p(n.get(i.right.content.key),i.right.content.value))){if(!i.right.deleted){n.delete(i.right.content.key)}i.forward()}const s=t.doc;const r=s.clientID;n.forEach(((n,o)=>{const c=i.left;const h=i.right;const l=new Pm(Jf(r,gg(s.store,r)),c,c&&c.lastId,h,h&&h.id,e,null,new pm(o,n));l.integrate(t,0);i.right=l;i.forward()}))};const Ip=(t,e)=>{const{key:i,value:n}=e;if(n===null){t.delete(i)}else{t.set(i,n)}};const Np=(t,e)=>{while(true){if(t.right===null){break}else if(t.right.deleted||t.right.content.constructor===pm&&_p(e[t.right.content.key]||null,t.right.content.value));else{break}t.forward()}};const Bp=(t,e,i,n)=>{const s=t.doc;const r=s.clientID;const o=new Map;for(const c in n){const h=n[c];const l=i.currentAttributes.get(c)||null;if(!_p(l,h)){o.set(c,l);const{left:n,right:a}=i;i.right=new Pm(Jf(r,gg(s.store,r)),n,n&&n.lastId,a,a&&a.id,e,null,new pm(c,h));i.right.integrate(t,0);i.forward()}}return o};const Pp=(t,e,i,n,s)=>{i.currentAttributes.forEach(((t,e)=>{if(s[e]===undefined){s[e]=null}}));const r=t.doc;const o=r.clientID;Np(i,s);const c=Bp(t,e,i,s);const h=n.constructor===String?new km(n):n instanceof rp?new Om(n):new fm(n);let{left:l,right:a,index:u}=i;if(e._searchMarker){np(e._searchMarker,i.index,h.getLength())}a=new Pm(Jf(o,gg(r.store,o)),l,l&&l.lastId,a,a&&a.id,e,null,h);a.integrate(t,0);i.right=a;i.index=u;i.forward();Rp(t,e,i,c)};const jp=(t,e,i,n,s)=>{const r=t.doc;const o=r.clientID;Np(i,s);const c=Bp(t,e,i,s);t:while(i.right!==null&&(n>0||c.size>0&&(i.right.deleted||i.right.content.constructor===pm))){if(!i.right.deleted){switch(i.right.content.constructor){case pm:{const{key:e,value:r}=i.right.content;const o=s[e];if(o!==undefined){if(_p(o,r)){c.delete(e)}else{if(n===0){break t}c.set(e,r)}i.right.delete(t)}else{i.currentAttributes.set(e,r)}break}default:if(n0){let s="";for(;n>0;n--){s+="\n"}i.right=new Pm(Jf(o,gg(r.store,o)),i.left,i.left&&i.left.lastId,i.right,i.right&&i.right.id,e,null,new km(s));i.right.integrate(t,0);i.forward()}Rp(t,e,i,c)};const $p=(t,e,i,n,s)=>{let r=e;const o=la();while(r&&(!r.countable||r.deleted)){if(!r.deleted&&r.content.constructor===pm){const t=r.content;o.set(t.key,t)}r=r.right}let c=0;let h=false;while(e!==r){if(i===e){h=true}if(!e.deleted){const i=e.content;switch(i.constructor){case pm:{const{key:r,value:l}=i;const a=n.get(r)||null;if(o.get(r)!==i||a===l){e.delete(t);c++;if(!h&&(s.get(r)||null)===l&&a!==l){if(a===null){s.delete(r)}else{s.set(r,a)}}}if(!h&&!e.deleted){Ip(s,i)}break}}}e=e.right}return c};const zp=(t,e)=>{while(e&&e.right&&(e.right.deleted||!e.right.countable)){e=e.right}const i=new Set;while(e&&(e.deleted||!e.countable)){if(!e.deleted&&e.content.constructor===pm){const n=e.content.key;if(i.has(n)){e.delete(t)}else{i.add(n)}}e=e.left}};const Hp=t=>{let e=0;Og(t.doc,(i=>{let n=t._start;let s=t._start;let r=la();const o=aa(r);while(s){if(s.deleted===false){switch(s.content.constructor){case pm:Ip(o,s.content);break;default:e+=$p(i,n,s,r,o);r=aa(o);n=s;break}}s=s.right}}));return e};const Wp=(t,e,i)=>{const n=i;const s=aa(e.currentAttributes);const r=e.right;while(i>0&&e.right!==null){if(e.right.deleted===false){switch(e.right.content.constructor){case Om:case fm:case km:if(i{if(t===null){this.childListChanged=true}else{this.keysChanged.add(t)}}))}get changes(){if(this._changes===null){const t={keys:this.keys,delta:this.delta,added:new Set,deleted:new Set};this._changes=t}return this._changes}get delta(){if(this._delta===null){const t=this.target.doc;const e=[];Og(t,(t=>{const i=new Map;const n=new Map;let s=this.target._start;let r=null;const o={};let c="";let h=0;let l=0;const a=()=>{if(r!==null){let t=null;switch(r){case"delete":if(l>0){t={delete:l}}l=0;break;case"insert":if(typeof c==="object"||c.length>0){t={insert:c};if(i.size>0){t.attributes={};i.forEach(((e,i)=>{if(e!==null){t.attributes[i]=e}}))}}c="";break;case"retain":if(h>0){t={retain:h};if(!Wa(o)){t.attributes=$a({},o)}}h=0;break}if(t)e.push(t);r=null}};while(s!==null){switch(s.content.constructor){case Om:case fm:if(this.adds(s)){if(!this.deletes(s)){a();r="insert";c=s.content.getContent()[0];a()}}else if(this.deletes(s)){if(r!=="delete"){a();r="delete"}l+=1}else if(!s.deleted){if(r!=="retain"){a();r="retain"}h+=1}break;case km:if(this.adds(s)){if(!this.deletes(s)){if(r!=="insert"){a();r="insert"}c+=s.content.str}}else if(this.deletes(s)){if(r!=="delete"){a();r="delete"}l+=s.length}else if(!s.deleted){if(r!=="retain"){a();r="retain"}h+=s.length}break;case pm:{const{key:e,value:c}=s.content;if(this.adds(s)){if(!this.deletes(s)){const h=i.get(e)||null;if(!_p(h,c)){if(r==="retain"){a()}if(_p(c,n.get(e)||null)){delete o[e]}else{o[e]=c}}else if(c!==null){s.delete(t)}}}else if(this.deletes(s)){n.set(e,c);const t=i.get(e)||null;if(!_p(t,c)){if(r==="retain"){a()}o[e]=t}}else if(!s.deleted){n.set(e,c);const i=o[e];if(i!==undefined){if(!_p(i,c)){if(r==="retain"){a()}if(c===null){delete o[e]}else{o[e]=c}}else if(i!==null){s.delete(t)}}}if(!s.deleted){if(r==="insert"){a()}Ip(i,s.content)}break}}s=s.right}a();while(e.length>0){const t=e[e.length-1];if(t.retain!==undefined&&t.attributes===undefined){e.pop()}else{break}}}));this._delta=e}return this._delta}}class Up extends rp{constructor(t){super();this._pending=t!==undefined?[()=>this.insert(0,t)]:[];this._searchMarker=[]}get length(){return this._length}_integrate(t,e){super._integrate(t,e);try{this._pending.forEach((t=>t()))}catch(t){console.error(t)}this._pending=null}_copy(){return new Up}clone(){const t=new Up;t.applyDelta(this.toDelta());return t}_callObserver(t,e){super._callObserver(t,e);const i=new Vp(this,t,e);const n=t.doc;sp(this,t,i);if(!t.local){let e=false;for(const[i,s]of t.afterState.entries()){const r=t.beforeState.get(i)||0;if(s===r){continue}Cg(t,n.store.clients.get(i),r,s,(t=>{if(!t.deleted&&t.content.constructor===pm){e=true}}));if(e){break}}if(!e){rf(t,t.deleteSet,(t=>{if(t instanceof rm||e){return}if(t.parent===this&&t.content.constructor===pm){e=true}}))}Og(n,(t=>{if(e){Hp(this)}else{rf(t,t.deleteSet,(e=>{if(e instanceof rm){return}if(e.parent===this){zp(t,e)}}))}}))}}toString(){let t="";let e=this._start;while(e!==null){if(!e.deleted&&e.countable&&e.content.constructor===km){t+=e.content.str}e=e.right}return t}toJSON(){return this.toString()}applyDelta(t,{sanitize:e=true}={}){if(this.doc!==null){Og(this.doc,(i=>{const n=new Op(null,this._start,0,new Map);for(let s=0;s0){Pp(i,this,n,o,r.attributes||{})}}else if(r.retain!==undefined){jp(i,this,n,r.retain,r.attributes||{})}else if(r.delete!==undefined){Wp(i,n,r.delete)}}}))}else{this._pending.push((()=>this.applyDelta(t)))}}toDelta(t,e,i){const n=[];const s=new Map;const r=this.doc;let o="";let c=this._start;function h(){if(o.length>0){const t={};let e=false;s.forEach(((i,n)=>{e=true;t[n]=i}));const i={insert:o};if(e){i.attributes=t}n.push(i);o=""}}const l=()=>{while(c!==null){if(ag(c,t)||e!==undefined&&ag(c,e)){switch(c.content.constructor){case km:{const n=s.get("ychange");if(t!==undefined&&!ag(c,t)){if(n===undefined||n.user!==c.id.client||n.type!=="removed"){h();s.set("ychange",i?i("removed",c.id):{type:"removed"})}}else if(e!==undefined&&!ag(c,e)){if(n===undefined||n.user!==c.id.client||n.type!=="added"){h();s.set("ychange",i?i("added",c.id):{type:"added"})}}else if(n!==undefined){h();s.delete("ychange")}o+=c.content.str;break}case Om:case fm:{h();const t={insert:c.content.getContent()[0]};if(s.size>0){const e={};t.attributes=e;s.forEach(((t,i)=>{e[i]=t}))}n.push(t);break}case pm:if(ag(c,t)){h();Ip(s,c.content)}break}}c=c.right}h()};if(t||e){Og(r,(i=>{if(t){ug(i,t)}if(e){ug(i,e)}l()}),"cleanup")}else{l()}return n}insert(t,e,i){if(e.length<=0){return}const n=this.doc;if(n!==null){Og(n,(n=>{const s=Tp(n,this,t);if(!i){i={};s.currentAttributes.forEach(((t,e)=>{i[e]=t}))}Pp(n,this,s,e,i)}))}else{this._pending.push((()=>this.insert(t,e,i)))}}insertEmbed(t,e,i={}){const n=this.doc;if(n!==null){Og(n,(n=>{const s=Tp(n,this,t);Pp(n,this,s,e,i)}))}else{this._pending.push((()=>this.insertEmbed(t,e,i)))}}delete(t,e){if(e===0){return}const i=this.doc;if(i!==null){Og(i,(i=>{Wp(i,Tp(i,this,t),e)}))}else{this._pending.push((()=>this.delete(t,e)))}}format(t,e,i){if(e===0){return}const n=this.doc;if(n!==null){Og(n,(n=>{const s=Tp(n,this,t);if(s.right===null){return}jp(n,this,s,e,i)}))}else{this._pending.push((()=>this.format(t,e,i)))}}removeAttribute(t){if(this.doc!==null){Og(this.doc,(e=>{bp(e,this,t)}))}else{this._pending.push((()=>this.removeAttribute(t)))}}setAttribute(t,e){if(this.doc!==null){Og(this.doc,(i=>{vp(i,this,t,e)}))}else{this._pending.push((()=>this.setAttribute(t,e)))}}getAttribute(t){return yp(this,t)}getAttributes(){return kp(this)}_write(t){t.writeTypeRef(Am)}}const qp=t=>new Up;class Kp{constructor(t,e=(()=>true)){this._filter=e;this._root=t;this._currentNode=t._start;this._firstCall=true}[Symbol.iterator](){return this}next(){let t=this._currentNode;let e=t&&t.content&&t.content.type;if(t!==null&&(!this._firstCall||t.deleted||!this._filter(e))){do{e=t.content.type;if(!t.deleted&&(e.constructor===Jp||e.constructor===Gp)&&e._start!==null){t=e._start}else{while(t!==null){if(t.right!==null){t=t.right;break}else if(t.parent===this._root){t=null}else{t=t.parent._item}}}}while(t!==null&&(t.deleted||!this._filter(t.content.type)))}this._firstCall=false;if(t===null){return{value:undefined,done:true}}this._currentNode=t;return{value:t.content.type,done:false}}}class Gp extends rp{constructor(){super();this._prelimContent=[]}get firstChild(){const t=this._first;return t?t.content.getContent()[0]:null}_integrate(t,e){super._integrate(t,e);this.insert(0,this._prelimContent);this._prelimContent=null}_copy(){return new Gp}clone(){const t=new Gp;t.insert(0,this.toArray().map((t=>t instanceof rp?t.clone():t)));return t}get length(){return this._prelimContent===null?this._length:this._prelimContent.length}createTreeWalker(t){return new Kp(this,t)}querySelector(t){t=t.toUpperCase();const e=new Kp(this,(e=>e.nodeName&&e.nodeName.toUpperCase()===t));const i=e.next();if(i.done){return null}else{return i.value}}querySelectorAll(t){t=t.toUpperCase();return wa(new Kp(this,(e=>e.nodeName&&e.nodeName.toUpperCase()===t)))}_callObserver(t,e){sp(this,t,new Yp(this,e,t))}toString(){return ap(this,(t=>t.toString())).join("")}toJSON(){return this.toString()}toDOM(t=document,e={},i){const n=t.createDocumentFragment();if(i!==undefined){i._createAssociation(n,this)}lp(this,(s=>{n.insertBefore(s.toDOM(t,e,i),null)}));return n}insert(t,e){if(this.doc!==null){Og(this.doc,(i=>{pp(i,this,t,e)}))}else{this._prelimContent.splice(t,0,...e)}}insertAfter(t,e){if(this.doc!==null){Og(this.doc,(i=>{const n=t&&t instanceof rp?t._item:t;fp(i,this,n,e)}))}else{const i=this._prelimContent;const n=t===null?0:i.findIndex((e=>e===t))+1;if(n===0&&t!==null){throw bu("Reference item not found")}i.splice(n,0,...e)}}delete(t,e=1){if(this.doc!==null){Og(this.doc,(i=>{wp(i,this,t,e)}))}else{this._prelimContent.splice(t,e)}}toArray(){return cp(this)}push(t){this.insert(this.length,t)}unshift(t){this.insert(0,t)}get(t){return dp(this,t)}slice(t=0,e=this.length){return op(this,t,e)}forEach(t){lp(this,t)}_write(t){t.writeTypeRef(Mm)}}const Zp=t=>new Gp;class Jp extends Gp{constructor(t="UNDEFINED"){super();this.nodeName=t;this._prelimAttrs=new Map}get nextSibling(){const t=this._item?this._item.next:null;return t?t.content.type:null}get prevSibling(){const t=this._item?this._item.prev:null;return t?t.content.type:null}_integrate(t,e){super._integrate(t,e);this._prelimAttrs.forEach(((t,e)=>{this.setAttribute(e,t)}));this._prelimAttrs=null}_copy(){return new Jp(this.nodeName)}clone(){const t=new Jp(this.nodeName);const e=this.getAttributes();for(const i in e){t.setAttribute(i,e[i])}t.insert(0,this.toArray().map((t=>t instanceof rp?t.clone():t)));return t}toString(){const t=this.getAttributes();const e=[];const i=[];for(const e in t){i.push(e)}i.sort();const n=i.length;for(let s=0;s0?" "+e.join(" "):"";return`<${s}${r}>${super.toString()}`}removeAttribute(t){if(this.doc!==null){Og(this.doc,(e=>{bp(e,this,t)}))}else{this._prelimAttrs.delete(t)}}setAttribute(t,e){if(this.doc!==null){Og(this.doc,(i=>{vp(i,this,t,e)}))}else{this._prelimAttrs.set(t,e)}}getAttribute(t){return yp(this,t)}hasAttribute(t){return xp(this,t)}getAttributes(){return kp(this)}toDOM(t=document,e={},i){const n=t.createElement(this.nodeName);const s=this.getAttributes();for(const t in s){n.setAttribute(t,s[t])}lp(this,(s=>{n.appendChild(s.toDOM(t,e,i))}));if(i!==undefined){i._createAssociation(n,this)}return n}_write(t){t.writeTypeRef(Em);t.writeKey(this.nodeName)}}const Qp=t=>new Jp(t.readKey());class Yp extends Gg{constructor(t,e,i){super(t,i);this.childListChanged=false;this.attributesChanged=new Set;e.forEach((t=>{if(t===null){this.childListChanged=true}else{this.attributesChanged.add(t)}}))}}class Xp extends Mp{constructor(t){super();this.hookName=t}_copy(){return new Xp(this.hookName)}clone(){const t=new Xp(this.hookName);this.forEach(((e,i)=>{t.set(i,e)}));return t}toDOM(t=document,e={},i){const n=e[this.hookName];let s;if(n!==undefined){s=n.createDom(this)}else{s=document.createElement(this.hookName)}s.setAttribute("data-yjs-hook",this.hookName);if(i!==undefined){i._createAssociation(s,this)}return s}_write(t){t.writeTypeRef(Lm);t.writeKey(this.hookName)}}const tm=t=>new Xp(t.readKey());class em extends Up{get nextSibling(){const t=this._item?this._item.next:null;return t?t.content.type:null}get prevSibling(){const t=this._item?this._item.prev:null;return t?t.content.type:null}_copy(){return new em}clone(){const t=new em;t.applyDelta(this.toDelta());return t}toDOM(t=document,e,i){const n=t.createTextNode(this.toString());if(i!==undefined){i._createAssociation(n,this)}return n}toString(){return this.toDelta().map((t=>{const e=[];for(const i in t.attributes){const n=[];for(const e in t.attributes[i]){n.push({key:e,value:t.attributes[i][e]})}n.sort(((t,e)=>t.keyt.nodeName=0;t--){i+=``}return i})).join("")}toJSON(){return this.toString()}_write(t){t.writeTypeRef(_m)}}const im=t=>new em;class nm{constructor(t,e){this.id=t;this.length=e}get deleted(){throw vu()}mergeWith(t){return false}write(t,e,i){throw vu()}integrate(t,e){throw vu()}}const sm=0;class rm extends nm{get deleted(){return true}delete(){}mergeWith(t){if(this.constructor!==t.constructor){return false}this.length+=t.length;return true}integrate(t,e){if(e>0){this.id.clock+=e;this.length-=e}pg(t.doc.store,this)}write(t,e){t.writeInfo(sm);t.writeLen(this.length-e)}getMissing(t,e){return null}}class om{constructor(t){this.content=t}getLength(){return 1}getContent(){return[this.content]}isCountable(){return true}copy(){return new om(this.content)}splice(t){throw vu()}mergeWith(t){return false}integrate(t,e){}delete(t){}gc(t){}write(t,e){t.writeBuf(this.content)}getRef(){return 3}}const cm=t=>new om(t.readBuf());class hm{constructor(t){this.len=t}getLength(){return this.len}getContent(){return[]}isCountable(){return false}copy(){return new hm(this.len)}splice(t){const e=new hm(this.len-t);this.len=t;return e}mergeWith(t){this.len+=t.len;return true}integrate(t,e){af(t.deleteSet,e.id.client,e.id.clock,this.len);e.markDeleted()}delete(t){}gc(t){}write(t,e){t.writeLen(this.len-e)}getRef(){return 1}}const lm=t=>new hm(t.readLen());const am=(t,e)=>new wf({guid:t,...e,shouldLoad:e.shouldLoad||e.autoLoad||false});class um{constructor(t){if(t._item){console.error("This document was already integrated as a sub-document. You should create a second instance instead with the same guid.")}this.doc=t;const e={};this.opts=e;if(!t.gc){e.gc=false}if(t.autoLoad){e.autoLoad=true}if(t.meta!==null){e.meta=t.meta}}getLength(){return 1}getContent(){return[this.doc]}isCountable(){return true}copy(){return new um(am(this.doc.guid,this.opts))}splice(t){throw vu()}mergeWith(t){return false}integrate(t,e){this.doc._item=e;t.subdocsAdded.add(this.doc);if(this.doc.shouldLoad){t.subdocsLoaded.add(this.doc)}}delete(t){if(t.subdocsAdded.has(this.doc)){t.subdocsAdded.delete(this.doc)}else{t.subdocsRemoved.add(this.doc)}}gc(t){}write(t,e){t.writeString(this.doc.guid);t.writeAny(this.opts)}getRef(){return 9}}const dm=t=>new um(am(t.readString(),t.readAny()));class fm{constructor(t){this.embed=t}getLength(){return 1}getContent(){return[this.embed]}isCountable(){return true}copy(){return new fm(this.embed)}splice(t){throw vu()}mergeWith(t){return false}integrate(t,e){}delete(t){}gc(t){}write(t,e){t.writeJSON(this.embed)}getRef(){return 5}}const gm=t=>new fm(t.readJSON());class pm{constructor(t,e){this.key=t;this.value=e}getLength(){return 1}getContent(){return[]}isCountable(){return false}copy(){return new pm(this.key,this.value)}splice(t){throw vu()}mergeWith(t){return false}integrate(t,e){e.parent._searchMarker=null}delete(t){}gc(t){}write(t,e){t.writeKey(this.key);t.writeJSON(this.value)}getRef(){return 6}}const mm=t=>new pm(t.readKey(),t.readJSON());class wm{constructor(t){this.arr=t}getLength(){return this.arr.length}getContent(){return this.arr}isCountable(){return true}copy(){return new wm(this.arr)}splice(t){const e=new wm(this.arr.slice(t));this.arr=this.arr.slice(0,t);return e}mergeWith(t){this.arr=this.arr.concat(t.arr);return true}integrate(t,e){}delete(t){}gc(t){}write(t,e){const i=this.arr.length;t.writeLen(i-e);for(let n=e;n{const e=t.readLen();const i=[];for(let n=0;n{const e=t.readLen();const i=[];for(let n=0;n=55296&&i<=56319){this.str=this.str.slice(0,t-1)+"�";e.str="�"+e.str.slice(1)}return e}mergeWith(t){this.str+=t.str;return true}integrate(t,e){}delete(t){}gc(t){}write(t,e){t.writeString(e===0?this.str:this.str.slice(e))}getRef(){return 4}}const xm=t=>new km(t.readString());const Cm=[Ap,Lp,qp,Qp,Zp,tm,im];const Sm=0;const Dm=1;const Am=2;const Em=3;const Mm=4;const Lm=5;const _m=6;class Om{constructor(t){this.type=t}getLength(){return 1}getContent(){return[this.type]}isCountable(){return true}copy(){return new Om(this.type._copy())}splice(t){throw vu()}mergeWith(t){return false}integrate(t,e){this.type._integrate(t.doc,e)}delete(t){let e=this.type._start;while(e!==null){if(!e.deleted){e.delete(t)}else{t._mergeStructs.push(e)}e=e.right}this.type._map.forEach((e=>{if(!e.deleted){e.delete(t)}else{t._mergeStructs.push(e)}}));t.changed.delete(this.type)}gc(t){let e=this.type._start;while(e!==null){e.gc(t,true);e=e.right}this.type._start=null;this.type._map.forEach((e=>{while(e!==null){e.gc(t,true);e=e.left}}));this.type._map=new Map}write(t,e){this.type._write(t)}getRef(){return 7}}const Fm=t=>new Om(Cm[t.readTypeRef()](t));const Tm=(t,e)=>{let i=e;let n=0;let s;do{if(n>0){i=Jf(i.client,i.clock+n)}s=bg(t,i);n=i.clock-s.id.clock;i=s.redone}while(i!==null&&s instanceof Pm);return{item:s,diff:n}};const Rm=(t,e)=>{while(t!==null&&t.keep!==e){t.keep=e;t=t.parent._item}};const Im=(t,e,i)=>{const{client:n,clock:s}=e.id;const r=new Pm(Jf(n,s+i),e,Jf(n,s+i-1),e.right,e.rightOrigin,e.parent,e.parentSub,e.content.splice(i));if(e.deleted){r.markDeleted()}if(e.keep){r.keep=true}if(e.redone!==null){r.redone=Jf(e.redone.client,e.redone.clock+i)}e.right=r;if(r.right!==null){r.right.left=r}t._mergeStructs.push(r);if(r.parentSub!==null&&r.right===null){r.parent._map.set(r.parentSub,r)}e.length=i;return r};const Nm=(t,e)=>ba(t,(t=>cf(t.deletions,e)));const Bm=(t,e,i,n,s,r)=>{const o=t.doc;const c=o.store;const h=o.clientID;const l=e.redone;if(l!==null){return yg(t,l)}let a=e.parent._item;let u=null;let d;if(a!==null&&a.deleted===true){if(a.redone===null&&(!i.has(a)||Bm(t,a,i,n,s,r)===null)){return null}while(a.redone!==null){a=yg(t,a.redone)}}const f=a===null?e.parent:a.content.type;if(e.parentSub===null){u=e.left;d=e;while(u!==null){let e=u;while(e!==null&&e.parent._item!==a){e=e.redone===null?null:yg(t,e.redone)}if(e!==null&&e.parent._item===a){u=e;break}u=u.left}while(d!==null){let e=d;while(e!==null&&e.parent._item!==a){e=e.redone===null?null:yg(t,e.redone)}if(e!==null&&e.parent._item===a){d=e;break}d=d.right}}else{d=null;if(e.right&&!s){u=e;while(u!==null&&u.right!==null&&(u.right.redone||cf(n,u.right.id)||Nm(r.undoStack,u.right.id)||Nm(r.redoStack,u.right.id))){u=u.right;while(u.redone)u=yg(t,u.redone)}if(u&&u.right!==null){return null}}else{u=f._map.get(e.parentSub)||null}}const g=gg(c,h);const p=Jf(h,g);const m=new Pm(p,u,u&&u.lastId,d,d&&d.id,f,e.parentSub,e.content.copy());e.redone=p;Rm(m,true);m.integrate(t,0);return m};class Pm extends nm{constructor(t,e,i,n,s,r,o,c){super(t,c.getLength());this.origin=i;this.left=e;this.right=n;this.rightOrigin=s;this.parent=r;this.parentSub=o;this.redone=null;this.content=c;this.info=this.content.isCountable()?ou:0}set marker(t){if((this.info&hu)>0!==t){this.info^=hu}}get marker(){return(this.info&hu)>0}get keep(){return(this.info&ru)>0}set keep(t){if(this.keep!==t){this.info^=ru}}get countable(){return(this.info&ou)>0}get deleted(){return(this.info&cu)>0}set deleted(t){if(this.deleted!==t){this.info^=cu}}markDeleted(){this.info|=cu}getMissing(t,e){if(this.origin&&this.origin.client!==this.id.client&&this.origin.clock>=gg(e,this.origin.client)){return this.origin.client}if(this.rightOrigin&&this.rightOrigin.client!==this.id.client&&this.rightOrigin.clock>=gg(e,this.rightOrigin.client)){return this.rightOrigin.client}if(this.parent&&this.parent.constructor===Gf&&this.id.client!==this.parent.client&&this.parent.clock>=gg(e,this.parent.client)){return this.parent.client}if(this.origin){this.left=kg(t,e,this.origin);this.origin=this.left.lastId}if(this.rightOrigin){this.right=yg(t,this.rightOrigin);this.rightOrigin=this.right.id}if(this.left&&this.left.constructor===rm||this.right&&this.right.constructor===rm){this.parent=null}if(!this.parent){if(this.left&&this.left.constructor===Pm){this.parent=this.left.parent;this.parentSub=this.left.parentSub}if(this.right&&this.right.constructor===Pm){this.parent=this.right.parent;this.parentSub=this.right.parentSub}}else if(this.parent.constructor===Gf){const t=bg(e,this.parent);if(t.constructor===rm){this.parent=null}else{this.parent=t.content.type}}return null}integrate(t,e){if(e>0){this.id.clock+=e;this.left=kg(t,t.doc.store,Jf(this.id.client,this.id.clock-1));this.origin=this.left.lastId;this.content=this.content.splice(e);this.length-=e}if(this.parent){if(!this.left&&(!this.right||this.right.left!==null)||this.left&&this.left.right!==this.right){let e=this.left;let i;if(e!==null){i=e.right}else if(this.parentSub!==null){i=this.parent._map.get(this.parentSub)||null;while(i!==null&&i.left!==null){i=i.left}}else{i=this.parent._start}const n=new Set;const s=new Set;while(i!==null&&i!==this.right){s.add(i);n.add(i);if(Zf(this.origin,i.origin)){if(i.id.client{if(e.p===t){e.p=this;if(!this.deleted&&this.countable){e.index-=this.length}}}))}if(t.keep){this.keep=true}this.right=t.right;if(this.right!==null){this.right.left=this}this.length+=t.length;return true}return false}delete(t){if(!this.deleted){const e=this.parent;if(this.countable&&this.parentSub===null){e._length-=this.length}this.markDeleted();af(t.deleteSet,this.id.client,this.id.clock,this.length);Ag(t,e,this.parentSub);this.content.delete(t)}}gc(t,e){if(!this.deleted){throw yu()}this.content.gc(t);if(e){xg(t,this,new rm(this.id,this.length))}else{this.content=new hm(this.length)}}write(t,e){const i=e>0?Jf(this.id.client,this.id.clock+e-1):this.origin;const n=this.rightOrigin;const s=this.parentSub;const r=this.content.getRef()&du|(i===null?0:uu)|(n===null?0:au)|(s===null?0:lu);t.writeInfo(r);if(i!==null){t.writeLeftID(i)}if(n!==null){t.writeRightID(n)}if(i===null&&n===null){const e=this.parent;if(e._item!==undefined){const i=e._item;if(i===null){const i=Qf(e);t.writeParentInfo(true);t.writeString(i)}else{t.writeParentInfo(false);t.writeLeftID(i.id)}}else if(e.constructor===String){t.writeParentInfo(true);t.writeString(e)}else if(e.constructor===Gf){t.writeParentInfo(false);t.writeLeftID(e)}else{yu()}if(s!==null){t.writeString(s)}}this.content.write(t,e)}}const jm=(t,e)=>$m[e&du](t);const $m=[()=>{yu()},lm,bm,cm,xm,gm,mm,Fm,ym,dm,()=>{yu()}];const zm=10;class Hm extends nm{get deleted(){return true}delete(){}mergeWith(t){if(this.constructor!==t.constructor){return false}this.length+=t.length;return true}integrate(t,e){yu()}write(t,e){t.writeInfo(zm);td(t.restEncoder,this.length-e)}getMissing(t,e){return null}}const Wm=typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:typeof global!=="undefined"?global:{};const Vm="__ $YJS$ __";if(Wm[Vm]===true){console.error("Yjs was already imported. This breaks constructor checks and will lead to issues! - https://github.com/yjs/yjs/issues/438")}Wm[Vm]=true;const Um=()=>{let t=true;return(e,i)=>{if(t){t=false;try{e()}finally{t=true}}else if(i!==undefined){i()}}};const qm=/[\uD800-\uDBFF]/;const Km=/[\uDC00-\uDFFF]/;const Gm=(t,e)=>{let i=0;let n=0;while(i0&&qm.test(t[i-1]))i--;while(n+i0&&Km.test(t[t.length-n]))n--;return{index:i,remove:t.length-i-n,insert:e.slice(i,e.length-n)}};const Zm=Gm;const Jm=new c("y-sync");const Qm=new c("y-undo");const Ym=new c("yjs-cursor");const Xm=(t,e)=>e===undefined?!t.deleted:e.sv.has(t.id.client)&&e.sv.get(t.id.client)>t.id.clock&&!cf(e.ds,t.id);const tw=[{light:"#ecd44433",dark:"#ecd444"}];const ew=(t,e,i)=>{if(!t.has(i)){if(t.sizei.add(t)));e=e.filter((t=>!i.has(t)))}t.set(i,Dd(e))}return t.get(i)};const iw=(t,{colors:e=tw,colorMapping:i=new Map,permanentUserData:n=null,onFirstRender:s=(()=>{})}={})=>{let r=false;let c;const h=new o({props:{editable:t=>{const e=Jm.getState(t);return e.snapshot==null&&e.prevSnapshot==null}},key:Jm,state:{init:(s,r)=>({type:t,doc:t.doc,binding:null,snapshot:null,prevSnapshot:null,isChangeOrigin:false,colors:e,colorMapping:i,permanentUserData:n}),apply:(t,e)=>{const i=t.getMeta(Jm);if(i!==undefined){e=Object.assign({},e);for(const t in i){e[t]=i[t]}}e.isChangeOrigin=i!==undefined&&!!i.isChangeOrigin;if(e.binding!==null){if(i!==undefined&&(i.snapshot!=null||i.prevSnapshot!=null)){Nd(0,(()=>{if(e.binding==null||e.binding.isDestroyed){return}if(i.restore==null){e.binding._renderSnapshot(i.snapshot,i.prevSnapshot,e)}else{e.binding._renderSnapshot(i.snapshot,i.snapshot,e);delete e.restore;delete e.snapshot;delete e.prevSnapshot;e.binding._prosemirrorChanged(e.binding.prosemirrorView.state.doc)}}))}}return e}},view:e=>{const i=new rw(t,e);if(c!=null){clearTimeout(c)}c=Nd(0,(()=>{i._forceRerender();e.dispatch(e.state.tr.setMeta(Jm,{binding:i}));s()}));return{update:()=>{const t=h.getState(e.state);if(t.snapshot==null&&t.prevSnapshot==null){if(r||e.state.doc.content.findDiffStart(e.state.doc.type.createAndFill().content)!==null){r=true;i._prosemirrorChanged(e.state.doc)}}},destroy:()=>{clearTimeout(c);i.destroy()}}}});return h};const nw=(t,e,i)=>{if(e!==null&&e.anchor!==null&&e.head!==null){const n=Lw(i.doc,i.type,e.anchor,i.mapping);const s=Lw(i.doc,i.type,e.head,i.mapping);if(n!==null&&s!==null){t=t.setSelection(w.create(t.doc,n,s))}}};const sw=(t,e)=>({anchor:Ew(e.selection.anchor,t.type,t.mapping),head:Ew(e.selection.head,t.type,t.mapping)});class rw{constructor(t,e){this.type=t;this.prosemirrorView=e;this.mux=Um();this.isDestroyed=false;this.mapping=new Map;this._observeFunction=this._typeChanged.bind(this);this.doc=t.doc;this.beforeTransactionSelection=null;this.beforeAllTransactions=()=>{if(this.beforeTransactionSelection===null){this.beforeTransactionSelection=sw(this,e.state)}};this.afterAllTransactions=()=>{this.beforeTransactionSelection=null};this.doc.on("beforeAllTransactions",this.beforeAllTransactions);this.doc.on("afterAllTransactions",this.afterAllTransactions);t.observeDeep(this._observeFunction);this._domSelectionInView=null}get _tr(){return this.prosemirrorView.state.tr.setMeta("addToHistory",false)}_isLocalCursorInView(){if(!this.prosemirrorView.hasFocus())return false;if(Qa&&this._domSelectionInView===null){Nd(0,(()=>{this._domSelectionInView=null}));this._domSelectionInView=this._isDomSelectionInView()}return this._domSelectionInView}_isDomSelectionInView(){const t=this.prosemirrorView._root.getSelection();const e=this.prosemirrorView._root.createRange();e.setStart(t.anchorNode,t.anchorOffset);e.setEnd(t.focusNode,t.focusOffset);const i=e.getClientRects();if(i.length===0){if(e.startContainer&&e.collapsed){e.selectNodeContents(e.startContainer)}}const n=e.getBoundingClientRect();const s=Fd.documentElement;return n.bottom>=0&&n.right>=0&&n.left<=(window.innerWidth||s.clientWidth||0)&&n.top<=(window.innerHeight||s.clientHeight||0)}renderSnapshot(t,e){if(!e){e=hg(uf(),new Map)}this.prosemirrorView.dispatch(this._tr.setMeta(Jm,{snapshot:t,prevSnapshot:e}))}unrenderSnapshot(){this.mapping=new Map;this.mux((()=>{const t=this.type.toArray().map((t=>cw(t,this.prosemirrorView.state.schema,this.mapping))).filter((t=>t!==null));const e=this._tr.replace(0,this.prosemirrorView.state.doc.content.size,new T(new N(t),0,0));e.setMeta(Jm,{snapshot:null,prevSnapshot:null});this.prosemirrorView.dispatch(e)}))}_forceRerender(){this.mapping=new Map;this.mux((()=>{const t=this.type.toArray().map((t=>cw(t,this.prosemirrorView.state.schema,this.mapping))).filter((t=>t!==null));const e=this._tr.replace(0,this.prosemirrorView.state.doc.content.size,new T(new N(t),0,0));this.prosemirrorView.dispatch(e.setMeta(Jm,{isChangeOrigin:true}))}))}_renderSnapshot(t,e,i){if(!t){t=lg(this.doc)}this.mapping=new Map;this.mux((()=>{this.doc.transact((n=>{const s=i.permanentUserData;if(s){s.dss.forEach((t=>{rf(n,t,(t=>{}))}))}const r=(t,e)=>{const n=t==="added"?s.getUserByClientId(e.client):s.getUserByDeletedId(e);return{user:n,type:t,color:ew(i.colorMapping,i.colors,n)}};const o=hp(this.type,new cg(e.ds,t.sv)).map((i=>{if(!i._item.deleted||Xm(i._item,t)||Xm(i._item,e)){return cw(i,this.prosemirrorView.state.schema,new Map,t,e,r)}else{return null}})).filter((t=>t!==null));const c=this._tr.replace(0,this.prosemirrorView.state.doc.content.size,new T(new N(o),0,0));this.prosemirrorView.dispatch(c.setMeta(Jm,{isChangeOrigin:true}))}),Jm)}))}_typeChanged(t,e){const i=Jm.getState(this.prosemirrorView.state);if(t.length===0||i.snapshot!=null||i.prevSnapshot!=null){this.renderSnapshot(i.snapshot,i.prevSnapshot);return}this.mux((()=>{const t=(t,e)=>this.mapping.delete(e);rf(e,e.deleteSet,(t=>t.constructor===Pm&&this.mapping.delete(t.content.type)));e.changed.forEach(t);e.changedParentTypes.forEach(t);const i=this.type.toArray().map((t=>ow(t,this.prosemirrorView.state.schema,this.mapping))).filter((t=>t!==null));let n=this._tr.replace(0,this.prosemirrorView.state.doc.content.size,new T(new N(i),0,0));nw(n,this.beforeTransactionSelection,this);n=n.setMeta(Jm,{isChangeOrigin:true});if(this.beforeTransactionSelection!==null&&this._isLocalCursorInView()){n.scrollIntoView()}this.prosemirrorView.dispatch(n)}))}_prosemirrorChanged(t){this.mux((()=>{this.doc.transact((()=>{xw(this.doc,this.type,t,this.mapping);this.beforeTransactionSelection=sw(this,this.prosemirrorView.state)}),Jm)}))}destroy(){this.isDestroyed=true;this.type.unobserveDeep(this._observeFunction);this.doc.off("beforeAllTransactions",this.beforeAllTransactions);this.doc.off("afterAllTransactions",this.afterAllTransactions)}}const ow=(t,e,i,n,s,r)=>{const o=i.get(t);if(o===undefined){if(t instanceof Jp){return cw(t,e,i,n,s,r)}else{throw vu()}}return o};const cw=(t,e,i,n,s,r)=>{const o=[];const c=t=>{if(t.constructor===Jp){const c=ow(t,e,i,n,s,r);if(c!==null){o.push(c)}}else{const c=hw(t,e,i,n,s,r);if(c!==null){c.forEach((t=>{if(t!==null){o.push(t)}}))}}};if(n===undefined||s===undefined){t.toArray().forEach(c)}else{hp(t,new cg(s.ds,n.sv)).forEach(c)}try{const c=t.getAttributes(n);if(n!==undefined){if(!Xm(t._item,n)){c.ychange=r?r("removed",t._item.id):{type:"removed"}}else if(!Xm(t._item,s)){c.ychange=r?r("added",t._item.id):{type:"added"}}}const h=e.node(t.nodeName,c,o);i.set(t,h);return h}catch(e){t.doc.transact((e=>{t._item.delete(e)}),Jm);i.delete(t);return null}};const hw=(t,e,i,n,s,r)=>{const o=[];const c=t.toDelta(n,s,r);try{for(let t=0;t{t._item.delete(e)}),Jm);return null}return o};const lw=(t,e)=>{const i=new em;const n=t.map((t=>({insert:t.text,attributes:kw(t.marks)})));i.applyDelta(n);e.set(i,t);return i};const aw=(t,e)=>{const i=new Jp(t.type.name);for(const e in t.attrs){const n=t.attrs[e];if(n!==null&&e!=="ychange"){i.setAttribute(e,n)}}i.insert(0,gw(t).map((t=>uw(t,e))));e.set(i,t);return i};const uw=(t,e)=>t instanceof Array?lw(t,e):aw(t,e);const dw=t=>typeof t==="object"&&t!==null;const fw=(t,e)=>{const i=Object.keys(t).filter((e=>t[e]!==null));let n=i.length===Object.keys(e).filter((t=>e[t]!==null)).length;for(let s=0;s{const e=t.content.content;const i=[];for(let t=0;t{const i=t.toDelta();return i.length===e.length&&i.every(((t,i)=>t.insert===e[i].text&&za(t.attributes||{}).length===e[i].marks.length&&e[i].marks.every((e=>fw(t.attributes[e.type.name]||{},e.attrs)))))};const mw=(t,e)=>{if(t instanceof Jp&&!(e instanceof Array)&&Cw(t,e)){const i=gw(e);return t._length===i.length&&fw(t.getAttributes(),e.attrs)&&t.toArray().every(((t,e)=>mw(t,i[e])))}return t instanceof em&&e instanceof Array&&pw(t,e)};const ww=(t,e)=>t===e||t instanceof Array&&e instanceof Array&&t.length===e.length&&t.every(((t,i)=>e[i]===t));const bw=(t,e,i)=>{const n=t.toArray();const s=gw(e);const r=s.length;const o=n.length;const c=Ca(o,r);let h=0;let l=0;let a=false;for(;h{let e="";let i=t._start;const n={};while(i!==null){if(!i.deleted){if(i.countable&&i.content instanceof km){e+=i.content.str}else if(i.content instanceof pm){n[i.content.key]=null}}i=i.right}return{str:e,nAttrs:n}};const yw=(t,e,i)=>{i.set(t,e);const{nAttrs:n,str:s}=vw(t);const r=e.map((t=>({insert:t.text,attributes:Object.assign({},n,kw(t.marks))})));const{insert:o,remove:c,index:h}=Zm(s,r.map((t=>t.insert)).join(""));t.delete(h,c);t.insert(h,o);t.applyDelta(r.map((t=>({retain:t.insert.length,attributes:t.attributes}))))};const kw=t=>{const e={};t.forEach((t=>{if(t.type.name!=="ychange"){e[t.type.name]=t.attrs}}));return e};const xw=(t,e,i,n)=>{if(e instanceof Jp&&e.nodeName!==i.type.name){throw new Error("node name mismatch!")}n.set(e,i);if(e instanceof Jp){const t=e.getAttributes();const n=i.attrs;for(const i in n){if(n[i]!==null){if(t[i]!==n[i]&&i!=="ychange"){e.setAttribute(i,n[i])}}else{e.removeAttribute(i)}}for(const i in t){if(n[i]===undefined){e.removeAttribute(i)}}}const s=gw(i);const r=s.length;const o=e.toArray();const c=o.length;const h=Ca(r,c);let l=0;let a=0;for(;l{while(c-l-a>0&&r-l-a>0){const i=o[l];const h=s[l];const u=o[c-a-1];const d=s[r-a-1];if(i instanceof em&&h instanceof Array){if(!pw(i,h)){yw(i,h,n)}l+=1}else{let s=i instanceof Jp&&Cw(i,h);let r=u instanceof Jp&&Cw(u,d);if(s&&r){const t=bw(i,h,n);const e=bw(u,d,n);if(t.foundMappedChild&&!e.foundMappedChild){r=false}else if(!t.foundMappedChild&&e.foundMappedChild){s=false}else if(t.equalityFactor0){e.delete(l,i)}if(l+a!(e instanceof Array)&&t.nodeName===e.type.name;let Sw=null;const Dw=()=>{const t=Sw;Sw=null;t.forEach(((t,e)=>{const i=e.state.tr;const n=Jm.getState(e.state);if(n&&n.binding&&!n.binding.isDestroyed){t.forEach(((t,e)=>{i.setMeta(e,t)}));e.dispatch(i)}}))};const Aw=(t,e,i)=>{if(!Sw){Sw=new Map;Nd(0,Dw)}ua(Sw,t,la).set(e,i)};const Ew=(t,e,i)=>{if(t===0){return sg(e,0)}let n=e._first===null?null:e._first.content.type;while(n!==null&&e!==n){if(n instanceof em){if(n._length>=t){return sg(n,t)}else{t-=n._length}if(n._item!==null&&n._item.next!==null){n=n._item.next.content.type}else{do{n=n._item===null?null:n._item.parent;t--}while(n!==e&&n!==null&&n._item!==null&&n._item.next===null);if(n!==null&&n!==e){n=n._item===null?null:n._item.next.content.type}}}else{const s=(i.get(n)||{nodeSize:0}).nodeSize;if(n._first!==null&&t1){return new Xf(n._item===null?null:n._item.id,n._item===null?Qf(n):null,null)}t-=s;if(n._item!==null&&n._item.next!==null){n=n._item.next.content.type}else{if(t===0){n=n._item===null?n:n._item.parent;return new Xf(n._item===null?null:n._item.id,n._item===null?Qf(n):null,null)}do{n=n._item.parent;t--}while(n!==e&&n._item.next===null);if(n!==e){n=n._item.next.content.type}}}}if(n===null){throw yu()}if(t===0&&n.constructor!==em&&n!==e){return Mw(n._item.parent,n._item)}}return sg(e,e._length)};const Mw=(t,e)=>{let i=null;let n=null;if(t._item===null){n=Qf(t)}else{i=Jf(t._item.id.client,t._item.id.clock)}return new Xf(i,n,e.id)};const Lw=(t,e,i,n)=>{const s=rg(i,t);if(s===null||s.type!==e&&!Yf(e,s.type._item)){return null}let r=s.type;let o=0;if(r.constructor===em){o=s.index}else if(r._item===null||!r._item.deleted){let t=r._first;let e=0;while(e{const e=document.createElement("span");e.classList.add("ProseMirror-yjs-cursor");e.setAttribute("style",`border-color: ${t.color}`);const i=document.createElement("div");i.setAttribute("style",`background-color: ${t.color}`);i.insertBefore(document.createTextNode(t.name),null);const n=document.createTextNode("⁠");const s=document.createTextNode("⁠");e.insertBefore(n,null);e.insertBefore(i,null);e.insertBefore(s,null);return e};const Ow=t=>({style:`background-color: ${t.color}70`,class:`ProseMirror-yjs-selection`});const Fw=/^#[0-9a-fA-F]{6}$/;const Tw=(t,e,i,n)=>{const s=Jm.getState(t);const r=s.doc;const o=[];if(s.snapshot!=null||s.prevSnapshot!=null||s.binding===null){return b.create(t.doc,[])}e.getStates().forEach(((e,c)=>{if(c===r.clientID){return}if(e.cursor!=null){const h=e.user||{};if(h.color==null){h.color="#ffa500"}else if(!Fw.test(h.color)){console.warn("A user uses an unsupported color format",h)}if(h.name==null){h.name=`User: ${c}`}let l=Lw(r,s.type,tg(e.cursor.anchor),s.binding.mapping);let a=Lw(r,s.type,tg(e.cursor.head),s.binding.mapping);if(l!==null&&a!==null){const e=Sa(t.doc.content.size-1,0);l=Ca(l,e);a=Ca(a,e);o.push(y.widget(a,(()=>i(h)),{key:c+"",side:10}));const s=Ca(l,a);const r=Sa(l,a);o.push(y.inline(s,r,n(h),{inclusiveEnd:true,inclusiveStart:false}))}}}));return b.create(t.doc,o)};const Rw=(t,{cursorBuilder:e=_w,selectionBuilder:i=Ow,getSelection:n=(t=>t.selection)}={},s="cursor")=>new o({key:Ym,state:{init(n,s){return Tw(s,t,e,i)},apply(n,s,r,o){const c=Jm.getState(o);const h=n.getMeta(Ym);if(c&&c.isChangeOrigin||h&&h.awarenessUpdated){return Tw(o,t,e,i)}return s.map(n.mapping,n.doc)}},props:{decorations:t=>Ym.getState(t)},view:e=>{const i=()=>{if(e.docView){Aw(e,Ym,{awarenessUpdated:true})}};const r=()=>{const i=Jm.getState(e.state);const r=t.getLocalState()||{};if(i.binding==null){return}if(e.hasFocus()){const o=n(e.state);const c=Ew(o.anchor,i.type,i.binding.mapping);const h=Ew(o.head,i.type,i.binding.mapping);if(r.cursor==null||!og(tg(r.cursor.anchor),c)||!og(tg(r.cursor.head),h)){t.setLocalStateField(s,{anchor:c,head:h})}}else if(r.cursor!=null&&Lw(i.doc,i.type,tg(r.cursor.anchor),i.binding.mapping)!==null){t.setLocalStateField(s,null)}};t.on("change",i);e.dom.addEventListener("focusin",r);e.dom.addEventListener("focusout",r);return{update:r,destroy:()=>{e.dom.removeEventListener("focusin",r);e.dom.removeEventListener("focusout",r);t.off("change",i);t.setLocalStateField(s,null)}}}});const Iw=t=>{const e=Qm.getState(t).undoManager;if(e!=null){e.undo();return true}};const Nw=t=>{const e=Qm.getState(t).undoManager;if(e!=null){e.redo();return true}};const Bw=new Set(["paragraph"]);const Pw=(t,e)=>!(t instanceof Pm)||!(t.content instanceof Om)||!(t.content.type instanceof Up||t.content.type instanceof Jp&&e.has(t.content.type.nodeName))||t.content.type._length===0;const jw=({protectedNodes:t=Bw,trackedOrigins:e=[],undoManager:i=null}={})=>new o({key:Qm,state:{init:(n,s)=>{const r=Jm.getState(s);const o=i||new Ig(r.type,{trackedOrigins:new Set([Jm].concat(e)),deleteFilter:e=>Pw(e,t)});return{undoManager:o,prevSel:null,hasUndoOps:o.undoStack.length>0,hasRedoOps:o.redoStack.length>0}},apply:(t,e,i,n)=>{const s=Jm.getState(n).binding;const r=e.undoManager;const o=r.undoStack.length>0;const c=r.redoStack.length>0;if(s){return{undoManager:r,prevSel:sw(s,i),hasUndoOps:o,hasRedoOps:c}}else{if(o!==e.hasUndoOps||c!==e.hasRedoOps){return Object.assign({},e,{hasUndoOps:r.undoStack.length>0,hasRedoOps:r.redoStack.length>0})}else{return e}}}},view:t=>{const e=Jm.getState(t.state);const i=Qm.getState(t.state).undoManager;i.on("stack-item-added",(({stackItem:i})=>{const n=e.binding;if(n){i.meta.set(n,Qm.getState(t.state).prevSel)}}));i.on("stack-item-popped",(({stackItem:t})=>{const i=e.binding;if(i){i.beforeTransactionSelection=t.meta.get(i)||i.beforeTransactionSelection}}));return{destroy:()=>{i.destroy()}}}});const $w=r.create({name:"collaboration",priority:1e3,addOptions(){return{document:null,field:"default",fragment:null}},onCreate(){if(this.editor.extensionManager.extensions.find((t=>t.name==="history"))){console.warn('[tiptap warn]: "@tiptap/extension-collaboration" comes with its own history support and is not compatible with "@tiptap/extension-history".')}},addCommands(){return{undo:()=>({tr:t,state:e,dispatch:i})=>{t.setMeta("preventDispatch",true);const n=Qm.getState(e).undoManager;if(n.undoStack.length===0){return false}if(!i){return true}return Iw(e)},redo:()=>({tr:t,state:e,dispatch:i})=>{t.setMeta("preventDispatch",true);const n=Qm.getState(e).undoManager;if(n.redoStack.length===0){return false}if(!i){return true}return Nw(e)}}},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Mod-y":()=>this.editor.commands.redo(),"Shift-Mod-z":()=>this.editor.commands.redo()}},addProseMirrorPlugins(){const t=this.options.fragment?this.options.fragment:this.options.document.getXmlFragment(this.options.field);const e=jw();const i=e.spec.view;e.spec.view=t=>{const{undoManager:e}=Qm.getState(t.state);if(e.restore){e.restore();e.restore=()=>{}}const n=i(t);return{destroy:()=>{const t=e.trackedOrigins.has(e);const i=e._observers;e.restore=()=>{if(t){e.trackedOrigins.add(e)}e.doc.on("afterTransaction",e.afterTransactionHandler);e._observers=i};n.destroy()}}};return[iw(t),e]}});const zw=t=>Array.from(t.entries()).map((([t,e])=>({clientId:t,...e.user})));const Hw=()=>null;const Ww=r.create({name:"collaborationCursor",addOptions(){return{provider:null,user:{name:null,color:null},render:t=>{const e=document.createElement("span");e.classList.add("collaboration-cursor__caret");e.setAttribute("style",`border-color: ${t.color}`);const i=document.createElement("div");i.classList.add("collaboration-cursor__label");i.setAttribute("style",`background-color: ${t.color}`);i.insertBefore(document.createTextNode(t.name),null);e.insertBefore(i,null);return e},onUpdate:Hw}},onCreate(){if(this.options.onUpdate!==Hw){console.warn('[tiptap warn]: DEPRECATED: The "onUpdate" option is deprecated. Please use `editor.storage.collaborationCursor.users` instead. Read more: https://tiptap.dev/api/extensions/collaboration-cursor')}},addStorage(){return{users:[]}},addCommands(){return{updateUser:t=>()=>{this.options.user=t;this.options.provider.awareness.setLocalStateField("user",this.options.user);return true},user:t=>({editor:e})=>{console.warn('[tiptap warn]: DEPRECATED: The "user" command is deprecated. Please use "updateUser" instead. Read more: https://tiptap.dev/api/extensions/collaboration-cursor');return e.commands.updateUser(t)}}},addProseMirrorPlugins(){return[Rw((()=>{this.options.provider.awareness.setLocalStateField("user",this.options.user);this.storage.users=zw(this.options.provider.awareness.states);this.options.provider.awareness.on("update",(()=>{this.storage.users=zw(this.options.provider.awareness.states)}));return this.options.provider.awareness})(),{cursorBuilder:this.options.render})]}});const Vw=t=>t.toLowerCase();const Uw=/^\s*/g;const qw=t=>t.replace(Uw,"");const Kw=/([A-Z])/g;const Gw=(t,e)=>qw(t.replace(Kw,(t=>`${e}${Vw(t)}`)));const Zw=t=>{const e=unescape(encodeURIComponent(t));const i=e.length;const n=new Uint8Array(i);for(let t=0;tJw.encode(t);const Yw=Jw?Qw:Zw;let Xw=typeof TextDecoder==="undefined"?null:new TextDecoder("utf-8",{fatal:true,ignoreBOM:true});if(Xw&&Xw.decode(new Uint8Array).length===1){Xw=null}const tb=()=>new Map;const eb=t=>t===undefined?null:t;class ib{constructor(){this.map=new Map}setItem(t,e){this.map.set(t,e)}getItem(t){return this.map.get(t)}}let nb=new ib;try{if(typeof localStorage!=="undefined"){nb=localStorage}}catch(t){}const sb=nb;const rb=(t,e)=>e.includes(t);const ob=typeof process!=="undefined"&&process.release&&/node|io\.js/.test(process.release.name);typeof navigator!=="undefined"?/Mac/.test(navigator.platform):false;let cb;const hb=()=>{if(cb===undefined){if(ob){cb=tb();const t=process.argv;let e=null;for(let i=0;i{if(t.length!==0){const[e,i]=t.split("=");cb.set(`--${Gw(e,"-")}`,i);cb.set(`-${Gw(e,"-")}`,i)}}))}else{cb=tb()}}return cb};const lb=t=>hb().has(t);const ab=t=>ob?eb(process.env[t.toUpperCase()]):eb(sb.getItem(t));const ub=t=>lb("--"+t)||ab(t)!==null;ub("production");const db=ob&&rb(process.env.FORCE_COLOR,["true","1","2"]);!lb("no-colors")&&(!ob||process.stdout.isTTY||db)&&(!ob||lb("color")||db||ab("COLORTERM")!==null||(ab("TERM")||"").includes("color"));const fb=128;const gb=127;const pb=Math.floor;const mb=(t,e)=>tt>e?t:e;const bb=Number.MAX_SAFE_INTEGER;const vb=t=>new Error(t);const yb=vb("Unexpected end of array");const kb=vb("Integer out of Range");const xb=(t,e)=>{const i=Lb(t.arr.buffer,t.pos+t.arr.byteOffset,e);t.pos+=e;return i};const Cb=t=>xb(t,Db(t));const Sb=t=>t.arr[t.pos++];const Db=t=>{let e=0;let i=1;const n=t.arr.length;while(t.posbb){throw kb}}throw yb};const Ab=t=>{let e=Db(t);if(e===0){return""}else{let i=String.fromCodePoint(Sb(t));if(--e<100){while(e--){i+=String.fromCodePoint(Sb(t))}}else{while(e>0){const n=e<1e4?e:1e4;const s=t.arr.subarray(t.pos,t.pos+n);t.pos+=n;i+=String.fromCodePoint.apply(null,s);e-=n}}return decodeURIComponent(escape(i))}};const Eb=t=>Xw.decode(Cb(t));const Mb=Xw?Eb:Ab;const Lb=(t,e,i)=>new Uint8Array(t,e,i);const _b=(t,e)=>{const i=t.cbuf.length;if(t.cpos===i){t.bufs.push(t.cbuf);t.cbuf=new Uint8Array(i*2);t.cpos=0}t.cbuf[t.cpos++]=e};const Ob=(t,e)=>{while(e>gb){_b(t,fb|gb&e);e=pb(e/128)}_b(t,gb&e)};const Fb=new Uint8Array(3e4);const Tb=Fb.length/3;const Rb=(t,e)=>{if(e.length{const i=unescape(encodeURIComponent(e));const n=i.length;Ob(t,n);for(let e=0;e{const i=t.cbuf.length;const n=t.cpos;const s=mb(i-n,e.length);const r=e.length-s;t.cbuf.set(e.subarray(0,s),n);t.cpos+=s;if(r>0){t.bufs.push(t.cbuf);t.cbuf=new Uint8Array(wb(i*2,r));t.cbuf.set(e.subarray(s));t.cpos=r}};const Pb=(t,e)=>{Ob(t,e.byteLength);Bb(t,e)};var jb;(function(t){t[t["Token"]=0]="Token";t[t["PermissionDenied"]=1]="PermissionDenied";t[t["Authenticated"]=2]="Authenticated"})(jb||(jb={}));const $b=(t,e)=>{Ob(t,jb.Token);Nb(t,e)};const zb=(t,e,i)=>{switch(Db(t)){case jb.PermissionDenied:{e(Mb(t));break}case jb.Authenticated:{i();break}}};const Hb={code:4401,reason:"Unauthorized"};const Wb={code:4403,reason:"Forbidden"};const Vb=t=>Array.from(t.entries()).map((([t,e])=>({clientId:t,...e})));var Ub;(function(t){t[t["Connecting"]=0]="Connecting";t[t["Open"]=1]="Open";t[t["Closing"]=2]="Closing";t[t["Closed"]=3]="Closed"})(Ub||(Ub={}));function qb(t){if(!t){t={}}return{delay:t.delay===undefined?200:t.delay,initialDelay:t.initialDelay===undefined?0:t.initialDelay,minDelay:t.minDelay===undefined?0:t.minDelay,maxDelay:t.maxDelay===undefined?0:t.maxDelay,factor:t.factor===undefined?0:t.factor,maxAttempts:t.maxAttempts===undefined?3:t.maxAttempts,timeout:t.timeout===undefined?0:t.timeout,jitter:t.jitter===true,handleError:t.handleError===undefined?null:t.handleError,handleTimeout:t.handleTimeout===undefined?null:t.handleTimeout,beforeAttempt:t.beforeAttempt===undefined?null:t.beforeAttempt,calculateDelay:t.calculateDelay===undefined?null:t.calculateDelay}}async function Kb(t){return new Promise(((e,i)=>{setTimeout(e,t)}))}function Gb(t,e){let i=e.delay;if(i===0){return 0}if(e.factor){i*=Math.pow(e.factor,t.attemptNum-1);if(e.maxDelay!==0){i=Math.min(i,e.maxDelay)}}if(e.jitter){const t=Math.ceil(e.minDelay);const n=Math.floor(i);i=Math.floor(Math.random()*(n-t+1))+t}return Math.round(i)}async function Zb(t,e){const i=qb(e);for(const t of["delay","initialDelay","minDelay","maxDelay","maxAttempts","timeout"]){const e=i[t];if(!Number.isInteger(e)||e<0){throw new Error(`Value for ${t} must be an integer greater than or equal to 0`)}}if(i.factor.constructor!==Number||i.factor<0){throw new Error(`Value for factor must be a number greater than or equal to 0`)}if(i.delay{if(i.handleError){await i.handleError(t,n,i)}if(n.aborted||n.attemptsRemaining===0){throw t}n.attemptNum++;const e=s(n,i);if(e){await Kb(e)}return r()};if(n.attemptsRemaining>0){n.attemptsRemaining--}if(i.timeout){return new Promise(((s,r)=>{const o=setTimeout((()=>{if(i.handleTimeout){try{s(i.handleTimeout(n,i))}catch(t){r(t)}}else{const t=new Error(`Retry timeout (attemptNum: ${n.attemptNum}, timeout: ${i.timeout})`);t.code="ATTEMPT_TIMEOUT";r(t)}}),i.timeout);t(n,i).then((t=>{clearTimeout(o);s(t)})).catch((t=>{clearTimeout(o);e(t).then(s).catch(r)}))}))}else{return t(n,i).catch(e)}}const o=i.calculateDelay?i.calculateDelay(n,i):i.initialDelay;if(o){await Kb(o)}return r()}const Jb=()=>new Map;const Qb=(t,e,i)=>{let n=t.get(e);if(n===undefined){t.set(e,n=i())}return n};const Yb=()=>new Set;const Xb=String.fromCharCode;const tv=t=>t.toLowerCase();const ev=/^\s*/g;const iv=t=>t.replace(ev,"");const nv=/([A-Z])/g;const sv=(t,e)=>iv(t.replace(nv,(t=>`${e}${tv(t)}`)));const rv=t=>{const e=unescape(encodeURIComponent(t));const i=e.length;const n=new Uint8Array(i);for(let t=0;tov.encode(t);const hv=ov?cv:rv;let lv=typeof TextDecoder==="undefined"?null:new TextDecoder("utf-8",{fatal:true,ignoreBOM:true});if(lv&&lv.decode(new Uint8Array).length===1){lv=null}const av=t=>t===undefined?null:t;class uv{constructor(){this.map=new Map}setItem(t,e){this.map.set(t,e)}getItem(t){return this.map.get(t)}}let dv=new uv;let fv=true;try{if(typeof localStorage!=="undefined"){dv=localStorage;fv=false}}catch(t){}const gv=dv;const pv=t=>fv||addEventListener("storage",t);const mv=t=>fv||removeEventListener("storage",t);const wv=Array.from;const bv=Object.keys;const vv=(t,e)=>{const i=[];for(const n in t){i.push(e(t[n],n))}return i};const yv=t=>bv(t).length;const kv=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);const xv=(t,e)=>t===e;const Cv=(t,e)=>{if(t==null||e==null){return xv(t,e)}if(t.constructor!==e.constructor){return false}if(t===e){return true}switch(t.constructor){case ArrayBuffer:t=new Uint8Array(t);e=new Uint8Array(e);case Uint8Array:{if(t.byteLength!==e.byteLength){return false}for(let i=0;ie.includes(t);const Dv=typeof process!=="undefined"&&process.release&&/node|io\.js/.test(process.release.name);const Av=typeof window!=="undefined"&&typeof document!=="undefined"&&!Dv;typeof navigator!=="undefined"?/Mac/.test(navigator.platform):false;let Ev;const Mv=()=>{if(Ev===undefined){if(Dv){Ev=Jb();const t=process.argv;let e=null;for(let i=0;i{if(t.length!==0){const[e,i]=t.split("=");Ev.set(`--${sv(e,"-")}`,i);Ev.set(`-${sv(e,"-")}`,i)}}))}else{Ev=Jb()}}return Ev};const Lv=t=>Mv().has(t);const _v=t=>Dv?av(process.env[t.toUpperCase()]):av(gv.getItem(t));const Ov=t=>Lv("--"+t)||_v(t)!==null;Ov("production");const Fv=Dv&&Sv(process.env.FORCE_COLOR,["true","1","2"]);!Lv("no-colors")&&(!Dv||process.stdout.isTTY||Fv)&&(!Dv||Lv("color")||Fv||_v("COLORTERM")!==null||(_v("TERM")||"").includes("color"));const Tv=Math.floor;const Rv=(t,e)=>tt>e?t:e;const Nv=128;const Bv=127;const Pv=Number.MAX_SAFE_INTEGER;class jv{constructor(){this.cpos=0;this.cbuf=new Uint8Array(100);this.bufs=[]}}const $v=()=>new jv;const zv=t=>{let e=t.cpos;for(let i=0;i{const e=new Uint8Array(zv(t));let i=0;for(let n=0;n{const i=t.cbuf.length;if(t.cpos===i){t.bufs.push(t.cbuf);t.cbuf=new Uint8Array(i*2);t.cpos=0}t.cbuf[t.cpos++]=e};const Vv=(t,e)=>{while(e>Bv){Wv(t,Nv|Bv&e);e=Tv(e/128)}Wv(t,Bv&e)};const Uv=new Uint8Array(3e4);const qv=Uv.length/3;const Kv=(t,e)=>{if(e.length{const i=unescape(encodeURIComponent(e));const n=i.length;Vv(t,n);for(let e=0;e{const i=t.cbuf.length;const n=t.cpos;const s=Rv(i-n,e.length);const r=e.length-s;t.cbuf.set(e.subarray(0,s),n);t.cpos+=s;if(r>0){t.bufs.push(t.cbuf);t.cbuf=new Uint8Array(Iv(i*2,r));t.cbuf.set(e.subarray(s));t.cpos=r}};const Qv=(t,e)=>{Vv(t,e.byteLength);Jv(t,e)};const Yv=t=>new Error(t);const Xv=Yv("Unexpected end of array");const ty=Yv("Integer out of Range");class ey{constructor(t){this.arr=t;this.pos=0}}const iy=t=>new ey(t);const ny=(t,e)=>{const i=uy(t.arr.buffer,t.pos+t.arr.byteOffset,e);t.pos+=e;return i};const sy=t=>ny(t,oy(t));const ry=t=>t.arr[t.pos++];const oy=t=>{let e=0;let i=1;const n=t.arr.length;while(t.posPv){throw ty}}throw Xv};const cy=t=>{let e=oy(t);if(e===0){return""}else{let i=String.fromCodePoint(ry(t));if(--e<100){while(e--){i+=String.fromCodePoint(ry(t))}}else{while(e>0){const n=e<1e4?e:1e4;const s=t.arr.subarray(t.pos,t.pos+n);t.pos+=n;i+=String.fromCodePoint.apply(null,s);e-=n}}return decodeURIComponent(escape(i))}};const hy=t=>lv.decode(sy(t));const ly=lv?hy:cy;const ay=t=>new Uint8Array(t);const uy=(t,e,i)=>new Uint8Array(t,e,i);const dy=t=>new Uint8Array(t);const fy=t=>{let e="";for(let i=0;iBuffer.from(t.buffer,t.byteOffset,t.byteLength).toString("base64");const py=t=>{const e=atob(t);const i=ay(e.length);for(let t=0;t{const e=Buffer.from(t,"base64");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)};const wy=Av?fy:gy;const by=Av?py:my;const vy=new Map;class yy{constructor(t){this.room=t;this.onmessage=null;this._onChange=e=>e.key===t&&this.onmessage!==null&&this.onmessage({data:by(e.newValue||"")});pv(this._onChange)}postMessage(t){gv.setItem(this.room,wy(dy(t)))}close(){mv(this._onChange)}}const ky=typeof BroadcastChannel==="undefined"?yy:BroadcastChannel;const xy=t=>Qb(vy,t,(()=>{const e=Yb();const i=new ky(t);i.onmessage=t=>e.forEach((e=>e(t.data,"broadcastchannel")));return{bc:i,subs:e}}));const Cy=(t,e)=>{xy(t).subs.add(e);return e};const Sy=(t,e)=>{const i=xy(t);const n=i.subs.delete(e);if(n&&i.subs.size===0){i.bc.close();vy.delete(t)}return n};const Dy=(t,e,i=null)=>{const n=xy(t);n.bc.postMessage(e);n.subs.forEach((t=>t(e,i)))};const Ay=Date.now;class Ey{constructor(){this._observers=Jb()}on(t,e){Qb(this._observers,t,Yb).add(e)}once(t,e){const i=(...n)=>{this.off(t,i);e(...n)};this.on(t,i)}off(t,e){const i=this._observers.get(t);if(i!==undefined){i.delete(e);if(i.size===0){this._observers.delete(t)}}}emit(t,e){return wv((this._observers.get(t)||Jb()).values()).forEach((t=>t(...e)))}destroy(){this._observers=Jb()}}const My=3e4;class Ly extends Ey{constructor(t){super();this.doc=t;this.clientID=t.clientID;this.states=new Map;this.meta=new Map;this._checkInterval=setInterval((()=>{const t=Ay();if(this.getLocalState()!==null&&My/2<=t-this.meta.get(this.clientID).lastUpdated){this.setLocalState(this.getLocalState())}const e=[];this.meta.forEach(((i,n)=>{if(n!==this.clientID&&My<=t-i.lastUpdated&&this.states.has(n)){e.push(n)}}));if(e.length>0){_y(this,e,"timeout")}}),Tv(My/10));t.on("destroy",(()=>{this.destroy()}));this.setLocalState({})}destroy(){this.emit("destroy",[this]);this.setLocalState(null);super.destroy();clearInterval(this._checkInterval)}getLocalState(){return this.states.get(this.clientID)||null}setLocalState(t){const e=this.clientID;const i=this.meta.get(e);const n=i===undefined?0:i.clock+1;const s=this.states.get(e);if(t===null){this.states.delete(e)}else{this.states.set(e,t)}this.meta.set(e,{clock:n,lastUpdated:Ay()});const r=[];const o=[];const c=[];const h=[];if(t===null){h.push(e)}else if(s==null){if(t!=null){r.push(e)}}else{o.push(e);if(!Cv(s,t)){c.push(e)}}if(r.length>0||c.length>0||h.length>0){this.emit("change",[{added:r,updated:c,removed:h},"local"])}this.emit("update",[{added:r,updated:o,removed:h},"local"])}setLocalStateField(t,e){const i=this.getLocalState();if(i!==null){this.setLocalState({...i,[t]:e})}}getStates(){return this.states}}const _y=(t,e,i)=>{const n=[];for(let i=0;i0){t.emit("change",[{added:[],updated:[],removed:n},i]);t.emit("update",[{added:[],updated:[],removed:n},i])}};const Oy=(t,e,i=t.states)=>{const n=e.length;const s=$v();Vv(s,n);for(let r=0;r{const n=iy(e);const s=Ay();const r=[];const o=[];const c=[];const h=[];const l=oy(n);for(let e=0;e0||c.length>0||h.length>0){t.emit("change",[{added:r,updated:c,removed:h},i])}if(r.length>0||o.length>0||h.length>0){t.emit("update",[{added:r,updated:o,removed:h},i])}};const Ty=()=>{let t=true;return(e,i)=>{if(t){t=false;try{e()}finally{t=true}}else if(i!==undefined){i()}}};class Ry{constructor(){this.callbacks={}}on(t,e){if(!this.callbacks[t]){this.callbacks[t]=[]}this.callbacks[t].push(e);return this}emit(t,...e){const i=this.callbacks[t];if(i){i.forEach((t=>t.apply(this,e)))}return this}off(t,e){const i=this.callbacks[t];if(i){if(e){this.callbacks[t]=i.filter((t=>t!==e))}else{delete this.callbacks[t]}}return this}removeAllListeners(){this.callbacks={}}}class Iy{constructor(t){this.data=t;this.encoder=$v();this.decoder=iy(new Uint8Array(this.data))}readVarUint(){return oy(this.decoder)}readVarString(){return ly(this.decoder)}readVarUint8Array(){return sy(this.decoder)}writeVarUint(t){return Vv(this.encoder,t)}writeVarString(t){return Zv(this.encoder,t)}writeVarUint8Array(t){return Qv(this.encoder,t)}length(){return zv(this.encoder)}}const Ny=0;const By=1;const Py=2;const jy=(t,e)=>{Vv(t,Ny);const i=Hf(e);Qv(t,i)};const $y=(t,e,i)=>{Vv(t,By);Qv(t,Nf(e,i))};const zy=(t,e,i)=>$y(e,i,sy(t));const Hy=(t,e,i)=>{try{Tf(e,sy(t),i)}catch(t){console.error("Caught error while handling a Yjs update",t)}};const Wy=(t,e)=>{Vv(t,Py);Qv(t,e)};const Vy=Hy;const Uy=(t,e,i,n)=>{const s=oy(t);switch(s){case Ny:zy(t,e,i);break;case By:Hy(t,i,n);break;case Py:Vy(t,i,n);break;default:throw new Error("Unknown message type")}return s};var qy;(function(t){t[t["Sync"]=0]="Sync";t[t["Awareness"]=1]="Awareness";t[t["Auth"]=2]="Auth";t[t["QueryAwareness"]=3]="QueryAwareness";t[t["Stateless"]=5]="Stateless";t[t["CLOSE"]=7]="CLOSE"})(qy||(qy={}));var Ky;(function(t){t["Connecting"]="connecting";t["Connected"]="connected";t["Disconnected"]="disconnected"})(Ky||(Ky={}));class Gy{constructor(){this.encoder=$v()}get(t){return t.encoder}toUint8Array(){return Hv(this.encoder)}}class Zy{constructor(t){this.broadcasted=false;this.message=t}setBroadcasted(t){this.broadcasted=t;return this}apply(t,e=true){const{message:i}=this;const n=i.readVarUint();const s=i.length();switch(n){case qy.Sync:this.applySyncMessage(t,e);break;case qy.Awareness:this.applyAwarenessMessage(t);break;case qy.Auth:this.applyAuthMessage(t);break;case qy.QueryAwareness:this.applyQueryAwarenessMessage(t);break;case qy.Stateless:t.receiveStateless(ly(i.decoder));break;default:throw new Error(`Can’t apply message of unknown type: ${n}`)}if(i.length()>s+1){if(this.broadcasted){t.broadcast(Gy,{encoder:i.encoder})}else{t.send(Gy,{encoder:i.encoder})}}}applySyncMessage(t,e){const{message:i}=this;i.writeVarUint(qy.Sync);const n=Uy(i.decoder,i.encoder,t.document,t);if(e&&n===By){t.synced=true}if(n===Py||n===By){if(t.unsyncedChanges>0){t.updateUnsyncedChanges(-1)}}}applyAwarenessMessage(t){const{message:e}=this;Fy(t.awareness,e.readVarUint8Array(),t)}applyAuthMessage(t){const{message:e}=this;zb(e.decoder,t.permissionDeniedHandler.bind(t),t.authenticatedHandler.bind(t))}applyQueryAwarenessMessage(t){const{message:e}=this;e.writeVarUint(qy.Awareness);e.writeVarUint8Array(Oy(t.awareness,Array.from(t.awareness.getStates().keys())))}}class Jy{constructor(t,e={}){this.message=new t;this.encoder=this.message.get(e)}create(){return Hv(this.encoder)}send(t){t===null||t===void 0?void 0:t.send(this.create())}broadcast(t){Dy(t,this.create())}}class Qy extends Gy{constructor(){super(...arguments);this.type=qy.Sync;this.description="First sync step"}get(t){if(typeof t.document==="undefined"){throw new Error("The sync step one message requires document as an argument")}Zv(this.encoder,t.documentName);Vv(this.encoder,this.type);jy(this.encoder,t.document);return this.encoder}}class Yy extends Gy{constructor(){super(...arguments);this.type=qy.Sync;this.description="Second sync step"}get(t){if(typeof t.document==="undefined"){throw new Error("The sync step two message requires document as an argument")}Zv(this.encoder,t.documentName);Vv(this.encoder,this.type);$y(this.encoder,t.document);return this.encoder}}class Xy extends Gy{constructor(){super(...arguments);this.type=qy.QueryAwareness;this.description="Queries awareness states"}get(t){console.log("queryAwareness: writing string docName",t.documentName);console.log(this.encoder.cpos);Zv(this.encoder,t.documentName);Vv(this.encoder,this.type);return this.encoder}}class tk extends Gy{constructor(){super(...arguments);this.type=qy.Auth;this.description="Authentication"}get(t){if(typeof t.token==="undefined"){throw new Error("The authentication message requires `token` as an argument.")}Zv(this.encoder,t.documentName);Vv(this.encoder,this.type);$b(this.encoder,t.token);return this.encoder}}class ek extends Gy{constructor(){super(...arguments);this.type=qy.Awareness;this.description="Awareness states update"}get(t){if(typeof t.awareness==="undefined"){throw new Error("The awareness message requires awareness as an argument")}if(typeof t.clients==="undefined"){throw new Error("The awareness message requires clients as an argument")}Zv(this.encoder,t.documentName);Vv(this.encoder,this.type);let e;if(t.states===undefined){e=Oy(t.awareness,t.clients)}else{e=Oy(t.awareness,t.clients,t.states)}Qv(this.encoder,e);return this.encoder}}class ik extends Gy{constructor(){super(...arguments);this.type=qy.Sync;this.description="A document update"}get(t){Zv(this.encoder,t.documentName);Vv(this.encoder,this.type);Wy(this.encoder,t.update);return this.encoder}}const nk=t=>vv(t,((t,e)=>`${encodeURIComponent(e)}=${encodeURIComponent(t)}`)).join("&");class sk extends Ry{constructor(t){super();this.configuration={url:"",document:undefined,awareness:undefined,WebSocketPolyfill:undefined,parameters:{},connect:true,broadcast:true,forceSyncInterval:false,messageReconnectTimeout:3e4,delay:1e3,initialDelay:0,factor:2,maxAttempts:0,minDelay:1e3,maxDelay:3e4,jitter:true,timeout:0,onOpen:()=>null,onConnect:()=>null,onMessage:()=>null,onOutgoingMessage:()=>null,onStatus:()=>null,onDisconnect:()=>null,onClose:()=>null,onDestroy:()=>null,onAwarenessUpdate:()=>null,onAwarenessChange:()=>null,quiet:false};this.subscribedToBroadcastChannel=false;this.webSocket=null;this.shouldConnect=true;this.status=Ky.Disconnected;this.lastMessageReceived=0;this.mux=Ty();this.intervals={forceSync:null,connectionChecker:null};this.connectionAttempt=null;this.receivedOnOpenPayload=undefined;this.receivedOnStatusPayload=undefined;this.boundConnect=this.connect.bind(this);this.setConfiguration(t);this.configuration.WebSocketPolyfill=t.WebSocketPolyfill?t.WebSocketPolyfill:WebSocket;this.on("open",this.configuration.onOpen);this.on("open",this.onOpen.bind(this));this.on("connect",this.configuration.onConnect);this.on("message",this.configuration.onMessage);this.on("outgoingMessage",this.configuration.onOutgoingMessage);this.on("status",this.configuration.onStatus);this.on("status",this.onStatus.bind(this));this.on("disconnect",this.configuration.onDisconnect);this.on("close",this.configuration.onClose);this.on("destroy",this.configuration.onDestroy);this.on("awarenessUpdate",this.configuration.onAwarenessUpdate);this.on("awarenessChange",this.configuration.onAwarenessChange);this.on("close",this.onClose.bind(this));this.on("message",this.onMessage.bind(this));this.registerEventListeners();this.intervals.connectionChecker=setInterval(this.checkConnection.bind(this),this.configuration.messageReconnectTimeout/10);if(typeof t.connect!=="undefined"){this.shouldConnect=t.connect}if(!this.shouldConnect){return}this.connect()}async onOpen(t){this.receivedOnOpenPayload=t}async onStatus(t){this.receivedOnStatusPayload=t}attach(t){if(this.receivedOnOpenPayload){t.onOpen(this.receivedOnOpenPayload)}if(this.receivedOnStatusPayload){t.onStatus(this.receivedOnStatusPayload)}}detach(t){}setConfiguration(t={}){this.configuration={...this.configuration,...t}}async connect(){if(this.status===Ky.Connected){return}if(this.cancelWebsocketRetry){this.cancelWebsocketRetry();this.cancelWebsocketRetry=undefined}this.shouldConnect=true;const t=()=>{let t=false;const e=Zb(this.createWebSocketConnection.bind(this),{delay:this.configuration.delay,initialDelay:this.configuration.initialDelay,factor:this.configuration.factor,maxAttempts:this.configuration.maxAttempts,minDelay:this.configuration.minDelay,maxDelay:this.configuration.maxDelay,jitter:this.configuration.jitter,timeout:this.configuration.timeout,beforeAttempt:e=>{if(!this.shouldConnect||t){e.abort()}}}).catch((t=>{if(t&&t.code!=="ATTEMPT_ABORTED"){throw t}}));return{retryPromise:e,cancelFunc:()=>{t=true}}};const{retryPromise:e,cancelFunc:i}=t();this.cancelWebsocketRetry=i;return e}createWebSocketConnection(){return new Promise(((t,e)=>{if(this.webSocket){this.webSocket.close();this.webSocket=null}const i=new this.configuration.WebSocketPolyfill(this.url);i.binaryType="arraybuffer";i.onmessage=t=>this.emit("message",t);i.onclose=t=>this.emit("close",{event:t});i.onopen=t=>this.emit("open",t);i.onerror=t=>{e(t)};this.webSocket=i;this.status=Ky.Connecting;this.emit("status",{status:Ky.Connecting});this.connectionAttempt={resolve:t,reject:e}}))}onMessage(t){this.resolveConnectionAttempt()}resolveConnectionAttempt(){if(this.connectionAttempt){this.connectionAttempt.resolve();this.connectionAttempt=null;this.status=Ky.Connected;this.emit("status",{status:Ky.Connected});this.emit("connect")}}stopConnectionAttempt(){this.connectionAttempt=null}rejectConnectionAttempt(){var t;(t=this.connectionAttempt)===null||t===void 0?void 0:t.reject();this.connectionAttempt=null}checkConnection(){var t;if(this.status!==Ky.Connected){return}if(!this.lastMessageReceived){return}if(this.configuration.messageReconnectTimeout>=Ay()-this.lastMessageReceived){return}(t=this.webSocket)===null||t===void 0?void 0:t.close()}registerEventListeners(){if(typeof window==="undefined"){return}window.addEventListener("online",this.boundConnect)}get serverUrl(){while(this.configuration.url[this.configuration.url.length-1]==="/"){return this.configuration.url.slice(0,this.configuration.url.length-1)}return this.configuration.url}get url(){const t=nk(this.configuration.parameters);return`${this.serverUrl}${t.length===0?"":`?${t}`}`}disconnect(){this.shouldConnect=false;if(this.webSocket===null){return}try{this.webSocket.close()}catch{}}send(t){var e;if(((e=this.webSocket)===null||e===void 0?void 0:e.readyState)===Ub.Open){this.webSocket.send(t)}}onClose({event:t}){this.webSocket=null;if(this.status===Ky.Connected){this.status=Ky.Disconnected;this.emit("status",{status:Ky.Disconnected});this.emit("disconnect",{event:t})}if(t.code===Hb.code){if(t.reason===Hb.reason){console.warn("[HocuspocusProvider] An authentication token is required, but you didn’t send one. Try adding a `token` to your HocuspocusProvider configuration. Won’t try again.")}else{console.warn(`[HocuspocusProvider] Connection closed with status Unauthorized: ${t.reason}`)}this.shouldConnect=false}if(t.code===Wb.code){if(!this.configuration.quiet){console.warn("[HocuspocusProvider] The provided authentication token isn’t allowed to connect to this server. Will try again.");return}}if(this.connectionAttempt){this.rejectConnectionAttempt()}else if(this.shouldConnect){this.connect()}if(this.shouldConnect){return}if(this.status===Ky.Disconnected){return}this.status=Ky.Disconnected;this.emit("status",{status:Ky.Disconnected});this.emit("disconnect",{event:t})}destroy(){this.emit("destroy");if(this.intervals.forceSync){clearInterval(this.intervals.forceSync)}clearInterval(this.intervals.connectionChecker);this.stopConnectionAttempt();this.disconnect();this.removeAllListeners();if(typeof window==="undefined"){return}window.removeEventListener("online",this.boundConnect)}}class rk extends Gy{constructor(){super(...arguments);this.type=qy.Stateless;this.description="A stateless message"}get(t){var e;Zv(this.encoder,t.documentName);Vv(this.encoder,this.type);Zv(this.encoder,(e=t.payload)!==null&&e!==void 0?e:"");return this.encoder}}class ok extends Gy{constructor(){super(...arguments);this.type=qy.CLOSE;this.description="Ask the server to close the connection"}get(t){Zv(this.encoder,t.documentName);Vv(this.encoder,this.type);return this.encoder}}class ck extends Ry{constructor(t){super();this.configuration={name:"",document:undefined,awareness:undefined,token:null,parameters:{},broadcast:true,forceSyncInterval:false,onAuthenticated:()=>null,onAuthenticationFailed:()=>null,onOpen:()=>null,onConnect:()=>null,onMessage:()=>null,onOutgoingMessage:()=>null,onStatus:()=>null,onSynced:()=>null,onDisconnect:()=>null,onClose:()=>null,onDestroy:()=>null,onAwarenessUpdate:()=>null,onAwarenessChange:()=>null,onStateless:()=>null,quiet:false};this.subscribedToBroadcastChannel=false;this.isSynced=false;this.unsyncedChanges=0;this.status=Ky.Disconnected;this.isAuthenticated=false;this.mux=Ty();this.intervals={forceSync:null};this.isConnected=true;this.boundBeforeUnload=this.beforeUnload.bind(this);this.boundBroadcastChannelSubscriber=this.broadcastChannelSubscriber.bind(this);this.setConfiguration(t);this.configuration.document=t.document?t.document:new wf;this.configuration.awareness=t.awareness?t.awareness:new Ly(this.document);this.on("open",this.configuration.onOpen);this.on("message",this.configuration.onMessage);this.on("outgoingMessage",this.configuration.onOutgoingMessage);this.on("synced",this.configuration.onSynced);this.on("destroy",this.configuration.onDestroy);this.on("awarenessUpdate",this.configuration.onAwarenessUpdate);this.on("awarenessChange",this.configuration.onAwarenessChange);this.on("stateless",this.configuration.onStateless);this.on("authenticated",this.configuration.onAuthenticated);this.on("authenticationFailed",this.configuration.onAuthenticationFailed);this.configuration.websocketProvider.on("connect",this.configuration.onConnect);this.configuration.websocketProvider.on("connect",(t=>this.emit("connect",t)));this.configuration.websocketProvider.on("open",this.onOpen.bind(this));this.configuration.websocketProvider.on("open",(t=>this.emit("open",t)));this.configuration.websocketProvider.on("message",this.onMessage.bind(this));this.configuration.websocketProvider.on("close",this.onClose.bind(this));this.configuration.websocketProvider.on("close",this.configuration.onClose);this.configuration.websocketProvider.on("close",(t=>this.emit("close",t)));this.configuration.websocketProvider.on("status",this.onStatus.bind(this));this.configuration.websocketProvider.on("disconnect",this.configuration.onDisconnect);this.configuration.websocketProvider.on("disconnect",(t=>this.emit("disconnect",t)));this.configuration.websocketProvider.on("destroy",this.configuration.onDestroy);this.configuration.websocketProvider.on("destroy",(t=>this.emit("destroy",t)));this.awareness.on("update",(()=>{this.emit("awarenessUpdate",{states:Vb(this.awareness.getStates())})}));this.awareness.on("change",(()=>{this.emit("awarenessChange",{states:Vb(this.awareness.getStates())})}));this.document.on("update",this.documentUpdateHandler.bind(this));this.awareness.on("update",this.awarenessUpdateHandler.bind(this));this.registerEventListeners();if(this.configuration.forceSyncInterval){this.intervals.forceSync=setInterval(this.forceSync.bind(this),this.configuration.forceSyncInterval)}this.configuration.websocketProvider.attach(this)}onStatus({status:t}){this.status=t;this.configuration.onStatus({status:t});this.emit("status",{status:t})}setConfiguration(t={}){if(!t.websocketProvider&&t.url){const e=t;this.configuration.websocketProvider=new sk({url:e.url,parameters:e.parameters})}this.configuration={...this.configuration,...t}}get document(){return this.configuration.document}get awareness(){return this.configuration.awareness}get hasUnsyncedChanges(){return this.unsyncedChanges>0}updateUnsyncedChanges(t=0){this.unsyncedChanges+=t;this.emit("unsyncedChanges",this.unsyncedChanges)}forceSync(){this.send(Qy,{document:this.document,documentName:this.configuration.name})}beforeUnload(){_y(this.awareness,[this.document.clientID],"window unload")}registerEventListeners(){if(typeof window==="undefined"){return}window.addEventListener("beforeunload",this.boundBeforeUnload)}sendStateless(t){this.send(rk,{documentName:this.configuration.name,payload:t})}documentUpdateHandler(t,e){if(e===this){return}this.updateUnsyncedChanges(1);this.send(ik,{update:t,documentName:this.configuration.name},true)}awarenessUpdateHandler({added:t,updated:e,removed:i},n){const s=t.concat(e).concat(i);this.send(ek,{awareness:this.awareness,clients:s,documentName:this.configuration.name},true)}get synced(){return this.isSynced}set synced(t){if(this.isSynced===t){return}if(t&&this.unsyncedChanges>0){this.updateUnsyncedChanges(-1*this.unsyncedChanges)}this.isSynced=t;this.emit("synced",{state:t});this.emit("sync",{state:t})}receiveStateless(t){this.emit("stateless",{payload:t})}get isAuthenticationRequired(){return!!this.configuration.token&&!this.isAuthenticated}async connect(){return this.configuration.websocketProvider.connect()}disconnect(){this.disconnectBroadcastChannel();this.configuration.websocketProvider.detach(this)}async onOpen(t){this.emit("open",{event:t});if(this.isAuthenticationRequired){this.send(tk,{token:await this.getToken(),documentName:this.configuration.name})}this.startSync()}async getToken(){if(typeof this.configuration.token==="function"){const t=await this.configuration.token();return t}return this.configuration.token}startSync(){this.send(Qy,{document:this.document,documentName:this.configuration.name});if(this.awareness.getLocalState()!==null){this.send(ek,{awareness:this.awareness,clients:[this.document.clientID],documentName:this.configuration.name})}}send(t,e,i=false){if(!this.isConnected)return;if(i){this.mux((()=>{this.broadcast(t,e)}))}const n=new Jy(t,e);this.emit("outgoingMessage",{message:n.message});n.send(this.configuration.websocketProvider)}onMessage(t){const e=new Iy(t.data);const i=e.readVarString();if(i!==this.configuration.name){return}e.writeVarString(i);this.emit("message",{event:t,message:new Iy(t.data)});new Zy(e).apply(this)}onClose(t){this.isAuthenticated=false;this.synced=false;_y(this.awareness,Array.from(this.awareness.getStates().keys()).filter((t=>t!==this.document.clientID)),this)}destroy(){this.emit("destroy");if(this.intervals.forceSync){clearInterval(this.intervals.forceSync)}_y(this.awareness,[this.document.clientID],"provider destroy");this.disconnect();this.awareness.off("update",this.awarenessUpdateHandler);this.document.off("update",this.documentUpdateHandler);this.removeAllListeners();this.send(ok,{documentName:this.configuration.name});this.isConnected=false;if(typeof window==="undefined"){return}window.removeEventListener("beforeunload",this.boundBeforeUnload)}permissionDeniedHandler(t){this.emit("authenticationFailed",{reason:t});this.isAuthenticated=false;this.disconnect();this.status=Ky.Disconnected}authenticatedHandler(){this.isAuthenticated=true;this.emit("authenticated");this.startSync()}get broadcastChannel(){return`${this.configuration.name}`}broadcastChannelSubscriber(t){this.mux((()=>{const e=new Iy(t);const i=e.readVarString();e.writeVarString(i);new Zy(e).setBroadcasted(true).apply(this,false)}))}subscribeToBroadcastChannel(){if(!this.subscribedToBroadcastChannel){Cy(this.broadcastChannel,this.boundBroadcastChannelSubscriber);this.subscribedToBroadcastChannel=true}this.mux((()=>{this.broadcast(Qy,{document:this.document});this.broadcast(Yy,{document:this.document});this.broadcast(Xy,{document:this.document});this.broadcast(ek,{awareness:this.awareness,clients:[this.document.clientID],document:this.document})}))}disconnectBroadcastChannel(){this.send(ek,{awareness:this.awareness,clients:[this.document.clientID],states:new Map,documentName:this.configuration.name},true);if(this.subscribedToBroadcastChannel){Sy(this.broadcastChannel,this.boundBroadcastChannelSubscriber);this.subscribedToBroadcastChannel=false}}broadcast(t,e){if(!this.configuration.broadcast){return}if(!this.subscribedToBroadcastChannel){return}new Jy(t,e).broadcast(this.broadcastChannel)}setAwarenessField(t,e){this.awareness.setLocalStateField(t,e)}}function hk({types:t,node:e}){return Array.isArray(t)&&t.includes(e.type)||e.type===t}const lk=r.create({name:"trailingNode",addOptions(){return{node:"paragraph",notAfter:["paragraph"]}},addProseMirrorPlugins(){const t=new c(this.name);const e=Object.entries(this.editor.schema.nodes).map((([,t])=>t)).filter((t=>this.options.notAfter.includes(t.name)));return[new o({key:t,appendTransaction:(e,i,n)=>{const{doc:s,tr:r,schema:o}=n;const c=t.getState(n);const h=s.content.size;const l=o.nodes[this.options.node];if(!c){return}return r.insert(h,l.create())},state:{init:(t,i)=>{const n=i.tr.doc.lastChild;return!hk({node:n,types:e})},apply:(t,i)=>{if(!t.docChanged){return i}const n=t.doc.lastChild;return!hk({node:n,types:e})}}})]}});function ak(t,e){return function i(){return t.apply(e,arguments)}}const{toString:uk}=Object.prototype;const{getPrototypeOf:dk}=Object;const fk=(t=>e=>{const i=uk.call(e);return t[i]||(t[i]=i.slice(8,-1).toLowerCase())})(Object.create(null));const gk=t=>{t=t.toLowerCase();return e=>fk(e)===t};const pk=t=>e=>typeof e===t;const{isArray:mk}=Array;const wk=pk("undefined");function bk(t){return t!==null&&!wk(t)&&t.constructor!==null&&!wk(t.constructor)&&xk(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const vk=gk("ArrayBuffer");function yk(t){let e;if(typeof ArrayBuffer!=="undefined"&&ArrayBuffer.isView){e=ArrayBuffer.isView(t)}else{e=t&&t.buffer&&vk(t.buffer)}return e}const kk=pk("string");const xk=pk("function");const Ck=pk("number");const Sk=t=>t!==null&&typeof t==="object";const Dk=t=>t===true||t===false;const Ak=t=>{if(fk(t)!=="object"){return false}const e=dk(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)};const Ek=gk("Date");const Mk=gk("File");const Lk=gk("Blob");const _k=gk("FileList");const Ok=t=>Sk(t)&&xk(t.pipe);const Fk=t=>{let e;return t&&(typeof FormData==="function"&&t instanceof FormData||xk(t.append)&&((e=fk(t))==="formdata"||e==="object"&&xk(t.toString)&&t.toString()==="[object FormData]"))};const Tk=gk("URLSearchParams");const Rk=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ik(t,e,{allOwnKeys:i=false}={}){if(t===null||typeof t==="undefined"){return}let n;let s;if(typeof t!=="object"){t=[t]}if(mk(t)){for(n=0,s=t.length;n0){s=i[n];if(e===s.toLowerCase()){return s}}return null}const Bk=(()=>{if(typeof globalThis!=="undefined")return globalThis;return typeof self!=="undefined"?self:typeof window!=="undefined"?window:global})();const Pk=t=>!wk(t)&&t!==Bk;function jk(){const{caseless:t}=Pk(this)&&this||{};const e={};const i=(i,n)=>{const s=t&&Nk(e,n)||n;if(Ak(e[s])&&Ak(i)){e[s]=jk(e[s],i)}else if(Ak(i)){e[s]=jk({},i)}else if(mk(i)){e[s]=i.slice()}else{e[s]=i}};for(let t=0,e=arguments.length;t{Ik(e,((e,n)=>{if(i&&xk(e)){t[n]=ak(e,i)}else{t[n]=e}}),{allOwnKeys:n});return t};const zk=t=>{if(t.charCodeAt(0)===65279){t=t.slice(1)}return t};const Hk=(t,e,i,n)=>{t.prototype=Object.create(e.prototype,n);t.prototype.constructor=t;Object.defineProperty(t,"super",{value:e.prototype});i&&Object.assign(t.prototype,i)};const Wk=(t,e,i,n)=>{let s;let r;let o;const c={};e=e||{};if(t==null)return e;do{s=Object.getOwnPropertyNames(t);r=s.length;while(r-- >0){o=s[r];if((!n||n(o,t,e))&&!c[o]){e[o]=t[o];c[o]=true}}t=i!==false&&dk(t)}while(t&&(!i||i(t,e))&&t!==Object.prototype);return e};const Vk=(t,e,i)=>{t=String(t);if(i===undefined||i>t.length){i=t.length}i-=e.length;const n=t.indexOf(e,i);return n!==-1&&n===i};const Uk=t=>{if(!t)return null;if(mk(t))return t;let e=t.length;if(!Ck(e))return null;const i=new Array(e);while(e-- >0){i[e]=t[e]}return i};const qk=(t=>e=>t&&e instanceof t)(typeof Uint8Array!=="undefined"&&dk(Uint8Array));const Kk=(t,e)=>{const i=t&&t[Symbol.iterator];const n=i.call(t);let s;while((s=n.next())&&!s.done){const i=s.value;e.call(t,i[0],i[1])}};const Gk=(t,e)=>{let i;const n=[];while((i=t.exec(e))!==null){n.push(i)}return n};const Zk=gk("HTMLFormElement");const Jk=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function t(e,i,n){return i.toUpperCase()+n}));const Qk=(({hasOwnProperty:t})=>(e,i)=>t.call(e,i))(Object.prototype);const Yk=gk("RegExp");const Xk=(t,e)=>{const i=Object.getOwnPropertyDescriptors(t);const n={};Ik(i,((i,s)=>{if(e(i,s,t)!==false){n[s]=i}}));Object.defineProperties(t,n)};const tx=t=>{Xk(t,((e,i)=>{if(xk(t)&&["arguments","caller","callee"].indexOf(i)!==-1){return false}const n=t[i];if(!xk(n))return;e.enumerable=false;if("writable"in e){e.writable=false;return}if(!e.set){e.set=()=>{throw Error("Can not rewrite read-only method '"+i+"'")}}}))};const ex=(t,e)=>{const i={};const n=t=>{t.forEach((t=>{i[t]=true}))};mk(t)?n(t):n(String(t).split(e));return i};const ix=()=>{};const nx=(t,e)=>{t=+t;return Number.isFinite(t)?t:e};const sx="abcdefghijklmnopqrstuvwxyz";const rx="0123456789";const ox={DIGIT:rx,ALPHA:sx,ALPHA_DIGIT:sx+sx.toUpperCase()+rx};const cx=(t=16,e=ox.ALPHA_DIGIT)=>{let i="";const{length:n}=e;while(t--){i+=e[Math.random()*n|0]}return i};function hx(t){return!!(t&&xk(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}const lx=t=>{const e=new Array(10);const i=(t,n)=>{if(Sk(t)){if(e.indexOf(t)>=0){return}if(!("toJSON"in t)){e[n]=t;const s=mk(t)?[]:{};Ik(t,((t,e)=>{const r=i(t,n+1);!wk(r)&&(s[e]=r)}));e[n]=undefined;return s}}return t};return i(t,0)};const ax={isArray:mk,isArrayBuffer:vk,isBuffer:bk,isFormData:Fk,isArrayBufferView:yk,isString:kk,isNumber:Ck,isBoolean:Dk,isObject:Sk,isPlainObject:Ak,isUndefined:wk,isDate:Ek,isFile:Mk,isBlob:Lk,isRegExp:Yk,isFunction:xk,isStream:Ok,isURLSearchParams:Tk,isTypedArray:qk,isFileList:_k,forEach:Ik,merge:jk,extend:$k,trim:Rk,stripBOM:zk,inherits:Hk,toFlatObject:Wk,kindOf:fk,kindOfTest:gk,endsWith:Vk,toArray:Uk,forEachEntry:Kk,matchAll:Gk,isHTMLForm:Zk,hasOwnProperty:Qk,hasOwnProp:Qk,reduceDescriptors:Xk,freezeMethods:tx,toObjectSet:ex,toCamelCase:Jk,noop:ix,toFiniteNumber:nx,findKey:Nk,global:Bk,isContextDefined:Pk,ALPHABET:ox,generateString:cx,isSpecCompliantForm:hx,toJSONObject:lx};function ux(t,e,i,n,s){Error.call(this);if(Error.captureStackTrace){Error.captureStackTrace(this,this.constructor)}else{this.stack=(new Error).stack}this.message=t;this.name="AxiosError";e&&(this.code=e);i&&(this.config=i);n&&(this.request=n);s&&(this.response=s)}ax.inherits(ux,Error,{toJSON:function t(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:ax.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const dx=ux.prototype;const fx={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((t=>{fx[t]={value:t}}));Object.defineProperties(ux,fx);Object.defineProperty(dx,"isAxiosError",{value:true});ux.from=(t,e,i,n,s,r)=>{const o=Object.create(dx);ax.toFlatObject(t,o,(function t(e){return e!==Error.prototype}),(t=>t!=="isAxiosError"));ux.call(o,t.message,e,i,n,s);o.cause=t;o.name=t.name;r&&Object.assign(o,r);return o};const gx=null;function px(t){return ax.isPlainObject(t)||ax.isArray(t)}function mx(t){return ax.endsWith(t,"[]")?t.slice(0,-2):t}function wx(t,e,i){if(!t)return e;return t.concat(e).map((function t(e,n){e=mx(e);return!i&&n?"["+e+"]":e})).join(i?".":"")}function bx(t){return ax.isArray(t)&&!t.some(px)}const vx=ax.toFlatObject(ax,{},null,(function t(e){return/^is[A-Z]/.test(e)}));function yx(t,e,i){if(!ax.isObject(t)){throw new TypeError("target must be an object")}e=e||new FormData;i=ax.toFlatObject(i,{metaTokens:true,dots:false,indexes:false},false,(function t(e,i){return!ax.isUndefined(i[e])}));const n=i.metaTokens;const s=i.visitor||a;const r=i.dots;const o=i.indexes;const c=i.Blob||typeof Blob!=="undefined"&&Blob;const h=c&&ax.isSpecCompliantForm(e);if(!ax.isFunction(s)){throw new TypeError("visitor must be a function")}function l(t){if(t===null)return"";if(ax.isDate(t)){return t.toISOString()}if(!h&&ax.isBlob(t)){throw new ux("Blob is not supported. Use a Buffer instead.")}if(ax.isArrayBuffer(t)||ax.isTypedArray(t)){return h&&typeof Blob==="function"?new Blob([t]):Buffer.from(t)}return t}function a(t,i,s){let c=t;if(t&&!s&&typeof t==="object"){if(ax.endsWith(i,"{}")){i=n?i:i.slice(0,-2);t=JSON.stringify(t)}else if(ax.isArray(t)&&bx(t)||(ax.isFileList(t)||ax.endsWith(i,"[]"))&&(c=ax.toArray(t))){i=mx(i);c.forEach((function t(n,s){!(ax.isUndefined(n)||n===null)&&e.append(o===true?wx([i],s,r):o===null?i:i+"[]",l(n))}));return false}}if(px(t)){return true}e.append(wx(s,i,r),l(t));return false}const u=[];const d=Object.assign(vx,{defaultVisitor:a,convertValue:l,isVisitable:px});function f(t,i){if(ax.isUndefined(t))return;if(u.indexOf(t)!==-1){throw Error("Circular reference detected in "+i.join("."))}u.push(t);ax.forEach(t,(function t(n,r){const o=!(ax.isUndefined(n)||n===null)&&s.call(e,n,ax.isString(r)?r.trim():r,i,d);if(o===true){f(n,i?i.concat(r):[r])}}));u.pop()}if(!ax.isObject(t)){throw new TypeError("data must be an object")}f(t);return e}function kx(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,(function t(i){return e[i]}))}function xx(t,e){this._pairs=[];t&&yx(t,this,e)}const Cx=xx.prototype;Cx.append=function t(e,i){this._pairs.push([e,i])};Cx.toString=function t(e){const i=e?function(t){return e.call(this,t,kx)}:kx;return this._pairs.map((function t(e){return i(e[0])+"="+i(e[1])}),"").join("&")};function Sx(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Dx(t,e,i){if(!e){return t}const n=i&&i.encode||Sx;const s=i&&i.serialize;let r;if(s){r=s(e,i)}else{r=ax.isURLSearchParams(e)?e.toString():new xx(e,i).toString(n)}if(r){const e=t.indexOf("#");if(e!==-1){t=t.slice(0,e)}t+=(t.indexOf("?")===-1?"?":"&")+r}return t}class Ax{constructor(){this.handlers=[]}use(t,e,i){this.handlers.push({fulfilled:t,rejected:e,synchronous:i?i.synchronous:false,runWhen:i?i.runWhen:null});return this.handlers.length-1}eject(t){if(this.handlers[t]){this.handlers[t]=null}}clear(){if(this.handlers){this.handlers=[]}}forEach(t){ax.forEach(this.handlers,(function e(i){if(i!==null){t(i)}}))}}const Ex={silentJSONParsing:true,forcedJSONParsing:true,clarifyTimeoutError:false};const Mx=typeof URLSearchParams!=="undefined"?URLSearchParams:xx;const Lx=typeof FormData!=="undefined"?FormData:null;const _x=typeof Blob!=="undefined"?Blob:null;const Ox=(()=>{let t;if(typeof navigator!=="undefined"&&((t=navigator.product)==="ReactNative"||t==="NativeScript"||t==="NS")){return false}return typeof window!=="undefined"&&typeof document!=="undefined"})();const Fx=(()=>typeof WorkerGlobalScope!=="undefined"&&self instanceof WorkerGlobalScope&&typeof self.importScripts==="function")();const Tx={isBrowser:true,classes:{URLSearchParams:Mx,FormData:Lx,Blob:_x},isStandardBrowserEnv:Ox,isStandardBrowserWebWorkerEnv:Fx,protocols:["http","https","file","blob","url","data"]};function Rx(t,e){return yx(t,new Tx.classes.URLSearchParams,Object.assign({visitor:function(t,e,i,n){return n.defaultVisitor.apply(this,arguments)}},e))}function Ix(t){return ax.matchAll(/\w+|\[(\w*)]/g,t).map((t=>t[0]==="[]"?"":t[1]||t[0]))}function Nx(t){const e={};const i=Object.keys(t);let n;const s=i.length;let r;for(n=0;n=t.length;r=!r&&ax.isArray(n)?n.length:r;if(c){if(ax.hasOwnProp(n,r)){n[r]=[n[r],i]}else{n[r]=i}return!o}if(!n[r]||!ax.isObject(n[r])){n[r]=[]}const h=e(t,i,n[r],s);if(h&&ax.isArray(n[r])){n[r]=Nx(n[r])}return!o}if(ax.isFormData(t)&&ax.isFunction(t.entries)){const i={};ax.forEachEntry(t,((t,n)=>{e(Ix(t),n,i,0)}));return i}return null}const Px={"Content-Type":undefined};function jx(t,e,i){if(ax.isString(t)){try{(e||JSON.parse)(t);return ax.trim(t)}catch(t){if(t.name!=="SyntaxError"){throw t}}}return(i||JSON.stringify)(t)}const $x={transitional:Ex,adapter:["xhr","http"],transformRequest:[function t(e,i){const n=i.getContentType()||"";const s=n.indexOf("application/json")>-1;const r=ax.isObject(e);if(r&&ax.isHTMLForm(e)){e=new FormData(e)}const o=ax.isFormData(e);if(o){if(!s){return e}return s?JSON.stringify(Bx(e)):e}if(ax.isArrayBuffer(e)||ax.isBuffer(e)||ax.isStream(e)||ax.isFile(e)||ax.isBlob(e)){return e}if(ax.isArrayBufferView(e)){return e.buffer}if(ax.isURLSearchParams(e)){i.setContentType("application/x-www-form-urlencoded;charset=utf-8",false);return e.toString()}let c;if(r){if(n.indexOf("application/x-www-form-urlencoded")>-1){return Rx(e,this.formSerializer).toString()}if((c=ax.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return yx(c?{"files[]":e}:e,t&&new t,this.formSerializer)}}if(r||s){i.setContentType("application/json",false);return jx(e)}return e}],transformResponse:[function t(e){const i=this.transitional||$x.transitional;const n=i&&i.forcedJSONParsing;const s=this.responseType==="json";if(e&&ax.isString(e)&&(n&&!this.responseType||s)){const t=i&&i.silentJSONParsing;const n=!t&&s;try{return JSON.parse(e)}catch(t){if(n){if(t.name==="SyntaxError"){throw ux.from(t,ux.ERR_BAD_RESPONSE,this,null,this.response)}throw t}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Tx.classes.FormData,Blob:Tx.classes.Blob},validateStatus:function t(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};ax.forEach(["delete","get","head"],(function t(e){$x.headers[e]={}}));ax.forEach(["post","put","patch"],(function t(e){$x.headers[e]=ax.merge(Px)}));const zx=ax.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);const Hx=t=>{const e={};let i;let n;let s;t&&t.split("\n").forEach((function t(r){s=r.indexOf(":");i=r.substring(0,s).trim().toLowerCase();n=r.substring(s+1).trim();if(!i||e[i]&&zx[i]){return}if(i==="set-cookie"){if(e[i]){e[i].push(n)}else{e[i]=[n]}}else{e[i]=e[i]?e[i]+", "+n:n}}));return e};const Wx=Symbol("internals");function Vx(t){return t&&String(t).trim().toLowerCase()}function Ux(t){if(t===false||t==null){return t}return ax.isArray(t)?t.map(Ux):String(t)}function qx(t){const e=Object.create(null);const i=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;while(n=i.exec(t)){e[n[1]]=n[2]}return e}const Kx=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Gx(t,e,i,n,s){if(ax.isFunction(n)){return n.call(this,e,i)}if(s){e=i}if(!ax.isString(e))return;if(ax.isString(n)){return e.indexOf(n)!==-1}if(ax.isRegExp(n)){return n.test(e)}}function Zx(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((t,e,i)=>e.toUpperCase()+i))}function Jx(t,e){const i=ax.toCamelCase(" "+e);["get","set","has"].forEach((n=>{Object.defineProperty(t,n+i,{value:function(t,i,s){return this[n].call(this,e,t,i,s)},configurable:true})}))}class Qx{constructor(t){t&&this.set(t)}set(t,e,i){const n=this;function s(t,e,i){const s=Vx(e);if(!s){throw new Error("header name must be a non-empty string")}const r=ax.findKey(n,s);if(!r||n[r]===undefined||i===true||i===undefined&&n[r]!==false){n[r||e]=Ux(t)}}const r=(t,e)=>ax.forEach(t,((t,i)=>s(t,i,e)));if(ax.isPlainObject(t)||t instanceof this.constructor){r(t,e)}else if(ax.isString(t)&&(t=t.trim())&&!Kx(t)){r(Hx(t),e)}else{t!=null&&s(e,t,i)}return this}get(t,e){t=Vx(t);if(t){const i=ax.findKey(this,t);if(i){const t=this[i];if(!e){return t}if(e===true){return qx(t)}if(ax.isFunction(e)){return e.call(this,t,i)}if(ax.isRegExp(e)){return e.exec(t)}throw new TypeError("parser must be boolean|regexp|function")}}}has(t,e){t=Vx(t);if(t){const i=ax.findKey(this,t);return!!(i&&this[i]!==undefined&&(!e||Gx(this,this[i],i,e)))}return false}delete(t,e){const i=this;let n=false;function s(t){t=Vx(t);if(t){const s=ax.findKey(i,t);if(s&&(!e||Gx(i,i[s],s,e))){delete i[s];n=true}}}if(ax.isArray(t)){t.forEach(s)}else{s(t)}return n}clear(t){const e=Object.keys(this);let i=e.length;let n=false;while(i--){const s=e[i];if(!t||Gx(this,this[s],s,t,true)){delete this[s];n=true}}return n}normalize(t){const e=this;const i={};ax.forEach(this,((n,s)=>{const r=ax.findKey(i,s);if(r){e[r]=Ux(n);delete e[s];return}const o=t?Zx(s):String(s).trim();if(o!==s){delete e[s]}e[o]=Ux(n);i[o]=true}));return this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const e=Object.create(null);ax.forEach(this,((i,n)=>{i!=null&&i!==false&&(e[n]=t&&ax.isArray(i)?i.join(", "):i)}));return e}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([t,e])=>t+": "+e)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...e){const i=new this(t);e.forEach((t=>i.set(t)));return i}static accessor(t){const e=this[Wx]=this[Wx]={accessors:{}};const i=e.accessors;const n=this.prototype;function s(t){const e=Vx(t);if(!i[e]){Jx(n,t);i[e]=true}}ax.isArray(t)?t.forEach(s):s(t);return this}}Qx.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);ax.freezeMethods(Qx.prototype);ax.freezeMethods(Qx);function Yx(t,e){const i=this||$x;const n=e||i;const s=Qx.from(n.headers);let r=n.data;ax.forEach(t,(function t(n){r=n.call(i,r,s.normalize(),e?e.status:undefined)}));s.normalize();return r}function Xx(t){return!!(t&&t.__CANCEL__)}function tC(t,e,i){ux.call(this,t==null?"canceled":t,ux.ERR_CANCELED,e,i);this.name="CanceledError"}ax.inherits(tC,ux,{__CANCEL__:true});function eC(t,e,i){const n=i.config.validateStatus;if(!i.status||!n||n(i.status)){t(i)}else{e(new ux("Request failed with status code "+i.status,[ux.ERR_BAD_REQUEST,ux.ERR_BAD_RESPONSE][Math.floor(i.status/100)-4],i.config,i.request,i))}}const iC=Tx.isStandardBrowserEnv?function t(){return{write:function t(e,i,n,s,r,o){const c=[];c.push(e+"="+encodeURIComponent(i));if(ax.isNumber(n)){c.push("expires="+new Date(n).toGMTString())}if(ax.isString(s)){c.push("path="+s)}if(ax.isString(r)){c.push("domain="+r)}if(o===true){c.push("secure")}document.cookie=c.join("; ")},read:function t(e){const i=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return i?decodeURIComponent(i[3]):null},remove:function t(e){this.write(e,"",Date.now()-864e5)}}}():function t(){return{write:function t(){},read:function t(){return null},remove:function t(){}}}();function nC(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function sC(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}function rC(t,e){if(t&&!nC(e)){return sC(t,e)}return e}const oC=Tx.isStandardBrowserEnv?function t(){const e=/(msie|trident)/i.test(navigator.userAgent);const i=document.createElement("a");let n;function s(t){let n=t;if(e){i.setAttribute("href",n);n=i.href}i.setAttribute("href",n);return{href:i.href,protocol:i.protocol?i.protocol.replace(/:$/,""):"",host:i.host,search:i.search?i.search.replace(/^\?/,""):"",hash:i.hash?i.hash.replace(/^#/,""):"",hostname:i.hostname,port:i.port,pathname:i.pathname.charAt(0)==="/"?i.pathname:"/"+i.pathname}}n=s(window.location.href);return function t(e){const i=ax.isString(e)?s(e):e;return i.protocol===n.protocol&&i.host===n.host}}():function t(){return function t(){return true}}();function cC(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function hC(t,e){t=t||10;const i=new Array(t);const n=new Array(t);let s=0;let r=0;let o;e=e!==undefined?e:1e3;return function c(h){const l=Date.now();const a=n[r];if(!o){o=l}i[s]=h;n[s]=l;let u=r;let d=0;while(u!==s){d+=i[u++];u=u%t}s=(s+1)%t;if(s===r){r=(r+1)%t}if(l-o{const r=s.loaded;const o=s.lengthComputable?s.total:undefined;const c=r-i;const h=n(c);const l=r<=o;i=r;const a={loaded:r,total:o,progress:o?r/o:undefined,bytes:c,rate:h?h:undefined,estimated:h&&o&&l?(o-r)/h:undefined,event:s};a[e?"download":"upload"]=true;t(a)}}const aC=typeof XMLHttpRequest!=="undefined";const uC=aC&&function(t){return new Promise((function e(i,n){let s=t.data;const r=Qx.from(t.headers).normalize();const o=t.responseType;let c;function h(){if(t.cancelToken){t.cancelToken.unsubscribe(c)}if(t.signal){t.signal.removeEventListener("abort",c)}}if(ax.isFormData(s)&&(Tx.isStandardBrowserEnv||Tx.isStandardBrowserWebWorkerEnv)){r.setContentType(false)}let l=new XMLHttpRequest;if(t.auth){const e=t.auth.username||"";const i=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";r.set("Authorization","Basic "+btoa(e+":"+i))}const a=rC(t.baseURL,t.url);l.open(t.method.toUpperCase(),Dx(a,t.params,t.paramsSerializer),true);l.timeout=t.timeout;function u(){if(!l){return}const e=Qx.from("getAllResponseHeaders"in l&&l.getAllResponseHeaders());const s=!o||o==="text"||o==="json"?l.responseText:l.response;const r={data:s,status:l.status,statusText:l.statusText,headers:e,config:t,request:l};eC((function t(e){i(e);h()}),(function t(e){n(e);h()}),r);l=null}if("onloadend"in l){l.onloadend=u}else{l.onreadystatechange=function t(){if(!l||l.readyState!==4){return}if(l.status===0&&!(l.responseURL&&l.responseURL.indexOf("file:")===0)){return}setTimeout(u)}}l.onabort=function e(){if(!l){return}n(new ux("Request aborted",ux.ECONNABORTED,t,l));l=null};l.onerror=function e(){n(new ux("Network Error",ux.ERR_NETWORK,t,l));l=null};l.ontimeout=function e(){let i=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded";const s=t.transitional||Ex;if(t.timeoutErrorMessage){i=t.timeoutErrorMessage}n(new ux(i,s.clarifyTimeoutError?ux.ETIMEDOUT:ux.ECONNABORTED,t,l));l=null};if(Tx.isStandardBrowserEnv){const e=(t.withCredentials||oC(a))&&t.xsrfCookieName&&iC.read(t.xsrfCookieName);if(e){r.set(t.xsrfHeaderName,e)}}s===undefined&&r.setContentType(null);if("setRequestHeader"in l){ax.forEach(r.toJSON(),(function t(e,i){l.setRequestHeader(i,e)}))}if(!ax.isUndefined(t.withCredentials)){l.withCredentials=!!t.withCredentials}if(o&&o!=="json"){l.responseType=t.responseType}if(typeof t.onDownloadProgress==="function"){l.addEventListener("progress",lC(t.onDownloadProgress,true))}if(typeof t.onUploadProgress==="function"&&l.upload){l.upload.addEventListener("progress",lC(t.onUploadProgress))}if(t.cancelToken||t.signal){c=e=>{if(!l){return}n(!e||e.type?new tC(null,t,l):e);l.abort();l=null};t.cancelToken&&t.cancelToken.subscribe(c);if(t.signal){t.signal.aborted?c():t.signal.addEventListener("abort",c)}}const d=cC(a);if(d&&Tx.protocols.indexOf(d)===-1){n(new ux("Unsupported protocol "+d+":",ux.ERR_BAD_REQUEST,t));return}l.send(s||null)}))};const dC={http:gx,xhr:uC};ax.forEach(dC,((t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch(t){}Object.defineProperty(t,"adapterName",{value:e})}}));const fC={getAdapter:t=>{t=ax.isArray(t)?t:[t];const{length:e}=t;let i;let n;for(let s=0;st instanceof Qx?t.toJSON():t;function wC(t,e){e=e||{};const i={};function n(t,e,i){if(ax.isPlainObject(t)&&ax.isPlainObject(e)){return ax.merge.call({caseless:i},t,e)}else if(ax.isPlainObject(e)){return ax.merge({},e)}else if(ax.isArray(e)){return e.slice()}return e}function s(t,e,i){if(!ax.isUndefined(e)){return n(t,e,i)}else if(!ax.isUndefined(t)){return n(undefined,t,i)}}function r(t,e){if(!ax.isUndefined(e)){return n(undefined,e)}}function o(t,e){if(!ax.isUndefined(e)){return n(undefined,e)}else if(!ax.isUndefined(t)){return n(undefined,t)}}function c(i,s,r){if(r in e){return n(i,s)}else if(r in t){return n(undefined,i)}}const h={url:r,method:r,data:r,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:c,headers:(t,e)=>s(mC(t),mC(e),true)};ax.forEach(Object.keys(t).concat(Object.keys(e)),(function n(r){const o=h[r]||s;const l=o(t[r],e[r],r);ax.isUndefined(l)&&o!==c||(i[r]=l)}));return i}const bC="1.3.6";const vC={};["object","boolean","number","function","string","symbol"].forEach(((t,e)=>{vC[t]=function i(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));const yC={};vC.transitional=function t(e,i,n){function s(t,e){return"[Axios v"+bC+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}return(t,n,r)=>{if(e===false){throw new ux(s(n," has been removed"+(i?" in "+i:"")),ux.ERR_DEPRECATED)}if(i&&!yC[n]){yC[n]=true;console.warn(s(n," has been deprecated since v"+i+" and will be removed in the near future"))}return e?e(t,n,r):true}};function kC(t,e,i){if(typeof t!=="object"){throw new ux("options must be an object",ux.ERR_BAD_OPTION_VALUE)}const n=Object.keys(t);let s=n.length;while(s-- >0){const r=n[s];const o=e[r];if(o){const e=t[r];const i=e===undefined||o(e,r,t);if(i!==true){throw new ux("option "+r+" must be "+i,ux.ERR_BAD_OPTION_VALUE)}continue}if(i!==true){throw new ux("Unknown option "+r,ux.ERR_BAD_OPTION)}}}const xC={assertOptions:kC,validators:vC};const CC=xC.validators;class SC{constructor(t){this.defaults=t;this.interceptors={request:new Ax,response:new Ax}}request(t,e){if(typeof t==="string"){e=e||{};e.url=t}else{e=t||{}}e=wC(this.defaults,e);const{transitional:i,paramsSerializer:n,headers:s}=e;if(i!==undefined){xC.assertOptions(i,{silentJSONParsing:CC.transitional(CC.boolean),forcedJSONParsing:CC.transitional(CC.boolean),clarifyTimeoutError:CC.transitional(CC.boolean)},false)}if(n!=null){if(ax.isFunction(n)){e.paramsSerializer={serialize:n}}else{xC.assertOptions(n,{encode:CC.function,serialize:CC.function},true)}}e.method=(e.method||this.defaults.method||"get").toLowerCase();let r;r=s&&ax.merge(s.common,s[e.method]);r&&ax.forEach(["delete","get","head","post","put","patch","common"],(t=>{delete s[t]}));e.headers=Qx.concat(r,s);const o=[];let c=true;this.interceptors.request.forEach((function t(i){if(typeof i.runWhen==="function"&&i.runWhen(e)===false){return}c=c&&i.synchronous;o.unshift(i.fulfilled,i.rejected)}));const h=[];this.interceptors.response.forEach((function t(e){h.push(e.fulfilled,e.rejected)}));let l;let a=0;let u;if(!c){const t=[pC.bind(this),undefined];t.unshift.apply(t,o);t.push.apply(t,h);u=t.length;l=Promise.resolve(e);while(a{if(!i._listeners)return;let e=i._listeners.length;while(e-- >0){i._listeners[e](t)}i._listeners=null}));this.promise.then=t=>{let e;const n=new Promise((t=>{i.subscribe(t);e=t})).then(t);n.cancel=function t(){i.unsubscribe(e)};return n};t((function t(n,s,r){if(i.reason){return}i.reason=new tC(n,s,r);e(i.reason)}))}throwIfRequested(){if(this.reason){throw this.reason}}subscribe(t){if(this.reason){t(this.reason);return}if(this._listeners){this._listeners.push(t)}else{this._listeners=[t]}}unsubscribe(t){if(!this._listeners){return}const e=this._listeners.indexOf(t);if(e!==-1){this._listeners.splice(e,1)}}static source(){let t;const e=new DC((function e(i){t=i}));return{token:e,cancel:t}}}function AC(t){return function e(i){return t.apply(null,i)}}function EC(t){return ax.isObject(t)&&t.isAxiosError===true}const MC={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(MC).forEach((([t,e])=>{MC[e]=t}));function LC(t){const e=new SC(t);const i=ak(SC.prototype.request,e);ax.extend(i,SC.prototype,e,{allOwnKeys:true});ax.extend(i,e,null,{allOwnKeys:true});i.create=function e(i){return LC(wC(t,i))};return i}const _C=LC($x);_C.Axios=SC;_C.CanceledError=tC;_C.CancelToken=DC;_C.isCancel=Xx;_C.VERSION=bC;_C.toFormData=yx;_C.AxiosError=ux;_C.Cancel=_C.CanceledError;_C.all=function t(e){return Promise.all(e)};_C.spread=AC;_C.isAxiosError=EC;_C.mergeConfig=wC;_C.AxiosHeaders=Qx;_C.formToJSON=t=>Bx(ax.isHTMLForm(t)?new FormData(t):t);_C.HttpStatusCode=MC;_C.default=_C;const OC=["image/jpeg","image/gif","image/png","image/jpg"];async function FC(t,e){const i=await _C.postForm(e,{imgFile:t});return i.data.url||""}async function TC(t,e){const i=t instanceof DataTransferItem?t.getAsFile():t;if(e===null||e===void 0?void 0:e.options.uploadFunc){return e.options.uploadFunc(i)}if(e===null||e===void 0?void 0:e.options.uploadUrl){return FC(i,e.options.uploadUrl)}return new Promise((t=>{const e=new FileReader;e.onloadend=()=>t(e.result);e.readAsDataURL(i)}))}const RC=r.create({name:"imageUploader",addCommands(){return{uploadImage:t=>()=>{TC(t,this).then((t=>{if(Boolean(t)){this.editor.chain().focus().setImage({src:t}).run()}}));return true}}},addOptions(){return{uploadUrl:"",uploadFunc:null}},addProseMirrorPlugins(){return[new o({key:new c("imageUploader"),props:{handlePaste:(t,e)=>{var i;const n=Array.from(((i=e.clipboardData)===null||i===void 0?void 0:i.items)||[]);if(n.some((t=>t.type==="text/html"))){return false}const s=n.find((t=>OC.includes(t.type)));if(!Boolean(s)){return false}TC(s,this).then((t=>{if(Boolean(t)){this.editor.chain().focus().setImage({src:t}).run()}}));return true},handleDrop:(t,e)=>{var i;if(!Boolean((i=e.dataTransfer)===null||i===void 0?void 0:i.files.length)){return false}const n=e.dataTransfer.files.item(0);TC(n,this).then((t=>{if(Boolean(t)){this.editor.chain().focus().setImage({src:t}).run()}}));return true}}})]}});const IC=13;const NC=[9,13,16,20,24,36,48];const BC=r.create({name:"fontSize",addOptions(){return{types:["textStyle"]}},addGlobalAttributes(){return[{types:this.options.types,attributes:{fontSize:{default:null,parseHTML:t=>{var e;return parseInt((e=t.style.fontSize)===null||e===void 0?void 0:e.replace(/px$/,""))},renderHTML:t=>{if(!t.fontSize){return{}}return{style:`font-size: ${t.fontSize}px`}}}}}]},addCommands(){return{setFontSize:t=>({chain:e})=>e().setMark("textStyle",{fontSize:t}).run(),unsetFontSize:()=>({chain:t})=>t().setMark("textStyle",{fontSize:null}).removeEmptyTextStyle().run(),scaleFontSize:(t="upscale")=>({state:e})=>{const{doc:i,selection:n}=e;const{from:s,to:r}=n;const o=i.slice(s,r);o.content.descendants(((i,n)=>{var r;if(i.isText){const o=((r=i.marks.find((t=>t.type.name==="textStyle")))===null||r===void 0?void 0:r.attrs.fontSize)||IC;const c=NC.reduce(((t,e)=>Math.abs(e-o)parseInt(t.style.lineHeight),renderHTML:t=>{if(!t.lineHeight){return{}}return{style:`line-height: ${t.lineHeight}`}}}}}]},addCommands(){return{setLineHeight:t=>({chain:e})=>e().selectParentNode().setMark("textStyle",{lineHeight:t}).run(),unsetLineHeight:()=>({chain:t})=>t().selectParentNode().setMark("textStyle",{lineHeight:null}).removeEmptyTextStyle().run()}}});const $C={"Sans-serif":'"Source Han Sans CN", PingFangSC, "Microsoft YaHei", HiraginoSansGB, Roboto, Helvetica, Tahoma, sans-serif',Serif:'SimSun, STSong, Georgia, "Times New Roman", Times, serif',Cursive:"FangSong, KaiTi, cursive",Monospace:'"Source Code Pro", Menlo, Monaco, Consolas, "Courier New", monospace'};const zC=r.create({name:"defaultTextStyle",addProseMirrorPlugins(){return[new o({appendTransaction(t,e,i){if(t.length!==1||t[0].steps.length!==1){return}const n=t[0].doc.type.schema;const s=n.marks.textStyle.create({fontFamily:$C["Sans-serif"]});const r=n.marks.textStyle.create({fontFamily:$C["Sans-serif"],fontSize:IC});let o=i.tr;t.forEach((t=>{t.steps.forEach((t=>{t.getMap().forEach(((t,e,n,c)=>{i.doc.nodesBetween(n,c,((t,e)=>{if(t.type.name==="heading"){t.forEach(((t,i)=>{if(t.isText&&!Boolean(t.marks.find((t=>t.type.name==="textStyle")))){o=o.addMark(e+i,e+i+t.nodeSize+1,s)}}))}if(t.type.name==="paragraph"){t.forEach(((t,i)=>{if(t.isText&&!Boolean(t.marks.find((t=>t.type.name==="textStyle")))){o=o.addMark(e+i,e+i+t.nodeSize+1,r)}}))}}))}))}))}));return o}})]}});var HC;var WC;if(typeof WeakMap!="undefined"){let t=new WeakMap;HC=e=>t.get(e);WC=(e,i)=>{t.set(e,i);return i}}else{const t=[];const e=10;let i=0;HC=e=>{for(let i=0;i{if(i==e)i=0;t[i++]=n;return t[i++]=s}}var VC=class{constructor(t,e,i,n){this.width=t;this.height=e;this.map=i;this.problems=n}findCell(t){for(let e=0;e=i){(r||(r=[])).push({type:"overlong_rowspan",pos:h,n:d-t});break}const l=s+t*e;for(let t=0;tn)r+=s.attrs.colspan}}for(let t=0;t1)i=true}if(e==-1)e=r;else if(e!=r)e=Math.max(e,r)}return e}function KC(t,e,i){if(!t.problems)t.problems=[];const n={};for(let s=0;s0;e--)if(t.node(e).type.spec.tableRole=="row")return t.node(0).resolve(t.before(e+1));return null}function YC(t){for(let e=t.depth;e>0;e--){const i=t.node(e).type.spec.tableRole;if(i==="cell"||i==="header_cell")return t.node(e)}return null}function XC(t){const e=t.selection.$head;for(let t=e.depth;t>0;t--)if(e.node(t).type.spec.tableRole=="row")return true;return false}function tS(t){const e=t.selection;if("$anchorCell"in e&&e.$anchorCell){return e.$anchorCell.pos>e.$headCell.pos?e.$anchorCell:e.$headCell}else if("node"in e&&e.node&&e.node.type.spec.tableRole=="cell"){return e.$anchor}const i=QC(e.$head)||eS(e.$head);if(i){return i}throw new RangeError(`No cell found around position ${e.head}`)}function eS(t){for(let e=t.nodeAfter,i=t.pos;e;e=e.firstChild,i++){const n=e.type.spec.tableRole;if(n=="cell"||n=="header_cell")return t.doc.resolve(i)}for(let e=t.nodeBefore,i=t.pos;e;e=e.lastChild,i--){const n=e.type.spec.tableRole;if(n=="cell"||n=="header_cell")return t.doc.resolve(i-e.nodeSize)}}function iS(t){return t.parent.type.spec.tableRole=="row"&&!!t.nodeAfter}function nS(t){return t.node(0).resolve(t.pos+t.nodeAfter.nodeSize)}function sS(t,e){return t.depth==e.depth&&t.pos>=e.start(-1)&&t.pos<=e.end(-1)}function rS(t,e,i){const n=t.node(-1);const s=VC.get(n);const r=t.start(-1);const o=s.nextCell(t.pos-r,e,i);return o==null?null:t.node(0).resolve(r+o)}function oS(t,e,i=1){const n={...t,colspan:t.colspan-i};if(n.colwidth){n.colwidth=n.colwidth.slice();n.colwidth.splice(e,i);if(!n.colwidth.some((t=>t>0)))n.colwidth=null}return n}function cS(t,e,i=1){const n={...t,colspan:t.colspan+i};if(n.colwidth){n.colwidth=n.colwidth.slice();for(let t=0;tt!=e.pos-s));c.unshift(e.pos-s);const h=c.map((t=>{const e=i.nodeAt(t);if(!e){throw RangeError(`No cell with offset ${t} found`)}const n=s+t+1;return new $(o.resolve(n),o.resolve(n+e.content.size))}));super(h[0].$from,h[0].$to,h);this.$anchorCell=t;this.$headCell=e}map(t,e){const i=t.resolve(e.map(this.$anchorCell.pos));const n=t.resolve(e.map(this.$headCell.pos));if(iS(i)&&iS(n)&&sS(i,n)){const t=this.$anchorCell.node(-1)!=i.node(-1);if(t&&this.isRowSelection())return lS.rowSelection(i,n);else if(t&&this.isColSelection())return lS.colSelection(i,n);else return new lS(i,n)}return w.between(i,n)}content(){const t=this.$anchorCell.node(-1);const e=VC.get(t);const i=this.$anchorCell.start(-1);const n=e.rectBetween(this.$anchorCell.pos-i,this.$headCell.pos-i);const s={};const r=[];for(let i=n.top;i0||a>0){let t=h.attrs;if(l>0){t=oS(t,0,l)}if(a>0){t=oS(t,t.colspan-a,a)}if(c.leftn.bottom){const t={...h.attrs,rowspan:Math.min(c.bottom,n.bottom)-Math.max(c.top,n.top)};if(c.top0)return false;const i=t+this.$anchorCell.nodeAfter.attrs.rowspan;const n=e+this.$headCell.nodeAfter.attrs.rowspan;return Math.max(i,n)==this.$headCell.node(-1).childCount}static colSelection(t,e=t){const i=t.node(-1);const n=VC.get(i);const s=t.start(-1);const r=n.findCell(t.pos-s);const o=n.findCell(e.pos-s);const c=t.node(0);if(r.top<=o.top){if(r.top>0)t=c.resolve(s+n.map[r.left]);if(o.bottom0)e=c.resolve(s+n.map[o.left]);if(r.bottom0)return false;const r=n+this.$anchorCell.nodeAfter.attrs.colspan;const o=s+this.$headCell.nodeAfter.attrs.colspan;return Math.max(r,o)==e.width}eq(t){return t instanceof lS&&t.$anchorCell.pos==this.$anchorCell.pos&&t.$headCell.pos==this.$headCell.pos}static rowSelection(t,e=t){const i=t.node(-1);const n=VC.get(i);const s=t.start(-1);const r=n.findCell(t.pos-s);const o=n.findCell(e.pos-s);const c=t.node(0);if(r.left<=o.left){if(r.left>0)t=c.resolve(s+n.map[r.top*n.width]);if(o.right0)e=c.resolve(s+n.map[o.top*n.width]);if(r.right{e.push(y.node(i,i+t.nodeSize,{class:"selectedCell"}))}));return b.create(t.doc,e)}function dS({$from:t,$to:e}){if(t.pos==e.pos||t.pos=0;s--,i++)if(t.after(s+1)=0;t--,n--)if(e.before(t+1)>e.start(t))break;return i==n&&/row|table/.test(t.node(s).type.spec.tableRole)}function fS({$from:t,$to:e}){let i;let n;for(let e=t.depth;e>0;e--){const n=t.node(e);if(n.type.spec.tableRole==="cell"||n.type.spec.tableRole==="header_cell"){i=n;break}}for(let t=e.depth;t>0;t--){const i=e.node(t);if(i.type.spec.tableRole==="cell"||i.type.spec.tableRole==="header_cell"){n=i;break}}return i!==n&&e.parentOffset===0}function gS(t,e,i){const n=(e||t).selection;const s=(e||t).doc;let r;let o;if(n instanceof R&&(o=n.node.type.spec.tableRole)){if(o=="cell"||o=="header_cell"){r=lS.create(s,n.from)}else if(o=="row"){const t=s.resolve(n.from+1);r=lS.rowSelection(t,t)}else if(!i){const t=VC.get(n.node);const e=n.from+1;const i=e+t.map[t.width*t.height-1];r=lS.create(s,e+1,i)}}else if(n instanceof w&&dS(n)){r=w.create(s,n.from)}else if(n instanceof w&&fS(n)){r=w.create(s,n.$from.start(),n.$from.end())}if(r)(e||(e=t.tr)).setSelection(r);return e}var pS=new c("fix-tables");function mS(t,e,i,n){const s=t.childCount,r=e.childCount;t:for(let o=0,c=0;o{if(e.type.spec.tableRole=="table")i=bS(t,e,n,i)};if(!e)t.doc.descendants(n);else if(e.doc!=t.doc)mS(e.doc,t.doc,0,n);return i}function bS(t,e,i,n){const s=VC.get(e);if(!s.problems)return n;if(!n)n=t.tr;const r=[];for(let t=0;t0){let e="cell";if(i.firstChild){e=i.firstChild.type.spec.tableRole}const r=[];for(let i=0;i0&&n>0||e.child(0).type.spec.tableRole=="table")){i--;n--;e=e.child(0).content}const s=e.child(0);const r=s.type.spec.tableRole;const o=s.type.schema,c=[];if(r=="row"){for(let t=0;t=0;e--){const{rowspan:s,colspan:r}=n.child(e).attrs;for(let e=t;e=e.length)e.push(N.empty);if(i[s]n)c=c.type.createChecked(oS(c.attrs,c.attrs.colspan,i+c.attrs.colspan-n),c.content);o.push(c);i+=c.attrs.colspan;for(let i=1;is)e=e.type.create({...e.attrs,rowspan:Math.max(1,s-e.attrs.rowspan)},e.content);o.push(e)}t.push(N.from(o))}i=t;e=s}return{width:t,height:e,rows:i}}function CS(t,e,i,n,s,r,o){const c=t.doc.type.schema;const h=ZC(c);let l;let a;if(s>e.width){for(let r=0,c=0;re.height){const c=[];for(let t=0,n=(e.height-1)*e.width;t=e.width?false:i.nodeAt(e.map[n+t]).type==h.header_cell;c.push(s?a||(a=h.header_cell.createAndFill()):l||(l=h.cell.createAndFill()))}const u=h.row.create(null,N.from(c)),d=[];for(let t=e.height;t{if(!s)return false;const r=i.selection;if(r instanceof lS){return MS(i,n,F.near(r.$headCell,e))}if(t!="horiz"&&!r.empty)return false;const o=IS(s,t,e);if(o==null)return false;if(t=="horiz"){return MS(i,n,F.near(i.doc.resolve(r.head+e),e))}else{const s=i.doc.resolve(o);const r=rS(s,t,e);let c;if(r)c=F.near(r,1);else if(e<0)c=F.near(i.doc.resolve(s.before(-1)),-1);else c=F.near(i.doc.resolve(s.after(-1)),1);return MS(i,n,c)}}}function _S(t,e){return(i,n,s)=>{if(!s)return false;const r=i.selection;let o;if(r instanceof lS){o=r}else{const n=IS(s,t,e);if(n==null)return false;o=new lS(i.doc.resolve(n))}const c=rS(o.$headCell,t,e);if(!c)return false;return MS(i,n,new lS(o.$anchorCell,c))}}function OS(t,e){const i=t.selection;if(!(i instanceof lS))return false;if(e){const n=t.tr;const s=ZC(t.schema).cell.createAndFill().content;i.forEachCell(((t,e)=>{if(!t.content.eq(s))n.replace(n.mapping.map(e+1),n.mapping.map(e+t.nodeSize-1),new T(s,0,0))}));if(n.docChanged)e(n)}return true}function FS(t,e){const i=t.state.doc,n=QC(i.resolve(e));if(!n)return false;t.dispatch(t.state.tr.setSelection(new lS(n)));return true}function TS(t,e,i){if(!XC(t.state))return false;let n=vS(i);const s=t.state.selection;if(s instanceof lS){if(!n)n={width:1,height:1,rows:[N.from(kS(ZC(t.state.schema).cell,i))]};const e=s.$anchorCell.node(-1);const r=s.$anchorCell.start(-1);const o=VC.get(e).rectBetween(s.$anchorCell.pos-r,s.$headCell.pos-r);n=xS(n,o.right-o.left,o.bottom-o.top);AS(t.state,t.dispatch,r,o,n);return true}else if(n){const e=tS(t.state);const i=e.start(-1);AS(t.state,t.dispatch,i,VC.get(e.node(-1)).findCell(e.pos-i),n);return true}else{return false}}function RS(t,e){var i;if(e.ctrlKey||e.metaKey)return;const n=NS(t,e.target);let s;if(e.shiftKey&&t.state.selection instanceof lS){r(t.state.selection.$anchorCell,e);e.preventDefault()}else if(e.shiftKey&&n&&(s=QC(t.state.selection.$anchor))!=null&&((i=BS(t,e))==null?void 0:i.pos)!=s.pos){r(s,e);e.preventDefault()}else if(!n){return}function r(e,i){let n=BS(t,i);const s=JC.getState(t.state)==null;if(!n||!sS(e,n)){if(s)n=e;else return}const r=new lS(e,n);if(s||!t.state.selection.eq(r)){const i=t.state.tr.setSelection(r);if(s)i.setMeta(JC,e.pos);t.dispatch(i)}}function o(){t.root.removeEventListener("mouseup",o);t.root.removeEventListener("dragstart",o);t.root.removeEventListener("mousemove",c);if(JC.getState(t.state)!=null)t.dispatch(t.state.tr.setMeta(JC,-1))}function c(i){const s=i;const c=JC.getState(t.state);let h;if(c!=null){h=t.state.doc.resolve(c)}else if(NS(t,s.target)!=n){h=BS(t,e);if(!h)return o()}if(h)r(h,s)}t.root.addEventListener("mouseup",o);t.root.addEventListener("dragstart",o);t.root.addEventListener("mousemove",c)}function IS(t,e,i){if(!(t.state.selection instanceof w))return null;const{$head:n}=t.state.selection;for(let s=n.depth-1;s>=0;s--){const r=n.node(s),o=i<0?n.index(s):n.indexAfter(s);if(o!=(i<0?0:r.childCount))return null;if(r.type.spec.tableRole=="cell"||r.type.spec.tableRole=="header_cell"){const r=n.before(s);const o=e=="vert"?i>0?"down":"up":i>0?"right":"left";return t.endOfTextblock(o)?r:null}}return null}function NS(t,e){for(;e&&e!=t.dom;e=e.parentNode){if(e.nodeName=="TD"||e.nodeName=="TH"){return e}}return null}function BS(t,e){const i=t.posAtCoords({left:e.clientX,top:e.clientY});if(!i)return null;return i?QC(t.state.doc.resolve(i.pos)):null}var PS=class{constructor(t,e){this.node=t;this.cellMinWidth=e;this.dom=document.createElement("div");this.dom.className="tableWrapper";this.table=this.dom.appendChild(document.createElement("table"));this.colgroup=this.table.appendChild(document.createElement("colgroup"));jS(t,this.colgroup,this.table,e);this.contentDOM=this.table.appendChild(document.createElement("tbody"))}update(t){if(t.type!=this.node.type)return false;this.node=t;jS(t,this.colgroup,this.table,this.cellMinWidth);return true}ignoreMutation(t){return t.type=="attributes"&&(t.target==this.table||this.colgroup.contains(t.target))}};function jS(t,e,i,n,s,r){var o;let c=0;let h=true;let l=e.firstChild;const a=t.firstChild;if(!a)return;for(let t=0,i=0;tnew i(t,e,n);return new HS(-1,false)},apply(t,e){return e.apply(t)}},props:{attributes:t=>{const e=$S.getState(t);return e&&e.activeHandle>-1?{class:"resize-cursor"}:{}},handleDOMEvents:{mousemove:(i,s)=>{WS(i,s,t,e,n)},mouseleave:t=>{VS(t)},mousedown:(t,i)=>{US(t,i,e)}},decorations:t=>{const e=$S.getState(t);if(e&&e.activeHandle>-1){return tD(t,e.activeHandle)}},nodeViews:{}}});return s}var HS=class{constructor(t,e){this.activeHandle=t;this.dragging=e}apply(t){const e=this;const i=t.getMeta($S);if(i&&i.setHandle!=null)return new HS(i.setHandle,false);if(i&&i.setDragging!==void 0)return new HS(e.activeHandle,i.setDragging);if(e.activeHandle>-1&&t.docChanged){let i=t.mapping.map(e.activeHandle,-1);if(!iS(t.doc.resolve(i))){i=-1}return new HS(i,e.dragging)}return e}};function WS(t,e,i,n,s){const r=$S.getState(t.state);if(!r)return;if(!r.dragging){const n=KS(e.target);let o=-1;if(n){const{left:s,right:r}=n.getBoundingClientRect();if(e.clientX-s<=i)o=GS(t,e,"left",i);else if(r-e.clientX<=i)o=GS(t,e,"right",i)}if(o!=r.activeHandle){if(!s&&o!==-1){const e=t.state.doc.resolve(o);const i=e.node(-1);const n=VC.get(i);const s=e.start(-1);const r=n.colCount(e.pos-s)+e.nodeAfter.attrs.colspan-1;if(r==n.width-1){return}}JS(t,o)}}}function VS(t){const e=$S.getState(t.state);if(e&&e.activeHandle>-1&&!e.dragging)JS(t,-1)}function US(t,e,i){const n=$S.getState(t.state);if(!n||n.activeHandle==-1||n.dragging)return false;const s=t.state.doc.nodeAt(n.activeHandle);const r=qS(t,n.activeHandle,s.attrs);t.dispatch(t.state.tr.setMeta($S,{setDragging:{startX:e.clientX,startWidth:r}}));function o(e){window.removeEventListener("mouseup",o);window.removeEventListener("mousemove",c);const n=$S.getState(t.state);if(n==null?void 0:n.dragging){QS(t,n.activeHandle,ZS(n.dragging,e,i));t.dispatch(t.state.tr.setMeta($S,{setDragging:null}))}}function c(e){if(!e.which)return o(e);const n=$S.getState(t.state);if(!n)return;if(n.dragging){const s=ZS(n.dragging,e,i);YS(t,n.activeHandle,s,i)}}window.addEventListener("mouseup",o);window.addEventListener("mousemove",c);e.preventDefault();return true}function qS(t,e,{colspan:i,colwidth:n}){const s=n&&n[n.length-1];if(s)return s;const r=t.domAtPos(e);const o=r.node.childNodes[r.offset];let c=o.offsetWidth,h=i;if(n){for(let t=0;t0?-1:0;if(hS(e,n,s+r)){r=s==0||s==e.width?null:0}for(let o=0;o0&&s0&&e.map[c-1]==h||s0?-1:0;if(cD(e,n,s+h))h=s==0||s==e.height?null:0;for(let o=0,l=e.width*s;o0&&s0&&h==e.map[o-e.width]){const e=i.nodeAt(h).attrs;t.setNodeMarkup(t.mapping.slice(c).map(h+n),null,{...e,rowspan:e.rowspan-1});r+=e.colspan-1}else if(s0&&i[r]==i[r-1]||n.right0&&i[s]==i[s-t]||n.bottomi[t.type.spec.tableRole]))(t,e)}function wD(t){return(e,i)=>{var n;const s=e.selection;let r;let o;if(!(s instanceof lS)){r=YC(s.$from);if(!r)return false;o=(n=QC(s.$from))==null?void 0:n.pos}else{if(s.$anchorCell.pos!=s.$headCell.pos)return false;r=s.$anchorCell.nodeAfter;o=s.$anchorCell.pos}if(r==null||o==null){return false}if(r.attrs.colspan==1&&r.attrs.rowspan==1){return false}if(i){let n=r.attrs;const c=[];const h=n.colwidth;if(n.rowspan>1)n={...n,rowspan:1};if(n.colspan>1)n={...n,colspan:1};const l=eD(e),a=e.tr;for(let t=0;t{if(i.attrs[t]!==e)r.setNodeMarkup(n,null,{...i.attrs,[t]:e})}));else r.setNodeMarkup(s.pos,null,{...s.nodeAfter.attrs,[t]:e});n(r)}return true}}function vD(t){return function(e,i){if(!XC(e))return false;if(i){const n=ZC(e.schema);const s=eD(e),r=e.tr;const o=s.map.cellsInRect(t=="column"?{left:s.left,top:0,right:s.right,bottom:s.map.height}:t=="row"?{left:0,top:s.top,right:s.map.width,bottom:s.bottom}:s);const c=o.map((t=>s.table.nodeAt(t)));for(let t=0;t{const e=t+s.tableStart;const i=r.doc.nodeAt(e);if(i){r.setNodeMarkup(e,u,i.attrs)}}));i(r)}return true}}kD("row",{useDeprecatedLogic:true});kD("column",{useDeprecatedLogic:true});var xD=kD("cell",{useDeprecatedLogic:true});function CD(t,e){if(e<0){const e=t.nodeBefore;if(e)return t.pos-e.nodeSize;for(let e=t.index(-1)-1,i=t.before();e>=0;e--){const n=t.node(-1).child(e);const s=n.lastChild;if(s){return i-1-s.nodeSize}i-=n.nodeSize}}else{if(t.index()0;n--){const s=i.node(n);if(s.type.spec.tableRole=="table"){if(e)e(t.tr.delete(i.before(n),i.after(n)).scrollIntoView());return true}}return false}function AD({allowTableNodeSelection:t=false}={}){return new o({key:JC,state:{init(){return null},apply(t,e){const i=t.getMeta(JC);if(i!=null)return i==-1?null:i;if(e==null||!t.docChanged)return e;const{deleted:n,pos:s}=t.mapping.mapResult(e);return n?null:s}},props:{decorations:uS,handleDOMEvents:{mousedown:RS},createSelectionBetween(t){return JC.getState(t.state)!=null?t.state.selection:null},handleTripleClick:FS,handleKeyDown:ES,handlePaste:TS},appendTransaction(e,i,n){return gS(n,wS(n,i),t)}})}function ED(t,e,i,n,s,r){let o=0;let c=true;let h=e.firstChild;const l=t.firstChild;for(let t=0,i=0;t{const n=t.nodes[i];if(n.spec.tableRole){e[n.spec.tableRole]=n}}));t.cached.tableNodeTypes=e;return e}function OD(t,e,i,n,s){const r=_D(t);const o=[];const c=[];for(let t=0;t{const{selection:e}=t.state;if(!FD(e)){return false}let i=0;const n=H(e.ranges[0].$from,(t=>t.type.name==="table"));n===null||n===void 0?void 0:n.node.descendants((t=>{if(t.type.name==="table"){return false}if(["tableCell","tableHeader"].includes(t.type.name)){i+=1}}));const s=i===e.ranges.length;if(!s){return false}t.commands.deleteTable();return true};const RD=d.create({name:"table",addOptions(){return{HTMLAttributes:{},resizable:false,handleWidth:5,cellMinWidth:25,View:MD,lastColumnResizable:true,allowTableNodeSelection:false}},content:"tableRow+",tableRole:"table",isolating:true,group:"block",parseHTML(){return[{tag:"table"}]},renderHTML({HTMLAttributes:t}){return["table",l(this.options.HTMLAttributes,t),["tbody",0]]},addCommands(){return{insertTable:({rows:t=3,cols:e=3,withHeaderRow:i=true}={})=>({tr:n,dispatch:s,editor:r})=>{const o=OD(r.schema,t,e,i);if(s){const t=n.selection.anchor+1;n.replaceSelectionWith(o).scrollIntoView().setSelection(w.near(n.doc.resolve(t)))}return true},addColumnBefore:()=>({state:t,dispatch:e})=>nD(t,e),addColumnAfter:()=>({state:t,dispatch:e})=>sD(t,e),deleteColumn:()=>({state:t,dispatch:e})=>oD(t,e),addRowBefore:()=>({state:t,dispatch:e})=>lD(t,e),addRowAfter:()=>({state:t,dispatch:e})=>aD(t,e),deleteRow:()=>({state:t,dispatch:e})=>dD(t,e),deleteTable:()=>({state:t,dispatch:e})=>DD(t,e),mergeCells:()=>({state:t,dispatch:e})=>pD(t,e),splitCell:()=>({state:t,dispatch:e})=>mD(t,e),toggleHeaderColumn:()=>({state:t,dispatch:e})=>kD("column")(t,e),toggleHeaderRow:()=>({state:t,dispatch:e})=>kD("row")(t,e),toggleHeaderCell:()=>({state:t,dispatch:e})=>xD(t,e),mergeOrSplit:()=>({state:t,dispatch:e})=>{if(pD(t,e)){return true}return mD(t,e)},setCellAttribute:(t,e)=>({state:i,dispatch:n})=>bD(t,e)(i,n),goToNextCell:()=>({state:t,dispatch:e})=>SD(1)(t,e),goToPreviousCell:()=>({state:t,dispatch:e})=>SD(-1)(t,e),fixTables:()=>({state:t,dispatch:e})=>{if(e){wS(t)}return true},setCellSelection:t=>({tr:e,dispatch:i})=>{if(i){const i=lS.create(e.doc,t.anchorCell,t.headCell);e.setSelection(i)}return true}}},addKeyboardShortcuts(){return{Tab:()=>{if(this.editor.commands.goToNextCell()){return true}if(!this.editor.can().addRowAfter()){return false}return this.editor.chain().addRowAfter().goToNextCell().run()},"Shift-Tab":()=>this.editor.commands.goToPreviousCell(),Backspace:TD,"Mod-Backspace":TD,Delete:TD,"Mod-Delete":TD}},addProseMirrorPlugins(){const t=this.options.resizable&&this.editor.isEditable;return[...t?[zS({handleWidth:this.options.handleWidth,cellMinWidth:this.options.cellMinWidth,View:this.options.View,lastColumnResizable:this.options.lastColumnResizable})]:[],AD({allowTableNodeSelection:this.options.allowTableNodeSelection})]},extendNodeSchema(t){const e={name:t.name,options:t.options,storage:t.storage};return{tableRole:B(P(t,"tableRole",e))}}});const ID=d.create({name:"tableCell",addOptions(){return{HTMLAttributes:{}}},content:"block+",addAttributes(){return{colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{const e=t.getAttribute("colwidth");const i=e?[parseInt(e,10)]:null;return i}}}},tableRole:"cell",isolating:true,parseHTML(){return[{tag:"td"}]},renderHTML({HTMLAttributes:t}){return["td",l(this.options.HTMLAttributes,t),0]}});const ND=d.create({name:"tableHeader",addOptions(){return{HTMLAttributes:{}}},content:"block+",addAttributes(){return{colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{const e=t.getAttribute("colwidth");const i=e?[parseInt(e,10)]:null;return i}}}},tableRole:"header_cell",isolating:true,parseHTML(){return[{tag:"th"}]},renderHTML({HTMLAttributes:t}){return["th",l(this.options.HTMLAttributes,t),0]}});const BD=d.create({name:"tableRow",addOptions(){return{HTMLAttributes:{}}},content:"(tableCell | tableHeader)*",tableRole:"row",parseHTML(){return[{tag:"tr"}]},renderHTML({HTMLAttributes:t}){return["tr",l(this.options.HTMLAttributes,t),0]}});const PD=ID.extend({addAttributes(){return{colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{const e=t.getAttribute("colwidth");return e?[parseInt(e,10)]:null},renderHTML:t=>t.colwidth?{style:`width: ${t.colwidth[0]}px;`}:{}}}},renderHTML({HTMLAttributes:t}){return["td",l(this.options.HTMLAttributes,t,{style:"border: 1px solid black; padding: 5px;"}),0]}});const jD=ND.extend({addAttributes(){return{colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{const e=t.getAttribute("colwidth");return e?[parseInt(e,10)]:null},renderHTML:t=>t.colwidth?{style:`width: ${t.colwidth[0]}px;`}:{}}}},renderHTML({HTMLAttributes:t}){return["th",l(this.options.HTMLAttributes,t,{style:"border: 1px solid black; padding: 5px;"}),0]}});const $D=RD.extend({renderHTML({HTMLAttributes:t}){return["table",l(this.options.HTMLAttributes,t,{style:"border-collapse: collapse; border: 1px solid black;"}),["tbody",0]]}});var zD;(function(t){t[t["compact"]=0]="compact";t[t["full"]=1]="full"})(zD||(zD={}));class HD extends W{constructor(){super(...arguments);this.contentComponent=null}}const WD='button,input,select{font-size:inherit;font-family:inherit;color:#333333;margin:0.1em;border:1px solid #333333;border-radius:0.25em;padding:0.1em 0.4em;background:white;accent-color:black}button[disabled],input[disabled],select[disabled]{opacity:0.3}.editor{font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;background-color:#fff;color:#0d0d0d;display:flex;flex-direction:column;min-height:10em;max-height:96vh}.editor.resizable{resize:vertical;overflow:hidden}.editor.is-fullscreen{height:100% !important;max-height:unset;resize:none}.editor.full{min-height:100%}.editor__content{flex:1 1 auto;overflow-x:hidden;overflow-y:auto;padding:0.25em 0.75em 1.25em 1em;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;cursor:text}.editor__content.sm{min-height:3.5em}.editor__content.lg{min-height:14em}.editor__content.full{min-height:100%}.editor__content.narrow{padding:0 0 0 0.5em}.editor__content .collaboration-cursor__caret{border-left:1px solid #0d0d0d;border-right:1px solid #0d0d0d;margin-left:-1px;margin-right:-1px;pointer-events:none;position:relative;word-break:normal}.editor__content .collaboration-cursor__label{border-radius:3px 3px 3px 0;color:#0d0d0d;font-size:12px;font-style:normal;font-weight:600;left:-1px;line-height:normal;padding:0.1em 0.3em;position:absolute;top:-1.4em;user-select:none;white-space:nowrap}.editor__footer{align-items:center;border-top:1px solid #d8dbde;color:#6e6e6e;display:flex;flex:0 0 auto;font-size:12px;flex-wrap:wrap;font-weight:600;justify-content:space-between;padding:0.25em 0.75em;white-space:nowrap}.editor ::-webkit-scrollbar{width:14px;height:14px}.editor ::-webkit-scrollbar-track{border:4px solid transparent;background-clip:padding-box;border-radius:8px;background-color:transparent}.editor ::-webkit-scrollbar-thumb{border:4px solid rgba(0, 0, 0, 0);background-clip:padding-box;border-radius:8px;background-color:rgba(0, 0, 0, 0)}.editor :hover::-webkit-scrollbar-thumb{background-color:rgba(0, 0, 0, 0.1)}.editor ::-webkit-scrollbar-thumb:hover{background-color:rgba(0, 0, 0, 0.15)}.editor ::-webkit-scrollbar-button{display:none;width:0;height:0}.editor ::-webkit-scrollbar-corner{background-color:transparent}.editor .monaco-editor{height:100%;min-height:10em}.editor .monaco-editor.sm{min-height:3.5em}.editor .monaco-editor.lg{min-height:14em}.editor .monaco-editor.full{min-height:100%}';const VD=class{constructor(e){t(this,e);this.updateInputValue=()=>{const t=document.querySelector(`input[name='${this.name}']`);if(Boolean(t)){const e=this.editor.getHTML();t.value=e.replace(/^<\/p>$|^<\/h[123]>(

<\/p>)?$/,"")}};this.toggleFullscreen=()=>{if(Boolean(document.fullscreenElement)){document.exitFullscreen().then((()=>{})).catch((t=>{alert(`Unable to exit fullscreen: ${t.message} (${t.name})`)}));return}this.element.requestFullscreen().then((()=>{})).catch((t=>{alert(`Unable to enter fullscreen: ${t.message} (${t.name})`)}))};this.toggleMonaco=async()=>{if(this.isMonaco){const t=await this.monacoEditor.getValue();this.editor.chain().setContent(t).run()}this.isMonaco=!this.isMonaco};this.name="";this.createInput=false;this.uploadUrl="";this.placeholder="";this.fullscreenable=false;this.resizable=false;this.exposeEditor=false;this.size="sm";this.hideMenubar=undefined;this.menubarMode="full";this.bubbleMenu=false;this.collaborative=false;this.hocuspocus="";this.docName="";this.username="";this.userColor="#ffcc00";this.editor=null;this.forceUpdateCounter=0;this.isFullscreen=false;this.isMonaco=false}getHTML(){return Promise.resolve(this.editor.getHTML())}focusEditor(){return Promise.resolve(this.editor.commands.focus())}blurEditor(){return Promise.resolve(this.editor.commands.blur())}forceUpdate(){if(this.forceUpdateCounter>1e3){this.forceUpdateCounter=0}else{this.forceUpdateCounter++}}componentWillLoad(){const{lowlight:t}=Fo;this.ydoc=this.collaborative?new wf:null;const e=this.collaborative?[$w.configure({document:this.ydoc}),Ww.configure({provider:new ck({url:this.hocuspocus,name:this.docName,document:this.ydoc}),user:{name:this.username,color:this.userColor}})]:[];this.editor=new HD({extensions:[ha.configure(Object.assign({history:{depth:50,newGroupDelay:500},codeBlock:false},this.collaborative?{history:false}:{})),K,J,Z,V,vt,yt.extend({priority:1e3}),Hh,BC,Wh,zC,jC,ri.configure({lowlight:t}),$D.configure({resizable:true}),BD,jD,PD,Ro.configure({inline:true}),Th,Rh,Ih,Nh.configure({types:["heading","paragraph"]}),lk,jh,RC.configure({uploadUrl:this.uploadUrl}),$h.configure({placeholder:this.placeholder}),zh,...e],editorProps:{attributes:{spellcheck:"false"},handleDOMEvents:{mouseup:t=>{requestAnimationFrame((()=>{const e=t.pluginViews.find((t=>{var e;return((e=t.constructor)===null||e===void 0?void 0:e.name)==="BubbleMenuView"}));e===null||e===void 0?void 0:e.update(t)}))}}},content:this.element.innerHTML});this.editor.on("transaction",(()=>{requestAnimationFrame((()=>{requestAnimationFrame((()=>{this.forceUpdate()}))}))}));if(this.createInput&&Boolean(this.name)){const t=document.createElement("input");t.type="hidden";t.name=this.name;this.element.append(t);this.editor.on("blur",(()=>{requestAnimationFrame((()=>{this.updateInputValue()}))}));this.updateInputValue()}if(this.exposeEditor){if(!window.$tiptapEditors){window.$tiptapEditors={}}window.$tiptapEditors[this.element.id||this.name]=this.editor}this.element.addEventListener("fullscreenchange",(()=>{this.isFullscreen=Boolean(document.fullscreenElement)}))}disconnectedCallback(){this.editor.destroy()}render(){if(!Boolean(this.editor)){return null}if(this.size==="full"){this.resizable=false}return e("div",{class:`editor${this.isFullscreen?" is-fullscreen":""}${this.resizable?" resizable":""}${this.size==="full"?" full":""}`},e("tiptap-bubble-menu",{editor:this.editor,menuProps:{tippyOptions:{duration:100}},disabled:!this.bubbleMenu}),this.hideMenubar?null:e("tiptap-menubar",{editor:this.editor,menubarMode:zD[this.menubarMode],toggleMonaco:this.toggleMonaco,toggleFullscreen:this.fullscreenable&&this.toggleFullscreen,states:{isMonaco:this.isMonaco,isCollaborative:this.collaborative,isFullscreen:this.isFullscreen},forceUpdateCounter:this.forceUpdateCounter}),this.isMonaco?e("monaco-editor",{class:`monaco-editor ${this.size}`,ref:t=>this.monacoEditor=t,options:{language:"html",ariaContainerElement:null,value:this.editor.getHTML()},tiptapEditor:this.editor,updateInputValue:this.createInput?this.updateInputValue:null}):e("tiptap-editor-content",{class:`editor__content ${this.size}`,editor:this.editor}))}get element(){return i(this)}};VD.style=WD;let UD=typeof document!=="undefined"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0;function qD(t,e){let i;if(e.length===0){i=t}else{i=t.replace(/\{(\d+)\}/g,((t,i)=>{const n=i[0];const s=e[n];let r=t;if(typeof s==="string"){r=s}else if(typeof s==="number"||typeof s==="boolean"||s===void 0||s===null){r=String(s)}return r}))}if(UD){i="["+i.replace(/[aouei]/g,"$&$&")+"]"}return i}function KD(t,e,...i){return qD(e,i)}function GD(t){return undefined}var ZD;const JD="en";let QD=false;let YD=false;let XD=false;let tA=false;let eA=false;let iA=false;let nA=false;let sA=undefined;let rA=JD;let oA=undefined;const cA=typeof self==="object"?self:typeof global==="object"?global:{};let hA=undefined;if(typeof cA.vscode!=="undefined"&&typeof cA.vscode.process!=="undefined"){hA=cA.vscode.process}else if(typeof process!=="undefined"){hA=process}const lA=typeof((ZD=hA===null||hA===void 0?void 0:hA.versions)===null||ZD===void 0?void 0:ZD.electron)==="string";const aA=lA&&(hA===null||hA===void 0?void 0:hA.type)==="renderer";if(typeof navigator==="object"&&!aA){oA=navigator.userAgent;QD=oA.indexOf("Windows")>=0;YD=oA.indexOf("Macintosh")>=0;iA=(oA.indexOf("Macintosh")>=0||oA.indexOf("iPad")>=0||oA.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0;XD=oA.indexOf("Linux")>=0;nA=(oA===null||oA===void 0?void 0:oA.indexOf("Mobi"))>=0;eA=true;GD(KD({key:"ensureLoaderPluginIsLoaded",comment:["{Locked}"]},"_"));sA=JD;rA=sA}else if(typeof hA==="object"){QD=hA.platform==="win32";YD=hA.platform==="darwin";XD=hA.platform==="linux";sA=JD;rA=JD;const t=hA.env["VSCODE_NLS_CONFIG"];if(t){try{const e=JSON.parse(t);const i=e.availableLanguages["*"];sA=e.locale;rA=i?i:JD}catch(t){}}tA=true}else{console.error("Unable to resolve platform.")}const uA=QD;const dA=YD;const fA=XD;const gA=tA;const pA=eA;const mA=eA&&typeof cA.importScripts==="function";const wA=iA;const bA=nA;const vA=oA;const yA=rA;const kA=typeof cA.postMessage==="function"&&!cA.importScripts;const xA=(()=>{if(kA){const t=[];cA.addEventListener("message",(e=>{if(e.data&&e.data.vscodeScheduleAsyncWork){for(let i=0,n=t.length;i{const n=++e;t.push({id:n,callback:i});cA.postMessage({vscodeScheduleAsyncWork:n},"*")}}return t=>setTimeout(t)})();const CA=YD||iA?2:QD?1:3;let SA=true;let DA=false;function AA(){if(!DA){DA=true;const t=new Uint8Array(2);t[0]=1;t[1]=2;const e=new Uint16Array(t.buffer);SA=e[0]===(2<<8)+1}return SA}const EA=!!(vA&&vA.indexOf("Chrome")>=0);const MA=!!(vA&&vA.indexOf("Firefox")>=0);const LA=!!(!EA&&(vA&&vA.indexOf("Safari")>=0));const _A=!!(vA&&vA.indexOf("Edg/")>=0);!!(vA&&vA.indexOf("Android")>=0);var OA;(function(t){function e(t){return t&&typeof t==="object"&&typeof t[Symbol.iterator]==="function"}t.is=e;const i=Object.freeze([]);function n(){return i}t.empty=n;function*s(t){yield t}t.single=s;function r(t){if(e(t)){return t}else{return s(t)}}t.wrap=r;function o(t){return t||i}t.from=o;function c(t){return!t||t[Symbol.iterator]().next().done===true}t.isEmpty=c;function h(t){return t[Symbol.iterator]().next().value}t.first=h;function l(t,e){for(const i of t){if(e(i)){return true}}return false}t.some=l;function a(t,e){for(const i of t){if(e(i)){return i}}return undefined}t.find=a;function*u(t,e){for(const i of t){if(e(i)){yield i}}}t.filter=u;function*d(t,e){let i=0;for(const n of t){yield e(n,i++)}}t.map=d;function*f(...t){for(const e of t){for(const t of e){yield t}}}t.concat=f;function g(t,e,i){let n=i;for(const i of t){n=e(n,i)}return n}t.reduce=g;function*p(t,e,i=t.length){if(e<0){e+=t.length}if(i<0){i+=t.length}else if(i>t.length){i=t.length}for(;e{if(!n){n=true;this._remove(i)}}}shift(){if(this._first===FA.Undefined){return undefined}else{const t=this._first.element;this._remove(this._first);return t}}pop(){if(this._last===FA.Undefined){return undefined}else{const t=this._last.element;this._remove(this._last);return t}}_remove(t){if(t.prev!==FA.Undefined&&t.next!==FA.Undefined){const e=t.prev;e.next=t.next;t.next.prev=e}else if(t.prev===FA.Undefined&&t.next===FA.Undefined){this._first=FA.Undefined;this._last=FA.Undefined}else if(t.next===FA.Undefined){this._last=this._last.prev;this._last.next=FA.Undefined}else if(t.prev===FA.Undefined){this._first=this._first.next;this._first.prev=FA.Undefined}this._size-=1}*[Symbol.iterator](){let t=this._first;while(t!==FA.Undefined){yield t.element;t=t.next}}}const RA="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function IA(t=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(const i of RA){if(t.indexOf(i)>=0){continue}e+="\\"+i}e+="\\s]+)";return new RegExp(e,"g")}const NA=IA();function BA(t){let e=NA;if(t&&t instanceof RegExp){if(!t.global){let i="g";if(t.ignoreCase){i+="i"}if(t.multiline){i+="m"}if(t.unicode){i+="u"}e=new RegExp(t.source,i)}else{e=t}}e.lastIndex=0;return e}const PA=new TA;PA.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function jA(t,e,i,n,s){if(!s){s=OA.first(PA)}if(i.length>s.maxLen){let r=t-s.maxLen/2;if(r<0){r=0}else{n+=r}i=i.substring(r,t+s.maxLen/2);return jA(t,e,i,n,s)}const r=Date.now();const o=t-1-n;let c=-1;let h=null;for(let t=1;;t++){if(Date.now()-r>=s.timeBudget){break}const n=o-s.windowSize*t;e.lastIndex=Math.max(0,n);const l=$A(e,i,o,c);if(!l&&h){break}h=l;if(n<=0){break}c=n}if(h){const t={word:h[0],startColumn:n+1+h.index,endColumn:n+1+h.index+h[0].length};e.lastIndex=0;return t}return null}function $A(t,e,i,n){let s;while(s=t.exec(e)){const e=s.index||0;if(e<=i&&t.lastIndex>=i){return s}else if(n>0&&e>n){return null}}return null}function zA(t,e=0){return t[t.length-(1+e)]}function HA(t){if(t.length===0){throw new Error("Invalid tail call")}return[t.slice(0,t.length-1),t[t.length-1]]}function WA(t,e,i=((t,e)=>t===e)){if(t===e){return true}if(!t||!e){return false}if(t.length!==e.length){return false}for(let n=0,s=t.length;ni(t[n],e)))}function qA(t,e){let i=0,n=t-1;while(i<=n){const t=(i+n)/2|0;const s=e(t);if(s<0){i=t+1}else if(s>0){n=t-1}else{return t}}return-(i+1)}function KA(t,e){let i=0,n=t.length;if(n===0){return 0}while(i=e.length){throw new TypeError("invalid index")}const n=e[Math.floor(e.length*Math.random())];const s=[];const r=[];const o=[];for(const t of e){const e=i(t,n);if(e<0){s.push(t)}else if(e>0){r.push(t)}else{o.push(t)}}if(t!!t))}function QA(t){let e=0;for(let i=0;i0}function tE(t,e=(t=>t)){const i=new Set;return t.filter((t=>{const n=e(t);if(i.has(n)){return false}i.add(n);return true}))}function eE(t,e){const i=iE(t,e);if(i===-1){return undefined}return t[i]}function iE(t,e){for(let i=t.length-1;i>=0;i--){const n=t[i];if(e(n)){return i}}return-1}function nE(t,e){return t.length>0?t[0]:e}function sE(t,e){let i=typeof e==="number"?t:0;if(typeof e==="number"){i=t}else{i=0;e=t}const n=[];if(i<=e){for(let t=i;te;t--){n.push(t)}}return n}function rE(t,e,i){const n=t.slice(0,e);const s=t.slice(e);return n.concat(i,s)}function oE(t,e){const i=t.indexOf(e);if(i>-1){t.splice(i,1);t.unshift(e)}}function cE(t,e){const i=t.indexOf(e);if(i>-1){t.splice(i,1);t.push(e)}}function hE(t,e){for(const i of e){t.push(i)}}function lE(t){return Array.isArray(t)?t:[t]}function aE(t,e,i){const n=dE(t,e);const s=t.length;const r=i.length;t.length=s+r;for(let e=s-1;e>=n;e--){t[e+r]=t[e]}for(let e=0;e0}t.isGreaterThan=i;function n(t){return t===0}t.isNeitherLessOrGreaterThan=n;t.greaterThan=1;t.lessThan=-1;t.neitherLessOrGreaterThan=0})(fE||(fE={}));function gE(t,e){return(i,n)=>e(t(i),t(n))}const pE=(t,e)=>t-e;function mE(t,e){if(t.length===0){return undefined}let i=t[0];for(let n=1;n0){i=s}}return i}function wE(t,e){if(t.length===0){return undefined}let i=t[0];for(let n=1;n=0){i=s}}return i}function bE(t,e){return mE(t,((t,i)=>-e(t,i)))}class vE{constructor(t){this.items=t;this.firstIdx=0;this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(t){let e=this.firstIdx;while(e=0&&t(this.items[e])){e--}const i=e===this.lastIdx?null:this.items.slice(e+1,this.lastIdx+1);this.lastIdx=e;return i}peek(){if(this.length===0){return undefined}return this.items[this.firstIdx]}dequeue(){const t=this.items[this.firstIdx];this.firstIdx++;return t}takeCount(t){const e=this.items.slice(this.firstIdx,this.firstIdx+t);this.firstIdx+=t;return e}}class yE{constructor(t){this.iterate=t}toArray(){const t=[];this.iterate((e=>{t.push(e);return true}));return t}filter(t){return new yE((e=>this.iterate((i=>t(i)?e(i):true))))}map(t){return new yE((e=>this.iterate((i=>e(t(i))))))}findLast(t){let e;this.iterate((i=>{if(t(i)){e=i}return true}));return e}findLastMaxBy(t){let e;let i=true;this.iterate((n=>{if(i||fE.isGreaterThan(t(n,e))){i=false;e=n}return true}));return e}}yE.empty=new yE((t=>{}));function kE(t){return typeof t==="string"}function xE(t){return typeof t==="object"&&t!==null&&!Array.isArray(t)&&!(t instanceof RegExp)&&!(t instanceof Date)}function CE(t){const e=Object.getPrototypeOf(Uint8Array);return typeof t==="object"&&t instanceof e}function SE(t){return typeof t==="number"&&!isNaN(t)}function DE(t){return!!t&&typeof t[Symbol.iterator]==="function"}function AE(t){return t===true||t===false}function EE(t){return typeof t==="undefined"}function ME(t){return!LE(t)}function LE(t){return EE(t)||t===null}function _E(t,e){if(!t){throw new Error(e?`Unexpected type, expected '${e}'`:"Unexpected type")}}function OE(t){if(LE(t)){throw new Error("Assertion Failed: argument is undefined or null")}return t}function FE(t){return typeof t==="function"}function TE(t,e){const i=Math.min(t.length,e.length);for(let n=0;n{e[t]=i&&typeof i==="object"?NE(i):i}));return e}function BE(t){if(!t||typeof t!=="object"){return t}const e=[t];while(e.length>0){const t=e.shift();Object.freeze(t);for(const i in t){if(PE.call(t,i)){const n=t[i];if(typeof n==="object"&&!Object.isFrozen(n)&&!CE(n)){e.push(n)}}}}return t}const PE=Object.prototype.hasOwnProperty;function jE(t,e){return $E(t,e,new Set)}function $E(t,e,i){if(LE(t)){return t}const n=e(t);if(typeof n!=="undefined"){return n}if(Array.isArray(t)){const n=[];for(const s of t){n.push($E(s,e,i))}return n}if(xE(t)){if(i.has(t)){throw new Error("Cannot clone recursive data-structure")}i.add(t);const n={};for(const s in t){if(PE.call(t,s)){n[s]=$E(t[s],e,i)}}i.delete(t);return n}return t}function zE(t,e,i=true){if(!xE(t)){return e}if(xE(e)){Object.keys(e).forEach((n=>{if(n in t){if(i){if(xE(t[n])&&xE(e[n])){zE(t[n],e[n],i)}else{t[n]=e[n]}}}else{t[n]=e[n]}}))}return t}function HE(t,e){if(t===e){return true}if(t===null||t===undefined||e===null||e===undefined){return false}if(typeof t!==typeof e){return false}if(typeof t!=="object"){return false}if(Array.isArray(t)!==Array.isArray(e)){return false}let i;let n;if(Array.isArray(t)){if(t.length!==e.length){return false}for(i=0;ifunction(){const i=Array.prototype.slice.call(arguments,0);return e(t,i)};const n={};for(const e of t){n[e]=i(e)}return n}const qE={tabSize:4,indentSize:4,insertSpaces:true,detectIndentation:true,trimAutoWhitespace:true,largeFileOptimizations:true,bracketPairColorizationOptions:{enabled:true,independentColorPoolPerBracketType:false}};const KE=8;class GE{constructor(t){this._values=t}hasChanged(t){return this._values[t]}}class ZE{constructor(){this.stableMinimapLayoutInput=null;this.stableFitMaxMinimapScale=0;this.stableFitRemainingWidth=0}}class JE{constructor(t,e,i,n){this.id=t;this.name=e;this.defaultValue=i;this.schema=n}applyUpdate(t,e){return YE(t,e)}compute(t,e,i){return i}}class QE{constructor(t,e){this.newValue=t;this.didChange=e}}function YE(t,e){if(typeof t!=="object"||typeof e!=="object"||!t||!e){return new QE(e,t!==e)}if(Array.isArray(t)||Array.isArray(e)){const i=Array.isArray(t)&&Array.isArray(e)&&WA(t,e);return new QE(e,!i)}let i=false;for(const n in e){if(e.hasOwnProperty(n)){const s=YE(t[n],e[n]);if(s.didChange){t[n]=s.newValue;i=true}}}return new QE(t,i)}class XE{constructor(t){this.schema=undefined;this.id=t;this.name="_never_";this.defaultValue=undefined}applyUpdate(t,e){return YE(t,e)}validate(t){return this.defaultValue}}class tM{constructor(t,e,i,n){this.id=t;this.name=e;this.defaultValue=i;this.schema=n}applyUpdate(t,e){return YE(t,e)}validate(t){if(typeof t==="undefined"){return this.defaultValue}return t}compute(t,e,i){return i}}function eM(t,e){if(typeof t==="undefined"){return e}if(t==="false"){return false}return Boolean(t)}class iM extends tM{constructor(t,e,i,n=undefined){if(typeof n!=="undefined"){n.type="boolean";n.default=i}super(t,e,i,n)}validate(t){return eM(t,this.defaultValue)}}function nM(t,e,i,n){if(typeof t==="undefined"){return e}let s=parseInt(t,10);if(isNaN(s)){return e}s=Math.max(i,s);s=Math.min(n,s);return s|0}class sM extends tM{static clampedInt(t,e,i,n){return nM(t,e,i,n)}constructor(t,e,i,n,s,r=undefined){if(typeof r!=="undefined"){r.type="integer";r.default=i;r.minimum=n;r.maximum=s}super(t,e,i,r);this.minimum=n;this.maximum=s}validate(t){return sM.clampedInt(t,this.defaultValue,this.minimum,this.maximum)}}class rM extends tM{static clamp(t,e,i){if(ti){return i}return t}static float(t,e){if(typeof t==="number"){return t}if(typeof t==="undefined"){return e}const i=parseFloat(t);return isNaN(i)?e:i}constructor(t,e,i,n,s){if(typeof s!=="undefined"){s.type="number";s.default=i}super(t,e,i,s);this.validationFn=n}validate(t){return this.validationFn(rM.float(t,this.defaultValue))}}class oM extends tM{static string(t,e){if(typeof t!=="string"){return e}return t}constructor(t,e,i,n=undefined){if(typeof n!=="undefined"){n.type="string";n.default=i}super(t,e,i,n)}validate(t){return oM.string(t,this.defaultValue)}}function cM(t,e,i){if(typeof t!=="string"){return e}if(i.indexOf(t)===-1){return e}return t}class hM extends tM{constructor(t,e,i,n,s=undefined){if(typeof s!=="undefined"){s.type="string";s.enum=n;s.default=i}super(t,e,i,s);this._allowedValues=n}validate(t){return cM(t,this.defaultValue,this._allowedValues)}}class lM extends JE{constructor(t,e,i,n,s,r,o=undefined){if(typeof o!=="undefined"){o.type="string";o.enum=s;o.default=n}super(t,e,i,o);this._allowedValues=s;this._convert=r}validate(t){if(typeof t!=="string"){return this.defaultValue}if(this._allowedValues.indexOf(t)===-1){return this.defaultValue}return this._convert(t)}}function aM(t){switch(t){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}class uM extends JE{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[KD("accessibilitySupport.auto","Use platform APIs to detect when a Screen Reader is attached"),KD("accessibilitySupport.on","Optimize for usage with a Screen Reader"),KD("accessibilitySupport.off","Assume a screen reader is not attached")],default:"auto",tags:["accessibility"],description:KD("accessibilitySupport","Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(t){switch(t){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(t,e,i){if(i===0){return t.accessibilitySupport}return i}}class dM extends JE{constructor(){const t={insertSpace:true,ignoreEmptyLines:true};super(21,"comments",t,{"editor.comments.insertSpace":{type:"boolean",default:t.insertSpace,description:KD("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:t.ignoreEmptyLines,description:KD("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{insertSpace:eM(e.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:eM(e.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}function fM(t){switch(t){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var gM;(function(t){t[t["Line"]=1]="Line";t[t["Block"]=2]="Block";t[t["Underline"]=3]="Underline";t[t["LineThin"]=4]="LineThin";t[t["BlockOutline"]=5]="BlockOutline";t[t["UnderlineThin"]=6]="UnderlineThin"})(gM||(gM={}));function pM(t){switch(t){case"line":return gM.Line;case"block":return gM.Block;case"underline":return gM.Underline;case"line-thin":return gM.LineThin;case"block-outline":return gM.BlockOutline;case"underline-thin":return gM.UnderlineThin}}class mM extends XE{constructor(){super(136)}compute(t,e,i){const n=["monaco-editor"];if(e.get(37)){n.push(e.get(37))}if(t.extraEditorClassName){n.push(t.extraEditorClassName)}if(e.get(71)==="default"){n.push("mouse-default")}else if(e.get(71)==="copy"){n.push("mouse-copy")}if(e.get(106)){n.push("showUnused")}if(e.get(134)){n.push("showDeprecated")}return n.join(" ")}}class wM extends iM{constructor(){super(35,"emptySelectionClipboard",true,{description:KD("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(t,e,i){return i&&t.emptySelectionClipboard}}class bM extends JE{constructor(){const t={cursorMoveOnType:true,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:false,addExtraSpaceOnTop:true,loop:true};super(39,"find",t,{"editor.find.cursorMoveOnType":{type:"boolean",default:t.cursorMoveOnType,description:KD("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:t.seedSearchStringFromSelection,enumDescriptions:[KD("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),KD("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),KD("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:KD("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:t.autoFindInSelection,enumDescriptions:[KD("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),KD("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),KD("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:KD("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:t.globalFindClipboard,description:KD("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:dA},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:t.addExtraSpaceOnTop,description:KD("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:t.loop,description:KD("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{cursorMoveOnType:eM(e.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof t.seedSearchStringFromSelection==="boolean"?t.seedSearchStringFromSelection?"always":"never":cM(e.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof t.autoFindInSelection==="boolean"?t.autoFindInSelection?"always":"never":cM(e.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:eM(e.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:eM(e.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:eM(e.loop,this.defaultValue.loop)}}}class vM extends JE{constructor(){super(49,"fontLigatures",vM.OFF,{anyOf:[{type:"boolean",description:KD("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:KD("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:KD("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:false})}validate(t){if(typeof t==="undefined"){return this.defaultValue}if(typeof t==="string"){if(t==="false"){return vM.OFF}if(t==="true"){return vM.ON}return t}if(Boolean(t)){return vM.ON}return vM.OFF}}vM.OFF='"liga" off, "calt" off';vM.ON='"liga" on, "calt" on';class yM extends JE{constructor(){super(52,"fontVariations",yM.OFF,{anyOf:[{type:"boolean",description:KD("fontVariations","Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:KD("fontVariationSettings","Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:KD("fontVariationsGeneral","Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:false})}validate(t){if(typeof t==="undefined"){return this.defaultValue}if(typeof t==="string"){if(t==="false"){return yM.OFF}if(t==="true"){return yM.TRANSLATE}return t}if(Boolean(t)){return yM.TRANSLATE}return yM.OFF}compute(t,e,i){return t.fontInfo.fontVariationSettings}}yM.OFF="normal";yM.TRANSLATE="translate";class kM extends XE{constructor(){super(48)}compute(t,e,i){return t.fontInfo}}class xM extends tM{constructor(){super(50,"fontSize",rL.fontSize,{type:"number",minimum:6,maximum:100,default:rL.fontSize,description:KD("fontSize","Controls the font size in pixels.")})}validate(t){const e=rM.float(t,this.defaultValue);if(e===0){return rL.fontSize}return rM.clamp(e,6,100)}compute(t,e,i){return t.fontInfo.fontSize}}class CM extends JE{constructor(){super(51,"fontWeight",rL.fontWeight,{anyOf:[{type:"number",minimum:CM.MINIMUM_VALUE,maximum:CM.MAXIMUM_VALUE,errorMessage:KD("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:CM.SUGGESTION_VALUES}],default:rL.fontWeight,description:KD("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(t){if(t==="normal"||t==="bold"){return t}return String(sM.clampedInt(t,rL.fontWeight,CM.MINIMUM_VALUE,CM.MAXIMUM_VALUE))}}CM.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"];CM.MINIMUM_VALUE=1;CM.MAXIMUM_VALUE=1e3;class SM extends JE{constructor(){const t={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:""};const e={type:"string",enum:["peek","gotoAndPeek","goto"],default:t.multiple,enumDescriptions:[KD("editor.gotoLocation.multiple.peek","Show Peek view of the results (default)"),KD("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a Peek view"),KD("editor.gotoLocation.multiple.goto","Go to the primary result and enable Peek-less navigation to others")]};const i=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(56,"gotoLocation",t,{"editor.gotoLocation.multiple":{deprecationMessage:KD("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":Object.assign({description:KD("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist.")},e),"editor.gotoLocation.multipleTypeDefinitions":Object.assign({description:KD("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.")},e),"editor.gotoLocation.multipleDeclarations":Object.assign({description:KD("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.")},e),"editor.gotoLocation.multipleImplementations":Object.assign({description:KD("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.")},e),"editor.gotoLocation.multipleReferences":Object.assign({description:KD("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist.")},e),"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:t.alternativeDefinitionCommand,enum:i,description:KD("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:t.alternativeTypeDefinitionCommand,enum:i,description:KD("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:t.alternativeDeclarationCommand,enum:i,description:KD("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:t.alternativeImplementationCommand,enum:i,description:KD("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:t.alternativeReferenceCommand,enum:i,description:KD("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(t){var e,i,n,s,r;if(!t||typeof t!=="object"){return this.defaultValue}const o=t;return{multiple:cM(o.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:(e=o.multipleDefinitions)!==null&&e!==void 0?e:cM(o.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:(i=o.multipleTypeDefinitions)!==null&&i!==void 0?i:cM(o.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:(n=o.multipleDeclarations)!==null&&n!==void 0?n:cM(o.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:(s=o.multipleImplementations)!==null&&s!==void 0?s:cM(o.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:(r=o.multipleReferences)!==null&&r!==void 0?r:cM(o.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:oM.string(o.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:oM.string(o.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:oM.string(o.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:oM.string(o.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:oM.string(o.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand)}}}class DM extends JE{constructor(){const t={enabled:true,delay:300,sticky:true,above:true};super(58,"hover",t,{"editor.hover.enabled":{type:"boolean",default:t.enabled,description:KD("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:t.delay,minimum:0,maximum:1e4,description:KD("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:t.sticky,description:KD("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.above":{type:"boolean",default:t.above,description:KD("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{enabled:eM(e.enabled,this.defaultValue.enabled),delay:sM.clampedInt(e.delay,this.defaultValue.delay,0,1e4),sticky:eM(e.sticky,this.defaultValue.sticky),above:eM(e.above,this.defaultValue.above)}}}class AM extends XE{constructor(){super(139)}compute(t,e,i){return AM.computeLayout(e,{memory:t.memory,outerWidth:t.outerWidth,outerHeight:t.outerHeight,isDominatedByLongLines:t.isDominatedByLongLines,lineHeight:t.fontInfo.lineHeight,viewLineCount:t.viewLineCount,lineNumbersDigitCount:t.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:t.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:t.fontInfo.maxDigitWidth,pixelRatio:t.pixelRatio})}static computeContainedMinimapLineCount(t){const e=t.height/t.lineHeight;const i=Math.floor(t.paddingTop/t.lineHeight);let n=Math.floor(t.paddingBottom/t.lineHeight);if(t.scrollBeyondLastLine){n=Math.max(n,e-1)}const s=(i+t.viewLineCount+n)/(t.pixelRatio*t.height);const r=Math.floor(t.viewLineCount/s);return{typicalViewportLineCount:e,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:n,desiredRatio:s,minimapLineCount:r}}static _computeMinimapLayout(t,e){const i=t.outerWidth;const n=t.outerHeight;const s=t.pixelRatio;if(!t.minimap.enabled){return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:false,minimapIsSampling:false,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(s*n),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:n}}const r=e.stableMinimapLayoutInput;const o=r&&t.outerHeight===r.outerHeight&&t.lineHeight===r.lineHeight&&t.typicalHalfwidthCharacterWidth===r.typicalHalfwidthCharacterWidth&&t.pixelRatio===r.pixelRatio&&t.scrollBeyondLastLine===r.scrollBeyondLastLine&&t.paddingTop===r.paddingTop&&t.paddingBottom===r.paddingBottom&&t.minimap.enabled===r.minimap.enabled&&t.minimap.side===r.minimap.side&&t.minimap.size===r.minimap.size&&t.minimap.showSlider===r.minimap.showSlider&&t.minimap.renderCharacters===r.minimap.renderCharacters&&t.minimap.maxColumn===r.minimap.maxColumn&&t.minimap.scale===r.minimap.scale&&t.verticalScrollbarWidth===r.verticalScrollbarWidth&&t.isViewportWrapping===r.isViewportWrapping;const c=t.lineHeight;const h=t.typicalHalfwidthCharacterWidth;const l=t.scrollBeyondLastLine;const a=t.minimap.renderCharacters;let u=s>=2?Math.round(t.minimap.scale*2):t.minimap.scale;const d=t.minimap.maxColumn;const f=t.minimap.size;const g=t.minimap.side;const p=t.verticalScrollbarWidth;const m=t.viewLineCount;const w=t.remainingWidth;const b=t.isViewportWrapping;const v=a?2:3;let y=Math.floor(s*n);const k=y/s;let x=false;let C=false;let S=v*u;let D=u/s;let A=1;if(f==="fill"||f==="fit"){const{typicalViewportLineCount:i,extraLinesBeforeFirstLine:r,extraLinesBeyondLastLine:h,desiredRatio:a,minimapLineCount:d}=AM.computeContainedMinimapLineCount({viewLineCount:m,scrollBeyondLastLine:l,paddingTop:t.paddingTop,paddingBottom:t.paddingBottom,height:n,lineHeight:c,pixelRatio:s});const g=m/d;if(g>1){x=true;C=true;u=1;S=1;D=u/s}else{let n=false;let l=u+1;if(f==="fit"){const t=Math.ceil((r+m+h)*S);if(b&&o&&w<=e.stableFitRemainingWidth){n=true;l=e.stableFitMaxMinimapScale}else{n=t>y}}if(f==="fill"||n){x=true;const n=u;S=Math.min(c*s,Math.max(1,Math.floor(1/a)));if(b&&o&&w<=e.stableFitRemainingWidth){l=e.stableFitMaxMinimapScale}u=Math.min(l,Math.max(1,Math.floor(S/v)));if(u>n){A=Math.min(2,u/n)}D=u/s/A;y=Math.ceil(Math.max(i,r+m+h)*S);if(b){e.stableMinimapLayoutInput=t;e.stableFitRemainingWidth=w;e.stableFitMaxMinimapScale=u}else{e.stableMinimapLayoutInput=null;e.stableFitRemainingWidth=0}}}}const E=Math.floor(d*D);const M=Math.min(E,Math.max(0,Math.floor((w-p-2)*D/(h+D)))+KE);let L=Math.floor(s*M);const _=L/s;L=Math.floor(L*A);const O=a?1:2;const F=g==="left"?0:i-M-p;return{renderMinimap:O,minimapLeft:F,minimapWidth:M,minimapHeightIsEditorHeight:x,minimapIsSampling:C,minimapScale:u,minimapLineHeight:S,minimapCanvasInnerWidth:L,minimapCanvasInnerHeight:y,minimapCanvasOuterWidth:_,minimapCanvasOuterHeight:k}}static computeLayout(t,e){const i=e.outerWidth|0;const n=e.outerHeight|0;const s=e.lineHeight|0;const r=e.lineNumbersDigitCount|0;const o=e.typicalHalfwidthCharacterWidth;const c=e.maxDigitWidth;const h=e.pixelRatio;const l=e.viewLineCount;const a=t.get(131);const u=a==="inherit"?t.get(130):a;const d=u==="inherit"?t.get(126):u;const f=t.get(129);const g=e.isDominatedByLongLines;const p=t.get(55);const m=t.get(65).renderType!==0;const w=t.get(66);const b=t.get(100);const v=t.get(81);const y=t.get(70);const k=t.get(98);const x=k.verticalScrollbarSize;const C=k.verticalHasArrows;const S=k.arrowSize;const D=k.horizontalScrollbarSize;const A=t.get(41);const E=t.get(105)!=="never";let M=t.get(63);if(A&&E){M+=16}let L=0;if(m){const t=Math.max(r,w);L=Math.round(t*c)}let _=0;if(p){_=s}let O=0;let F=O+_;let T=F+L;let R=T+M;const I=i-_-L-M;let N=false;let B=false;let P=-1;if(u==="inherit"&&g){N=true;B=true}else if(d==="on"||d==="bounded"){B=true}else if(d==="wordWrapColumn"){P=f}const j=AM._computeMinimapLayout({outerWidth:i,outerHeight:n,lineHeight:s,typicalHalfwidthCharacterWidth:o,pixelRatio:h,scrollBeyondLastLine:b,paddingTop:v.top,paddingBottom:v.bottom,minimap:y,verticalScrollbarWidth:x,viewLineCount:l,remainingWidth:I,isViewportWrapping:B},e.memory||new ZE);if(j.renderMinimap!==0&&j.minimapLeft===0){O+=j.minimapWidth;F+=j.minimapWidth;T+=j.minimapWidth;R+=j.minimapWidth}const $=I-j.minimapWidth;const z=Math.max(1,Math.floor(($-x-2)/o));const H=C?S:0;if(B){P=Math.max(1,z);if(d==="bounded"){P=Math.min(P,f)}}return{width:i,height:n,glyphMarginLeft:O,glyphMarginWidth:_,lineNumbersLeft:F,lineNumbersWidth:L,decorationsLeft:T,decorationsWidth:M,contentLeft:R,contentWidth:$,minimap:j,viewportColumn:z,isWordWrapMinified:N,isViewportWrapping:B,wrappingColumn:P,verticalScrollbarWidth:x,horizontalScrollbarHeight:D,overviewRuler:{top:H,width:x,height:n-2*H,right:0}}}}class EM extends JE{constructor(){super(133,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[KD("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),KD("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],type:"string",enum:["simple","advanced"],default:"simple",description:KD("wrappingStrategy","Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(t){return cM(t,"simple",["simple","advanced"])}compute(t,e,i){const n=e.get(2);if(n===2){return"advanced"}return i}}class MM extends JE{constructor(){const t={enabled:true};super(62,"lightbulb",t,{"editor.lightbulb.enabled":{type:"boolean",default:t.enabled,description:KD("codeActions","Enables the Code Action lightbulb in the editor.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{enabled:eM(e.enabled,this.defaultValue.enabled)}}}class LM extends JE{constructor(){const t={enabled:false,maxLineCount:5,defaultModel:"outlineModel"};super(110,"stickyScroll",t,{"editor.stickyScroll.enabled":{type:"boolean",default:t.enabled,description:KD("editor.stickyScroll.enabled","Shows the nested current scopes during the scroll at the top of the editor.")},"editor.stickyScroll.maxLineCount":{type:"number",default:t.maxLineCount,minimum:1,maximum:10,description:KD("editor.stickyScroll.maxLineCount","Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:t.defaultModel,description:KD("editor.stickyScroll.defaultModel","Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{enabled:eM(e.enabled,this.defaultValue.enabled),maxLineCount:sM.clampedInt(e.maxLineCount,this.defaultValue.maxLineCount,1,10),defaultModel:cM(e.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"])}}}class _M extends JE{constructor(){const t={enabled:"on",fontSize:0,fontFamily:"",padding:false};super(135,"inlayHints",t,{"editor.inlayHints.enabled":{type:"string",default:t.enabled,description:KD("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[KD("editor.inlayHints.on","Inlay hints are enabled"),KD("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding {0}",dA?`Ctrl+Option`:`Ctrl+Alt`),KD("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding {0}",dA?`Ctrl+Option`:`Ctrl+Alt`),KD("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:t.fontSize,markdownDescription:KD("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:t.fontFamily,markdownDescription:KD("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:t.padding,description:KD("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;if(typeof e.enabled==="boolean"){e.enabled=e.enabled?"on":"off"}return{enabled:cM(e.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:sM.clampedInt(e.fontSize,this.defaultValue.fontSize,0,100),fontFamily:oM.string(e.fontFamily,this.defaultValue.fontFamily),padding:eM(e.padding,this.defaultValue.padding)}}}class OM extends JE{constructor(){super(63,"lineDecorationsWidth",10)}validate(t){if(typeof t==="string"&&/^\d+(\.\d+)?ch$/.test(t)){const e=parseFloat(t.substring(0,t.length-2));return-e}else{return sM.clampedInt(t,this.defaultValue,0,1e3)}}compute(t,e,i){if(i<0){return sM.clampedInt(-i*t.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3)}else{return i}}}class FM extends rM{constructor(){super(64,"lineHeight",rL.lineHeight,(t=>rM.clamp(t,0,150)),{markdownDescription:KD("lineHeight","Controls the line height. \n - Use 0 to automatically compute the line height from the font size.\n - Values between 0 and 8 will be used as a multiplier with the font size.\n - Values greater than or equal to 8 will be used as effective values.")})}compute(t,e,i){return t.fontInfo.lineHeight}}class TM extends JE{constructor(){const t={enabled:true,size:"proportional",side:"right",showSlider:"mouseover",autohide:false,renderCharacters:true,maxColumn:120,scale:1};super(70,"minimap",t,{"editor.minimap.enabled":{type:"boolean",default:t.enabled,description:KD("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"boolean",default:t.autohide,description:KD("minimap.autohide","Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[KD("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),KD("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),KD("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:t.size,description:KD("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:t.side,description:KD("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:t.showSlider,description:KD("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:t.scale,minimum:1,maximum:3,enum:[1,2,3],description:KD("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:t.renderCharacters,description:KD("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:t.maxColumn,description:KD("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{enabled:eM(e.enabled,this.defaultValue.enabled),autohide:eM(e.autohide,this.defaultValue.autohide),size:cM(e.size,this.defaultValue.size,["proportional","fill","fit"]),side:cM(e.side,this.defaultValue.side,["right","left"]),showSlider:cM(e.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:eM(e.renderCharacters,this.defaultValue.renderCharacters),scale:sM.clampedInt(e.scale,1,1,3),maxColumn:sM.clampedInt(e.maxColumn,this.defaultValue.maxColumn,1,1e4)}}}function RM(t){if(t==="ctrlCmd"){return dA?"metaKey":"ctrlKey"}return"altKey"}class IM extends JE{constructor(){super(81,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:KD("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:KD("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{top:sM.clampedInt(e.top,0,0,1e3),bottom:sM.clampedInt(e.bottom,0,0,1e3)}}}class NM extends JE{constructor(){const t={enabled:true,cycle:true};super(82,"parameterHints",t,{"editor.parameterHints.enabled":{type:"boolean",default:t.enabled,description:KD("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:t.cycle,description:KD("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{enabled:eM(e.enabled,this.defaultValue.enabled),cycle:eM(e.cycle,this.defaultValue.cycle)}}}class BM extends XE{constructor(){super(137)}compute(t,e,i){return t.pixelRatio}}class PM extends JE{constructor(){const t={other:"on",comments:"off",strings:"off"};const e=[{type:"boolean"},{type:"string",enum:["on","inline","off"],enumDescriptions:[KD("on","Quick suggestions show inside the suggest widget"),KD("inline","Quick suggestions show as ghost text"),KD("off","Quick suggestions are disabled")]}];super(85,"quickSuggestions",t,{type:"object",additionalProperties:false,properties:{strings:{anyOf:e,default:t.strings,description:KD("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{anyOf:e,default:t.comments,description:KD("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{anyOf:e,default:t.other,description:KD("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}},default:t,markdownDescription:KD("quickSuggestions","Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the '{0}'-setting which controls if suggestions are triggered by special characters.",`#editor.suggestOnTriggerCharacters#`)});this.defaultValue=t}validate(t){if(typeof t==="boolean"){const e=t?"on":"off";return{comments:e,strings:e,other:e}}if(!t||typeof t!=="object"){return this.defaultValue}const{other:e,comments:i,strings:n}=t;const s=["on","inline","off"];let r;let o;let c;if(typeof e==="boolean"){r=e?"on":"off"}else{r=cM(e,this.defaultValue.other,s)}if(typeof i==="boolean"){o=i?"on":"off"}else{o=cM(i,this.defaultValue.comments,s)}if(typeof n==="boolean"){c=n?"on":"off"}else{c=cM(n,this.defaultValue.strings,s)}return{other:r,comments:o,strings:c}}}class jM extends JE{constructor(){super(65,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[KD("lineNumbers.off","Line numbers are not rendered."),KD("lineNumbers.on","Line numbers are rendered as absolute number."),KD("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),KD("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:KD("lineNumbers","Controls the display of line numbers.")})}validate(t){let e=this.defaultValue.renderType;let i=this.defaultValue.renderFn;if(typeof t!=="undefined"){if(typeof t==="function"){e=4;i=t}else if(t==="interval"){e=3}else if(t==="relative"){e=2}else if(t==="on"){e=1}else{e=0}}return{renderType:e,renderFn:i}}}function $M(t){const e=t.get(93);if(e==="editable"){return t.get(87)}return e==="on"?false:true}class zM extends JE{constructor(){const t=[];const e={type:"number",description:KD("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(97,"rulers",t,{type:"array",items:{anyOf:[e,{type:["object"],properties:{column:e,color:{type:"string",description:KD("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:t,description:KD("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}validate(t){if(Array.isArray(t)){const e=[];for(const i of t){if(typeof i==="number"){e.push({column:sM.clampedInt(i,0,0,1e4),color:null})}else if(i&&typeof i==="object"){const t=i;e.push({column:sM.clampedInt(t.column,0,0,1e4),color:t.color})}}e.sort(((t,e)=>t.column-e.column));return e}return this.defaultValue}}function HM(t,e){if(typeof t!=="string"){return e}switch(t){case"hidden":return 2;case"visible":return 3;default:return 1}}class WM extends JE{constructor(){const t={vertical:1,horizontal:1,arrowSize:11,useShadows:true,verticalHasArrows:false,horizontalHasArrows:false,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:true,alwaysConsumeMouseWheel:true,scrollByPage:false};super(98,"scrollbar",t,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[KD("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),KD("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),KD("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:KD("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[KD("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),KD("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),KD("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:KD("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:t.verticalScrollbarSize,description:KD("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:t.horizontalScrollbarSize,description:KD("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:t.scrollByPage,description:KD("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;const i=sM.clampedInt(e.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3);const n=sM.clampedInt(e.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:sM.clampedInt(e.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:HM(e.vertical,this.defaultValue.vertical),horizontal:HM(e.horizontal,this.defaultValue.horizontal),useShadows:eM(e.useShadows,this.defaultValue.useShadows),verticalHasArrows:eM(e.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:eM(e.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:eM(e.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:eM(e.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:i,horizontalSliderSize:sM.clampedInt(e.horizontalSliderSize,i,0,1e3),verticalScrollbarSize:n,verticalSliderSize:sM.clampedInt(e.verticalSliderSize,n,0,1e3),scrollByPage:eM(e.scrollByPage,this.defaultValue.scrollByPage)}}}const VM="inUntrustedWorkspace";const UM={allowedCharacters:"editor.unicodeHighlight.allowedCharacters",invisibleCharacters:"editor.unicodeHighlight.invisibleCharacters",nonBasicASCII:"editor.unicodeHighlight.nonBasicASCII",ambiguousCharacters:"editor.unicodeHighlight.ambiguousCharacters",includeComments:"editor.unicodeHighlight.includeComments",includeStrings:"editor.unicodeHighlight.includeStrings",allowedLocales:"editor.unicodeHighlight.allowedLocales"};class qM extends JE{constructor(){const t={nonBasicASCII:VM,invisibleCharacters:true,ambiguousCharacters:true,includeComments:VM,includeStrings:true,allowedCharacters:{},allowedLocales:{_os:true,_vscode:true}};super(120,"unicodeHighlight",t,{[UM.nonBasicASCII]:{restricted:true,type:["boolean","string"],enum:[true,false,VM],default:t.nonBasicASCII,description:KD("unicodeHighlight.nonBasicASCII","Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.")},[UM.invisibleCharacters]:{restricted:true,type:"boolean",default:t.invisibleCharacters,description:KD("unicodeHighlight.invisibleCharacters","Controls whether characters that just reserve space or have no width at all are highlighted.")},[UM.ambiguousCharacters]:{restricted:true,type:"boolean",default:t.ambiguousCharacters,description:KD("unicodeHighlight.ambiguousCharacters","Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},[UM.includeComments]:{restricted:true,type:["boolean","string"],enum:[true,false,VM],default:t.includeComments,description:KD("unicodeHighlight.includeComments","Controls whether characters in comments should also be subject to Unicode highlighting.")},[UM.includeStrings]:{restricted:true,type:["boolean","string"],enum:[true,false,VM],default:t.includeStrings,description:KD("unicodeHighlight.includeStrings","Controls whether characters in strings should also be subject to Unicode highlighting.")},[UM.allowedCharacters]:{restricted:true,type:"object",default:t.allowedCharacters,description:KD("unicodeHighlight.allowedCharacters","Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},[UM.allowedLocales]:{restricted:true,type:"object",additionalProperties:{type:"boolean"},default:t.allowedLocales,description:KD("unicodeHighlight.allowedLocales","Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(t,e){let i=false;if(e.allowedCharacters&&t){if(!HE(t.allowedCharacters,e.allowedCharacters)){t=Object.assign(Object.assign({},t),{allowedCharacters:e.allowedCharacters});i=true}}if(e.allowedLocales&&t){if(!HE(t.allowedLocales,e.allowedLocales)){t=Object.assign(Object.assign({},t),{allowedLocales:e.allowedLocales});i=true}}const n=super.applyUpdate(t,e);if(i){return new QE(n.newValue,true)}return n}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{nonBasicASCII:JM(e.nonBasicASCII,VM,[true,false,VM]),invisibleCharacters:eM(e.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:eM(e.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:JM(e.includeComments,VM,[true,false,VM]),includeStrings:JM(e.includeStrings,VM,[true,false,VM]),allowedCharacters:this.validateBooleanMap(t.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(t.allowedLocales,this.defaultValue.allowedLocales)}}validateBooleanMap(t,e){if(typeof t!=="object"||!t){return e}const i={};for(const[e,n]of Object.entries(t)){if(n===true){i[e]=true}}return i}}class KM extends JE{constructor(){const t={enabled:true,mode:"subwordSmart",showToolbar:"onHover",suppressSuggestions:false};super(60,"inlineSuggest",t,{"editor.inlineSuggest.enabled":{type:"boolean",default:t.enabled,description:KD("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")},"editor.inlineSuggest.showToolbar":{type:"string",default:t.showToolbar,enum:["always","onHover"],enumDescriptions:[KD("inlineSuggest.showToolbar.always","Show the inline suggestion toolbar whenever an inline suggestion is shown."),KD("inlineSuggest.showToolbar.onHover","Show the inline suggestion toolbar when hovering over an inline suggestion.")],description:KD("inlineSuggest.showToolbar","Controls when to show the inline suggestion toolbar.")},"editor.inlineSuggest.suppressSuggestions":{type:"boolean",default:t.suppressSuggestions,description:KD("inlineSuggest.suppressSuggestions","Controls how inline suggestions interact with the suggest widget. If enabled, the suggest widget is not shown automatically when inline suggestions are available.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{enabled:eM(e.enabled,this.defaultValue.enabled),mode:cM(e.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"]),showToolbar:cM(e.showToolbar,this.defaultValue.showToolbar,["always","onHover"]),suppressSuggestions:eM(e.suppressSuggestions,this.defaultValue.suppressSuggestions)}}}class GM extends JE{constructor(){const t={enabled:qE.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:qE.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(13,"bracketPairColorization",t,{"editor.bracketPairColorization.enabled":{type:"boolean",default:t.enabled,markdownDescription:KD("bracketPairColorization.enabled","Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.","`#workbench.colorCustomizations#`")},"editor.bracketPairColorization.independentColorPoolPerBracketType":{type:"boolean",default:t.independentColorPoolPerBracketType,description:KD("bracketPairColorization.independentColorPoolPerBracketType","Controls whether each bracket type has its own independent color pool.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{enabled:eM(e.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:eM(e.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}}class ZM extends JE{constructor(){const t={bracketPairs:false,bracketPairsHorizontal:"active",highlightActiveBracketPair:true,indentation:true,highlightActiveIndentation:true};super(14,"guides",t,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[true,"active",false],enumDescriptions:[KD("editor.guides.bracketPairs.true","Enables bracket pair guides."),KD("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),KD("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:t.bracketPairs,description:KD("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[true,"active",false],enumDescriptions:[KD("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),KD("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),KD("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:t.bracketPairsHorizontal,description:KD("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:t.highlightActiveBracketPair,description:KD("editor.guides.highlightActiveBracketPair","Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:t.indentation,description:KD("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[true,"always",false],enumDescriptions:[KD("editor.guides.highlightActiveIndentation.true","Highlights the active indent guide."),KD("editor.guides.highlightActiveIndentation.always","Highlights the active indent guide even if bracket guides are highlighted."),KD("editor.guides.highlightActiveIndentation.false","Do not highlight the active indent guide.")],default:t.highlightActiveIndentation,description:KD("editor.guides.highlightActiveIndentation","Controls whether the editor should highlight the active indent guide.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{bracketPairs:JM(e.bracketPairs,this.defaultValue.bracketPairs,[true,false,"active"]),bracketPairsHorizontal:JM(e.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[true,false,"active"]),highlightActiveBracketPair:eM(e.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:eM(e.indentation,this.defaultValue.indentation),highlightActiveIndentation:JM(e.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[true,false,"always"])}}}function JM(t,e,i){const n=i.indexOf(t);if(n===-1){return e}return i[n]}class QM extends JE{constructor(){const t={insertMode:"insert",filterGraceful:true,snippetsPreventQuickSuggestions:true,localityBonus:false,shareSuggestSelections:false,selectionMode:"always",showIcons:true,showStatusBar:false,preview:false,previewMode:"subwordSmart",showInlineDetails:true,showMethods:true,showFunctions:true,showConstructors:true,showDeprecated:true,matchOnWordStartOnly:true,showFields:true,showVariables:true,showClasses:true,showStructs:true,showInterfaces:true,showModules:true,showProperties:true,showEvents:true,showOperators:true,showUnits:true,showValues:true,showConstants:true,showEnums:true,showEnumMembers:true,showKeywords:true,showWords:true,showColors:true,showFiles:true,showReferences:true,showFolders:true,showTypeParameters:true,showSnippets:true,showUsers:true,showIssues:true};super(113,"suggest",t,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[KD("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),KD("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:t.insertMode,description:KD("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:t.filterGraceful,description:KD("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:t.localityBonus,description:KD("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:t.shareSuggestSelections,markdownDescription:KD("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.selectionMode":{type:"string",enum:["always","never","whenTriggerCharacter","whenQuickSuggestion"],enumDescriptions:[KD("suggest.insertMode.always","Always select a suggestion when automatically triggering IntelliSense."),KD("suggest.insertMode.never","Never select a suggestion when automatically triggering IntelliSense."),KD("suggest.insertMode.whenTriggerCharacter","Select a suggestion only when triggering IntelliSense from a trigger character."),KD("suggest.insertMode.whenQuickSuggestion","Select a suggestion only when triggering IntelliSense as you type.")],default:t.selectionMode,markdownDescription:KD("suggest.selectionMode","Controls whether a suggestion is selected when the widget shows. Note that this only applies to automatically triggered suggestions (`#editor.quickSuggestions#` and `#editor.suggestOnTriggerCharacters#`) and that a suggestion is always selected when explicitly invoked, e.g via `Ctrl+Space`.")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:t.snippetsPreventQuickSuggestions,description:KD("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:t.showIcons,description:KD("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:t.showStatusBar,description:KD("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:t.preview,description:KD("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:t.showInlineDetails,description:KD("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget.")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:KD("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:KD("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.matchOnWordStartOnly":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.matchOnWordStartOnly","When enabled IntelliSense filtering requires that the first character matches on a word start. For example, `c` on `Console` or `WebContext` but _not_ on `description`. When disabled IntelliSense will show more results but still sorts them by match quality.")},"editor.suggest.showFields":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:true,markdownDescription:KD("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{insertMode:cM(e.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:eM(e.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:eM(e.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:eM(e.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:eM(e.shareSuggestSelections,this.defaultValue.shareSuggestSelections),selectionMode:cM(e.selectionMode,this.defaultValue.selectionMode,["always","never","whenQuickSuggestion","whenTriggerCharacter"]),showIcons:eM(e.showIcons,this.defaultValue.showIcons),showStatusBar:eM(e.showStatusBar,this.defaultValue.showStatusBar),preview:eM(e.preview,this.defaultValue.preview),previewMode:cM(e.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:eM(e.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:eM(e.showMethods,this.defaultValue.showMethods),showFunctions:eM(e.showFunctions,this.defaultValue.showFunctions),showConstructors:eM(e.showConstructors,this.defaultValue.showConstructors),showDeprecated:eM(e.showDeprecated,this.defaultValue.showDeprecated),matchOnWordStartOnly:eM(e.matchOnWordStartOnly,this.defaultValue.matchOnWordStartOnly),showFields:eM(e.showFields,this.defaultValue.showFields),showVariables:eM(e.showVariables,this.defaultValue.showVariables),showClasses:eM(e.showClasses,this.defaultValue.showClasses),showStructs:eM(e.showStructs,this.defaultValue.showStructs),showInterfaces:eM(e.showInterfaces,this.defaultValue.showInterfaces),showModules:eM(e.showModules,this.defaultValue.showModules),showProperties:eM(e.showProperties,this.defaultValue.showProperties),showEvents:eM(e.showEvents,this.defaultValue.showEvents),showOperators:eM(e.showOperators,this.defaultValue.showOperators),showUnits:eM(e.showUnits,this.defaultValue.showUnits),showValues:eM(e.showValues,this.defaultValue.showValues),showConstants:eM(e.showConstants,this.defaultValue.showConstants),showEnums:eM(e.showEnums,this.defaultValue.showEnums),showEnumMembers:eM(e.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:eM(e.showKeywords,this.defaultValue.showKeywords),showWords:eM(e.showWords,this.defaultValue.showWords),showColors:eM(e.showColors,this.defaultValue.showColors),showFiles:eM(e.showFiles,this.defaultValue.showFiles),showReferences:eM(e.showReferences,this.defaultValue.showReferences),showFolders:eM(e.showFolders,this.defaultValue.showFolders),showTypeParameters:eM(e.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:eM(e.showSnippets,this.defaultValue.showSnippets),showUsers:eM(e.showUsers,this.defaultValue.showUsers),showIssues:eM(e.showIssues,this.defaultValue.showIssues)}}}class YM extends JE{constructor(){super(108,"smartSelect",{selectLeadingAndTrailingWhitespace:true},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:KD("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:true,type:"boolean"}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}return{selectLeadingAndTrailingWhitespace:eM(t.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace)}}}class XM extends JE{constructor(){super(132,"wrappingIndent",1,{"editor.wrappingIndent":{type:"string",enum:["none","same","indent","deepIndent"],enumDescriptions:[KD("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),KD("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),KD("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),KD("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:KD("wrappingIndent","Controls the indentation of wrapped lines."),default:"same"}})}validate(t){switch(t){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}return 1}compute(t,e,i){const n=e.get(2);if(n===2){return 0}return i}}class tL extends XE{constructor(){super(140)}compute(t,e,i){const n=e.get(139);return{isDominatedByLongLines:t.isDominatedByLongLines,isWordWrapMinified:n.isWordWrapMinified,isViewportWrapping:n.isViewportWrapping,wrappingColumn:n.wrappingColumn}}}class eL extends JE{constructor(){const t={enabled:true};super(34,"dropIntoEditor",t,{"editor.dropIntoEditor.enabled":{type:"boolean",default:t.enabled,markdownDescription:KD("dropIntoEditor.enabled","Controls whether you can drag and drop a file into a text editor by holding down `shift` (instead of opening the file in an editor).")}})}validate(t){if(!t||typeof t!=="object"){return this.defaultValue}const e=t;return{enabled:eM(e.enabled,this.defaultValue.enabled)}}}const iL="Consolas, 'Courier New', monospace";const nL="Menlo, Monaco, 'Courier New', monospace";const sL="'Droid Sans Mono', 'monospace', monospace";const rL={fontFamily:dA?nL:fA?sL:iL,fontWeight:"normal",fontSize:dA?12:14,lineHeight:0,letterSpacing:0};const oL=[];function cL(t){oL[t.id]=t;return t}const hL={acceptSuggestionOnCommitCharacter:cL(new iM(0,"acceptSuggestionOnCommitCharacter",true,{markdownDescription:KD("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:cL(new hM(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",KD("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:KD("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:cL(new uM),accessibilityPageSize:cL(new sM(3,"accessibilityPageSize",10,1,1073741824,{description:KD("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default."),tags:["accessibility"]})),ariaLabel:cL(new oM(4,"ariaLabel",KD("editorViewAccessibleLabel","Editor content"))),screenReaderAnnounceInlineSuggestion:cL(new iM(6,"screenReaderAnnounceInlineSuggestion",false,{description:KD("screenReaderAnnounceInlineSuggestion","Control whether inline suggestions are announced by a screen reader. Note that this does not work on macOS with VoiceOver."),tags:["accessibility"]})),autoClosingBrackets:cL(new hM(5,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",KD("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),KD("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:KD("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingDelete:cL(new hM(7,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",KD("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:KD("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:cL(new hM(8,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",KD("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:KD("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:cL(new hM(9,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",KD("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),KD("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:KD("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:cL(new lM(10,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],aM,{enumDescriptions:[KD("editor.autoIndent.none","The editor will not insert indentation automatically."),KD("editor.autoIndent.keep","The editor will keep the current line's indentation."),KD("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),KD("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),KD("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:KD("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:cL(new iM(11,"automaticLayout",false)),autoSurround:cL(new hM(12,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[KD("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),KD("editor.autoSurround.quotes","Surround with quotes but not brackets."),KD("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:KD("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:cL(new GM),bracketPairGuides:cL(new ZM),stickyTabStops:cL(new iM(111,"stickyTabStops",false,{description:KD("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:cL(new iM(15,"codeLens",true,{description:KD("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:cL(new oM(16,"codeLensFontFamily","",{description:KD("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:cL(new sM(17,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:KD("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:cL(new iM(18,"colorDecorators",true,{description:KD("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorsLimit:cL(new sM(19,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:KD("colorDecoratorsLimit","Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:cL(new iM(20,"columnSelection",false,{description:KD("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:cL(new dM),contextmenu:cL(new iM(22,"contextmenu",true)),copyWithSyntaxHighlighting:cL(new iM(23,"copyWithSyntaxHighlighting",true,{description:KD("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:cL(new lM(24,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],fM,{description:KD("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:cL(new hM(25,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[KD("cursorSmoothCaretAnimation.off","Smooth caret animation is disabled."),KD("cursorSmoothCaretAnimation.explicit","Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),KD("cursorSmoothCaretAnimation.on","Smooth caret animation is always enabled.")],description:KD("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:cL(new lM(26,"cursorStyle",gM.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],pM,{description:KD("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:cL(new sM(27,"cursorSurroundingLines",0,0,1073741824,{description:KD("cursorSurroundingLines","Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:cL(new hM(28,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[KD("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),KD("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],description:KD("cursorSurroundingLinesStyle","Controls when `cursorSurroundingLines` should be enforced.")})),cursorWidth:cL(new sM(29,"cursorWidth",0,0,1073741824,{markdownDescription:KD("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:cL(new iM(30,"disableLayerHinting",false)),disableMonospaceOptimizations:cL(new iM(31,"disableMonospaceOptimizations",false)),domReadOnly:cL(new iM(32,"domReadOnly",false)),dragAndDrop:cL(new iM(33,"dragAndDrop",true,{description:KD("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:cL(new wM),dropIntoEditor:cL(new eL),stickyScroll:cL(new LM),experimentalWhitespaceRendering:cL(new hM(36,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[KD("experimentalWhitespaceRendering.svg","Use a new rendering method with svgs."),KD("experimentalWhitespaceRendering.font","Use a new rendering method with font characters."),KD("experimentalWhitespaceRendering.off","Use the stable rendering method.")],description:KD("experimentalWhitespaceRendering","Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:cL(new oM(37,"extraEditorClassName","")),fastScrollSensitivity:cL(new rM(38,"fastScrollSensitivity",5,(t=>t<=0?5:t),{markdownDescription:KD("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:cL(new bM),fixedOverflowWidgets:cL(new iM(40,"fixedOverflowWidgets",false)),folding:cL(new iM(41,"folding",true,{description:KD("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:cL(new hM(42,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[KD("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),KD("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:KD("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:cL(new iM(43,"foldingHighlight",true,{description:KD("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:cL(new iM(44,"foldingImportsByDefault",false,{description:KD("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:cL(new sM(45,"foldingMaximumRegions",5e3,10,65e3,{description:KD("foldingMaximumRegions","The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.")})),unfoldOnClickAfterEndOfLine:cL(new iM(46,"unfoldOnClickAfterEndOfLine",false,{description:KD("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:cL(new oM(47,"fontFamily",rL.fontFamily,{description:KD("fontFamily","Controls the font family.")})),fontInfo:cL(new kM),fontLigatures2:cL(new vM),fontSize:cL(new xM),fontWeight:cL(new CM),fontVariations:cL(new yM),formatOnPaste:cL(new iM(53,"formatOnPaste",false,{description:KD("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:cL(new iM(54,"formatOnType",false,{description:KD("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:cL(new iM(55,"glyphMargin",true,{description:KD("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:cL(new SM),hideCursorInOverviewRuler:cL(new iM(57,"hideCursorInOverviewRuler",false,{description:KD("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:cL(new DM),inDiffEditor:cL(new iM(59,"inDiffEditor",false)),letterSpacing:cL(new rM(61,"letterSpacing",rL.letterSpacing,(t=>rM.clamp(t,-5,20)),{description:KD("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:cL(new MM),lineDecorationsWidth:cL(new OM),lineHeight:cL(new FM),lineNumbers:cL(new jM),lineNumbersMinChars:cL(new sM(66,"lineNumbersMinChars",5,1,300)),linkedEditing:cL(new iM(67,"linkedEditing",false,{description:KD("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:cL(new iM(68,"links",true,{description:KD("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:cL(new hM(69,"matchBrackets","always",["always","near","never"],{description:KD("matchBrackets","Highlight matching brackets.")})),minimap:cL(new TM),mouseStyle:cL(new hM(71,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:cL(new rM(72,"mouseWheelScrollSensitivity",1,(t=>t===0?1:t),{markdownDescription:KD("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:cL(new iM(73,"mouseWheelZoom",false,{markdownDescription:KD("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:cL(new iM(74,"multiCursorMergeOverlapping",true,{description:KD("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:cL(new lM(75,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],RM,{markdownEnumDescriptions:[KD("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),KD("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:KD({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:cL(new hM(76,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[KD("multiCursorPaste.spread","Each cursor pastes a single line of the text."),KD("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:KD("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),multiCursorLimit:cL(new sM(77,"multiCursorLimit",1e4,1,1e5,{markdownDescription:KD("multiCursorLimit","Controls the max number of cursors that can be in an active editor at once.")})),occurrencesHighlight:cL(new iM(78,"occurrencesHighlight",true,{description:KD("occurrencesHighlight","Controls whether the editor should highlight semantic symbol occurrences.")})),overviewRulerBorder:cL(new iM(79,"overviewRulerBorder",true,{description:KD("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:cL(new sM(80,"overviewRulerLanes",3,0,3)),padding:cL(new IM),parameterHints:cL(new NM),peekWidgetDefaultFocus:cL(new hM(83,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[KD("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),KD("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:KD("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),definitionLinkOpensInPeek:cL(new iM(84,"definitionLinkOpensInPeek",false,{description:KD("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:cL(new PM),quickSuggestionsDelay:cL(new sM(86,"quickSuggestionsDelay",10,0,1073741824,{description:KD("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:cL(new iM(87,"readOnly",false)),renameOnType:cL(new iM(88,"renameOnType",false,{description:KD("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:KD("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:cL(new iM(89,"renderControlCharacters",true,{description:KD("renderControlCharacters","Controls whether the editor should render control characters."),restricted:true})),renderFinalNewline:cL(new hM(90,"renderFinalNewline",fA?"dimmed":"on",["off","on","dimmed"],{description:KD("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:cL(new hM(91,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",KD("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:KD("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:cL(new iM(92,"renderLineHighlightOnlyWhenFocus",false,{description:KD("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:cL(new hM(93,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:cL(new hM(94,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",KD("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),KD("renderWhitespace.selection","Render whitespace characters only on selected text."),KD("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:KD("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:cL(new sM(95,"revealHorizontalRightPadding",15,0,1e3)),roundedSelection:cL(new iM(96,"roundedSelection",true,{description:KD("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:cL(new zM),scrollbar:cL(new WM),scrollBeyondLastColumn:cL(new sM(99,"scrollBeyondLastColumn",4,0,1073741824,{description:KD("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:cL(new iM(100,"scrollBeyondLastLine",true,{description:KD("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:cL(new iM(101,"scrollPredominantAxis",true,{description:KD("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:cL(new iM(102,"selectionClipboard",true,{description:KD("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:fA})),selectionHighlight:cL(new iM(103,"selectionHighlight",true,{description:KD("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:cL(new iM(104,"selectOnLineNumbers",true)),showFoldingControls:cL(new hM(105,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[KD("showFoldingControls.always","Always show the folding controls."),KD("showFoldingControls.never","Never show the folding controls and reduce the gutter size."),KD("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:KD("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:cL(new iM(106,"showUnused",true,{description:KD("showUnused","Controls fading out of unused code.")})),showDeprecated:cL(new iM(134,"showDeprecated",true,{description:KD("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:cL(new _M),snippetSuggestions:cL(new hM(107,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[KD("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),KD("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),KD("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),KD("snippetSuggestions.none","Do not show snippet suggestions.")],description:KD("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:cL(new YM),smoothScrolling:cL(new iM(109,"smoothScrolling",false,{description:KD("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:cL(new sM(112,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:cL(new QM),inlineSuggest:cL(new KM),suggestFontSize:cL(new sM(114,"suggestFontSize",0,0,1e3,{markdownDescription:KD("suggestFontSize","Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:cL(new sM(115,"suggestLineHeight",0,0,1e3,{markdownDescription:KD("suggestLineHeight","Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.","`0`","`#editor.lineHeight#`")})),suggestOnTriggerCharacters:cL(new iM(116,"suggestOnTriggerCharacters",true,{description:KD("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:cL(new hM(117,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[KD("suggestSelection.first","Always select the first suggestion."),KD("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),KD("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:KD("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:cL(new hM(118,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[KD("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),KD("tabCompletion.off","Disable tab completions."),KD("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:KD("tabCompletion","Enables tab completions.")})),tabIndex:cL(new sM(119,"tabIndex",0,-1,1073741824)),unicodeHighlight:cL(new qM),unusualLineTerminators:cL(new hM(121,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[KD("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),KD("unusualLineTerminators.off","Unusual line terminators are ignored."),KD("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:KD("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:cL(new iM(122,"useShadowDOM",true)),useTabStops:cL(new iM(123,"useTabStops",true,{description:KD("useTabStops","Inserting and deleting whitespace follows tab stops.")})),wordBreak:cL(new hM(124,"wordBreak","normal",["normal","keepAll"],{markdownEnumDescriptions:[KD("wordBreak.normal","Use the default line break rule."),KD("wordBreak.keepAll","Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.")],description:KD("wordBreak","Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.")})),wordSeparators:cL(new oM(125,"wordSeparators",RA,{description:KD("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:cL(new hM(126,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[KD("wordWrap.off","Lines will never wrap."),KD("wordWrap.on","Lines will wrap at the viewport width."),KD({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),KD({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:KD({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:cL(new oM(127,"wordWrapBreakAfterCharacters"," \t})]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:cL(new oM(128,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「£¥$£¥++")),wordWrapColumn:cL(new sM(129,"wordWrapColumn",80,1,1073741824,{markdownDescription:KD({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:cL(new hM(130,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:cL(new hM(131,"wordWrapOverride2","inherit",["off","on","inherit"])),editorClassName:cL(new mM),pixelRatio:cL(new BM),tabFocusMode:cL(new iM(138,"tabFocusMode",false,{markdownDescription:KD("tabFocusMode","Controls whether the editor receives tabs or defers them to the workbench for navigation.")})),layoutInfo:cL(new AM),wrappingInfo:cL(new tL),wrappingIndent:cL(new XM),wrappingStrategy:cL(new EM)};class lL{constructor(){this.listeners=[];this.unexpectedErrorHandler=function(t){setTimeout((()=>{if(t.stack){if(kL.isErrorNoTelemetry(t)){throw new kL(t.message+"\n\n"+t.stack)}throw new Error(t.message+"\n\n"+t.stack)}throw t}),0)}}emit(t){this.listeners.forEach((e=>{e(t)}))}onUnexpectedError(t){this.unexpectedErrorHandler(t);this.emit(t)}onUnexpectedExternalError(t){this.unexpectedErrorHandler(t)}}const aL=new lL;function uL(t){if(!pL(t)){aL.onUnexpectedError(t)}return undefined}function dL(t){if(!pL(t)){aL.onUnexpectedExternalError(t)}return undefined}function fL(t){if(t instanceof Error){const{name:e,message:i}=t;const n=t.stacktrace||t.stack;return{$isError:true,name:e,message:i,stack:n,noTelemetry:kL.isErrorNoTelemetry(t)}}return t}const gL="Canceled";function pL(t){if(t instanceof mL){return true}return t instanceof Error&&t.name===gL&&t.message===gL}class mL extends Error{constructor(){super(gL);this.name=this.message}}function wL(){const t=new Error(gL);t.name=t.message;return t}function bL(t){if(t){return new Error(`Illegal argument: ${t}`)}else{return new Error("Illegal argument")}}function vL(t){if(t){return new Error(`Illegal state: ${t}`)}else{return new Error("Illegal state")}}class yL extends Error{constructor(t){super("NotSupported");if(t){this.message=t}}}class kL extends Error{constructor(t){super(t);this.name="CodeExpectedError"}static fromError(t){if(t instanceof kL){return t}const e=new kL;e.message=t.message;e.stack=t.stack;return e}static isErrorNoTelemetry(t){return t.name==="CodeExpectedError"}}class xL extends Error{constructor(t){super(t||"An unexpected bug occurred.");Object.setPrototypeOf(this,xL.prototype);debugger}}function CL(t){const e=this;let i=false;let n;return function(){if(i){return n}i=true;n=t.apply(e,arguments);return n}}function SL(t){return t}function DL(t){return t}function AL(t){return typeof t.dispose==="function"&&t.dispose.length===0}function EL(t){if(OA.is(t)){const e=[];for(const i of t){if(i){try{i.dispose()}catch(t){e.push(t)}}}if(e.length===1){throw e[0]}else if(e.length>1){throw new AggregateError(e,"Encountered errors while disposing of store")}return Array.isArray(t)?[]:t}else if(t){t.dispose();return t}}function ML(...t){const e=LL((()=>EL(t)));return e}function LL(t){const e=SL({dispose:CL((()=>{t()}))});return e}class _L{constructor(){this._toDispose=new Set;this._isDisposed=false}dispose(){if(this._isDisposed){return}this._isDisposed=true;this.clear()}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size===0){return}try{EL(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t){return t}if(t===this){throw new Error("Cannot register a disposable on itself!")}if(this._isDisposed){if(!_L.DISABLE_DISPOSED_WARNING){console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack)}}else{this._toDispose.add(t)}return t}}_L.DISABLE_DISPOSED_WARNING=false;class OL{constructor(){this._store=new _L}dispose(){this._store.dispose()}_register(t){if(t===this){throw new Error("Cannot register a disposable on itself!")}return this._store.add(t)}}OL.None=Object.freeze({dispose(){}});class FL{constructor(){this._isDisposed=false}get value(){return this._isDisposed?undefined:this._value}set value(t){var e;if(this._isDisposed||t===this._value){return}(e=this._value)===null||e===void 0?void 0:e.dispose();this._value=t}clear(){this.value=undefined}dispose(){var t;this._isDisposed=true;(t=this._value)===null||t===void 0?void 0:t.dispose();this._value=undefined}clearAndLeak(){const t=this._value;this._value=undefined;return t}}class TL{constructor(t){this._disposable=t;this._counter=1}acquire(){this._counter++;return this}release(){if(--this._counter===0){this._disposable.dispose()}return this}}class RL{constructor(){this.dispose=()=>{};this.unset=()=>{};this.isset=()=>false}set(t){let e=t;this.unset=()=>e=undefined;this.isset=()=>e!==undefined;this.dispose=()=>{if(e){e();e=undefined}};return this}}class IL{constructor(t){this.object=t}dispose(){}}class NL{constructor(){this._store=new Map;this._isDisposed=false}dispose(){this._isDisposed=true;this.clearAndDisposeAll()}clearAndDisposeAll(){if(!this._store.size){return}try{EL(this._store.values())}finally{this._store.clear()}}get(t){return this._store.get(t)}set(t,e,i=false){var n;if(this._isDisposed){console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack)}if(!i){(n=this._store.get(t))===null||n===void 0?void 0:n.dispose()}this._store.set(t,e)}deleteAndDispose(t){var e;(e=this._store.get(t))===null||e===void 0?void 0:e.dispose();this._store.delete(t)}[Symbol.iterator](){return this._store[Symbol.iterator]()}}const BL=cA.performance&&typeof cA.performance.now==="function";class PL{static create(t=true){return new PL(t)}constructor(t){this._highResolution=BL&&t;this._startTime=this._now();this._stopTime=-1}stop(){this._stopTime=this._now()}elapsed(){if(this._stopTime!==-1){return this._stopTime-this._startTime}return this._now()-this._startTime}_now(){return this._highResolution?cA.performance.now():Date.now()}}var jL;(function(t){t.None=()=>OL.None;function e(t,e){return a(t,(()=>void 0),0,undefined,true,undefined,e)}t.defer=e;function i(t){return(e,i=null,n)=>{let s=false;let r=undefined;r=t((t=>{if(s){return}else if(r){r.dispose()}else{s=true}return e.call(i,t)}),null,n);if(s){r.dispose()}return r}}t.once=i;function n(t,e,i){return l(((i,n=null,s)=>t((t=>i.call(n,e(t))),null,s)),i)}t.map=n;function s(t,e,i){return l(((i,n=null,s)=>t((t=>{e(t);i.call(n,t)}),null,s)),i)}t.forEach=s;function r(t,e,i){return l(((i,n=null,s)=>t((t=>e(t)&&i.call(n,t)),null,s)),i)}t.filter=r;function o(t){return t}t.signal=o;function c(...t){return(e,i=null,n)=>ML(...t.map((t=>t((t=>e.call(i,t)),null,n))))}t.any=c;function h(t,e,i,s){let r=i;return n(t,(t=>{r=e(r,t);return r}),s)}t.reduce=h;function l(t,e){let i;const n={onWillAddFirstListener(){i=t(s.fire,s)},onDidRemoveLastListener(){i===null||i===void 0?void 0:i.dispose()}};const s=new UL(n);e===null||e===void 0?void 0:e.add(s);return s.event}function a(t,e,i=100,n=false,s=false,r,o){let c;let h=undefined;let l=undefined;let a=0;let u;const d={leakWarningThreshold:r,onWillAddFirstListener(){c=t((t=>{a++;h=e(h,t);if(n&&!l){f.fire(h);h=undefined}u=()=>{const t=h;h=undefined;l=undefined;if(!n||a>1){f.fire(t)}a=0};if(typeof i==="number"){clearTimeout(l);l=setTimeout(u,i)}else{if(l===undefined){l=0;queueMicrotask(u)}}}))},onWillRemoveListener(){if(s&&a>0){u===null||u===void 0?void 0:u()}},onDidRemoveLastListener(){u=undefined;c.dispose()}};const f=new UL(d);o===null||o===void 0?void 0:o.add(f);return f.event}t.debounce=a;function u(e,i=0,n){return t.debounce(e,((t,e)=>{if(!t){return[e]}t.push(e);return t}),i,undefined,true,undefined,n)}t.accumulate=u;function d(t,e=((t,e)=>t===e),i){let n=true;let s;return r(t,(t=>{const i=n||!e(t,s);n=false;s=t;return i}),i)}t.latch=d;function f(e,i,n){return[t.filter(e,i,n),t.filter(e,(t=>!i(t)),n)]}t.split=f;function g(t,e=false,i=[]){let n=i.slice();let s=t((t=>{if(n){n.push(t)}else{o.fire(t)}}));const r=()=>{n===null||n===void 0?void 0:n.forEach((t=>o.fire(t)));n=null};const o=new UL({onWillAddFirstListener(){if(!s){s=t((t=>o.fire(t)))}},onDidAddFirstListener(){if(n){if(e){setTimeout(r)}else{r()}}},onDidRemoveLastListener(){if(s){s.dispose()}s=null}});return o.event}t.buffer=g;class p{constructor(t){this.event=t;this.disposables=new _L}map(t){return new p(n(this.event,t,this.disposables))}forEach(t){return new p(s(this.event,t,this.disposables))}filter(t){return new p(r(this.event,t,this.disposables))}reduce(t,e){return new p(h(this.event,t,e,this.disposables))}latch(){return new p(d(this.event,undefined,this.disposables))}debounce(t,e=100,i=false,n=false,s){return new p(a(this.event,t,e,i,n,s,this.disposables))}on(t,e,i){return this.event(t,e,i)}once(t,e,n){return i(this.event)(t,e,n)}dispose(){this.disposables.dispose()}}function m(t){return new p(t)}t.chain=m;function w(t,e,i=(t=>t)){const n=(...t)=>o.fire(i(...t));const s=()=>t.on(e,n);const r=()=>t.removeListener(e,n);const o=new UL({onWillAddFirstListener:s,onDidRemoveLastListener:r});return o.event}t.fromNodeEventEmitter=w;function b(t,e,i=(t=>t)){const n=(...t)=>o.fire(i(...t));const s=()=>t.addEventListener(e,n);const r=()=>t.removeEventListener(e,n);const o=new UL({onWillAddFirstListener:s,onDidRemoveLastListener:r});return o.event}t.fromDOMEventEmitter=b;function v(t){return new Promise((e=>i(t)(e)))}t.toPromise=v;function y(t,e){e(undefined);return t((t=>e(t)))}t.runAndSubscribe=y;function k(t,e){let i=null;function n(t){i===null||i===void 0?void 0:i.dispose();i=new _L;e(t,i)}n(undefined);const s=t((t=>n(t)));return LL((()=>{s.dispose();i===null||i===void 0?void 0:i.dispose()}))}t.runAndSubscribeWithStore=k;class x{constructor(t,e){this.obs=t;this._counter=0;this._hasChanged=false;const i={onWillAddFirstListener:()=>{t.addObserver(this)},onDidRemoveLastListener:()=>{t.removeObserver(this)}};this.emitter=new UL(i);if(e){e.add(this.emitter)}}beginUpdate(t){this._counter++}handleChange(t,e){this._hasChanged=true}endUpdate(t){if(--this._counter===0){if(this._hasChanged){this._hasChanged=false;this.emitter.fire(this.obs.get())}}}}function C(t,e){const i=new x(t,e);return i.emitter.event}t.fromObservable=C})(jL||(jL={}));class $L{constructor(t){this.listenerCount=0;this.invocationCount=0;this.elapsedOverall=0;this.durations=[];this.name=`${t}_${$L._idPool++}`;$L.all.add(this)}start(t){this._stopWatch=new PL(true);this.listenerCount=t}stop(){if(this._stopWatch){const t=this._stopWatch.elapsed();this.durations.push(t);this.elapsedOverall+=t;this.invocationCount+=1;this._stopWatch=undefined}}}$L.all=new Set;$L._idPool=0;let zL=-1;class HL{constructor(t,e=Math.random().toString(18).slice(2,5)){this.threshold=t;this.name=e;this._warnCountdown=0}dispose(){var t;(t=this._stacks)===null||t===void 0?void 0:t.clear()}check(t,e){const i=this.threshold;if(i<=0||e{const e=this._stacks.get(t.value)||0;this._stacks.set(t.value,e-1)}}}class WL{static create(){var t;return new WL((t=(new Error).stack)!==null&&t!==void 0?t:"")}constructor(t){this.value=t}print(){console.warn(this.value.split("\n").slice(2).join("\n"))}}class VL{constructor(t,e,i){this.callback=t;this.callbackThis=e;this.stack=i;this.subscription=new RL}invoke(t){this.callback.call(this.callbackThis,t)}}class UL{constructor(t){var e,i,n,s,r;this._disposed=false;this._options=t;this._leakageMon=((e=this._options)===null||e===void 0?void 0:e.leakWarningThreshold)?new HL((n=(i=this._options)===null||i===void 0?void 0:i.leakWarningThreshold)!==null&&n!==void 0?n:zL):undefined;this._perfMon=((s=this._options)===null||s===void 0?void 0:s._profName)?new $L(this._options._profName):undefined;this._deliveryQueue=(r=this._options)===null||r===void 0?void 0:r.deliveryQueue}dispose(){var t,e,i,n;if(!this._disposed){this._disposed=true;if(this._listeners){this._listeners.clear()}(t=this._deliveryQueue)===null||t===void 0?void 0:t.clear(this);(i=(e=this._options)===null||e===void 0?void 0:e.onDidRemoveLastListener)===null||i===void 0?void 0:i.call(e);(n=this._leakageMon)===null||n===void 0?void 0:n.dispose()}}get event(){if(!this._event){this._event=(t,e,i)=>{var n,s,r;if(!this._listeners){this._listeners=new TA}if(this._leakageMon&&this._listeners.size>this._leakageMon.threshold*3){console.warn(`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far`);return OL.None}const o=this._listeners.isEmpty();if(o&&((n=this._options)===null||n===void 0?void 0:n.onWillAddFirstListener)){this._options.onWillAddFirstListener(this)}let c;let h;if(this._leakageMon&&this._listeners.size>=Math.ceil(this._leakageMon.threshold*.2)){h=WL.create();c=this._leakageMon.check(h,this._listeners.size+1)}const l=new VL(t,e,h);const a=this._listeners.push(l);if(o&&((s=this._options)===null||s===void 0?void 0:s.onDidAddFirstListener)){this._options.onDidAddFirstListener(this)}if((r=this._options)===null||r===void 0?void 0:r.onDidAddListener){this._options.onDidAddListener(this,t,e)}const u=l.subscription.set((()=>{var t,e;c===null||c===void 0?void 0:c();if(!this._disposed){(e=(t=this._options)===null||t===void 0?void 0:t.onWillRemoveListener)===null||e===void 0?void 0:e.call(t,this);a();if(this._options&&this._options.onDidRemoveLastListener){const t=this._listeners&&!this._listeners.isEmpty();if(!t){this._options.onDidRemoveLastListener(this)}}}}));if(i instanceof _L){i.add(u)}else if(Array.isArray(i)){i.push(u)}return u}}return this._event}fire(t){var e,i,n;if(this._listeners){if(!this._deliveryQueue){this._deliveryQueue=new KL((e=this._options)===null||e===void 0?void 0:e.onListenerError)}for(const e of this._listeners){this._deliveryQueue.push(this,e,t)}(i=this._perfMon)===null||i===void 0?void 0:i.start(this._deliveryQueue.size);this._deliveryQueue.deliver();(n=this._perfMon)===null||n===void 0?void 0:n.stop()}}hasListeners(){if(!this._listeners){return false}return!this._listeners.isEmpty()}}class qL{constructor(t=uL){this._onListenerError=t;this._queue=new TA}get size(){return this._queue.size}push(t,e,i){this._queue.push(new GL(t,e,i))}clear(t){const e=new TA;for(const i of this._queue){if(i.emitter!==t){e.push(i)}}this._queue=e}deliver(){while(this._queue.size>0){const t=this._queue.shift();try{t.listener.invoke(t.event)}catch(t){this._onListenerError(t)}}}}class KL extends qL{clear(t){this._queue.clear()}}class GL{constructor(t,e,i){this.emitter=t;this.listener=e;this.event=i}}class ZL extends UL{constructor(t){super(t);this._isPaused=0;this._eventQueue=new TA;this._mergeFn=t===null||t===void 0?void 0:t.merge}pause(){this._isPaused++}resume(){if(this._isPaused!==0&&--this._isPaused===0){if(this._mergeFn){if(this._eventQueue.size>0){const t=Array.from(this._eventQueue);this._eventQueue.clear();super.fire(this._mergeFn(t))}}else{while(!this._isPaused&&this._eventQueue.size!==0){super.fire(this._eventQueue.shift())}}}}fire(t){if(this._listeners){if(this._isPaused!==0){this._eventQueue.push(t)}else{super.fire(t)}}}}class JL extends ZL{constructor(t){var e;super(t);this._delay=(e=t.delay)!==null&&e!==void 0?e:100}fire(t){if(!this._handle){this.pause();this._handle=setTimeout((()=>{this._handle=undefined;this.resume()}),this._delay)}super.fire(t)}}class QL extends UL{constructor(t){super(t);this._queuedEvents=[];this._mergeFn=t===null||t===void 0?void 0:t.merge}fire(t){if(!this.hasListeners()){return}this._queuedEvents.push(t);if(this._queuedEvents.length===1){queueMicrotask((()=>{if(this._mergeFn){super.fire(this._mergeFn(this._queuedEvents))}else{this._queuedEvents.forEach((t=>super.fire(t)))}this._queuedEvents=[]}))}}}class YL{constructor(){this.hasListeners=false;this.events=[];this.emitter=new UL({onWillAddFirstListener:()=>this.onFirstListenerAdd(),onDidRemoveLastListener:()=>this.onLastListenerRemove()})}get event(){return this.emitter.event}add(t){const e={event:t,listener:null};this.events.push(e);if(this.hasListeners){this.hook(e)}const i=()=>{if(this.hasListeners){this.unhook(e)}const t=this.events.indexOf(e);this.events.splice(t,1)};return LL(CL(i))}onFirstListenerAdd(){this.hasListeners=true;this.events.forEach((t=>this.hook(t)))}onLastListenerRemove(){this.hasListeners=false;this.events.forEach((t=>this.unhook(t)))}hook(t){t.listener=t.event((t=>this.emitter.fire(t)))}unhook(t){if(t.listener){t.listener.dispose()}t.listener=null}dispose(){this.emitter.dispose()}}class XL{constructor(){this.buffers=[]}wrapEvent(t){return(e,i,n)=>t((t=>{const n=this.buffers[this.buffers.length-1];if(n){n.push((()=>e.call(i,t)))}else{e.call(i,t)}}),undefined,n)}bufferEvents(t){const e=[];this.buffers.push(e);const i=t();this.buffers.pop();e.forEach((t=>t()));return i}}class t_{constructor(){this.listening=false;this.inputEvent=jL.None;this.inputEventListener=OL.None;this.emitter=new UL({onDidAddFirstListener:()=>{this.listening=true;this.inputEventListener=this.inputEvent(this.emitter.fire,this.emitter)},onDidRemoveLastListener:()=>{this.listening=false;this.inputEventListener.dispose()}});this.event=this.emitter.event}set input(t){this.inputEvent=t;if(this.listening){this.inputEventListener.dispose();this.inputEventListener=t(this.emitter.fire,this.emitter)}}dispose(){this.inputEventListener.dispose();this.emitter.dispose()}}const e_=Object.freeze((function(t,e){const i=setTimeout(t.bind(e),0);return{dispose(){clearTimeout(i)}}}));var i_;(function(t){function e(e){if(e===t.None||e===t.Cancelled){return true}if(e instanceof n_){return true}if(!e||typeof e!=="object"){return false}return typeof e.isCancellationRequested==="boolean"&&typeof e.onCancellationRequested==="function"}t.isCancellationToken=e;t.None=Object.freeze({isCancellationRequested:false,onCancellationRequested:jL.None});t.Cancelled=Object.freeze({isCancellationRequested:true,onCancellationRequested:e_})})(i_||(i_={}));class n_{constructor(){this._isCancelled=false;this._emitter=null}cancel(){if(!this._isCancelled){this._isCancelled=true;if(this._emitter){this._emitter.fire(undefined);this.dispose()}}}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){if(this._isCancelled){return e_}if(!this._emitter){this._emitter=new UL}return this._emitter.event}dispose(){if(this._emitter){this._emitter.dispose();this._emitter=null}}}class s_{constructor(t){this._token=undefined;this._parentListener=undefined;this._parentListener=t&&t.onCancellationRequested(this.cancel,this)}get token(){if(!this._token){this._token=new n_}return this._token}cancel(){if(!this._token){this._token=i_.Cancelled}else if(this._token instanceof n_){this._token.cancel()}}dispose(t=false){var e;if(t){this.cancel()}(e=this._parentListener)===null||e===void 0?void 0:e.dispose();if(!this._token){this._token=i_.None}else if(this._token instanceof n_){this._token.dispose()}}}class r_{constructor(){this._keyCodeToStr=[];this._strToKeyCode=Object.create(null)}define(t,e){this._keyCodeToStr[t]=e;this._strToKeyCode[e.toLowerCase()]=t}keyCodeToStr(t){return this._keyCodeToStr[t]}strToKeyCode(t){return this._strToKeyCode[t.toLowerCase()]||0}}const o_=new r_;const c_=new r_;const h_=new r_;const l_=new Array(230);const a_=[];const u_=Object.create(null);const d_=Object.create(null);const f_=[];const g_=[];for(let t=0;t<=193;t++){f_[t]=-1}for(let t=0;t<=127;t++){g_[t]=-1}(function(){const t="";const e=[[0,1,0,"None",0,"unknown",0,"VK_UNKNOWN",t,t],[0,1,1,"Hyper",0,t,0,t,t,t],[0,1,2,"Super",0,t,0,t,t,t],[0,1,3,"Fn",0,t,0,t,t,t],[0,1,4,"FnLock",0,t,0,t,t,t],[0,1,5,"Suspend",0,t,0,t,t,t],[0,1,6,"Resume",0,t,0,t,t,t],[0,1,7,"Turbo",0,t,0,t,t,t],[0,1,8,"Sleep",0,t,0,"VK_SLEEP",t,t],[0,1,9,"WakeUp",0,t,0,t,t,t],[31,0,10,"KeyA",31,"A",65,"VK_A",t,t],[32,0,11,"KeyB",32,"B",66,"VK_B",t,t],[33,0,12,"KeyC",33,"C",67,"VK_C",t,t],[34,0,13,"KeyD",34,"D",68,"VK_D",t,t],[35,0,14,"KeyE",35,"E",69,"VK_E",t,t],[36,0,15,"KeyF",36,"F",70,"VK_F",t,t],[37,0,16,"KeyG",37,"G",71,"VK_G",t,t],[38,0,17,"KeyH",38,"H",72,"VK_H",t,t],[39,0,18,"KeyI",39,"I",73,"VK_I",t,t],[40,0,19,"KeyJ",40,"J",74,"VK_J",t,t],[41,0,20,"KeyK",41,"K",75,"VK_K",t,t],[42,0,21,"KeyL",42,"L",76,"VK_L",t,t],[43,0,22,"KeyM",43,"M",77,"VK_M",t,t],[44,0,23,"KeyN",44,"N",78,"VK_N",t,t],[45,0,24,"KeyO",45,"O",79,"VK_O",t,t],[46,0,25,"KeyP",46,"P",80,"VK_P",t,t],[47,0,26,"KeyQ",47,"Q",81,"VK_Q",t,t],[48,0,27,"KeyR",48,"R",82,"VK_R",t,t],[49,0,28,"KeyS",49,"S",83,"VK_S",t,t],[50,0,29,"KeyT",50,"T",84,"VK_T",t,t],[51,0,30,"KeyU",51,"U",85,"VK_U",t,t],[52,0,31,"KeyV",52,"V",86,"VK_V",t,t],[53,0,32,"KeyW",53,"W",87,"VK_W",t,t],[54,0,33,"KeyX",54,"X",88,"VK_X",t,t],[55,0,34,"KeyY",55,"Y",89,"VK_Y",t,t],[56,0,35,"KeyZ",56,"Z",90,"VK_Z",t,t],[22,0,36,"Digit1",22,"1",49,"VK_1",t,t],[23,0,37,"Digit2",23,"2",50,"VK_2",t,t],[24,0,38,"Digit3",24,"3",51,"VK_3",t,t],[25,0,39,"Digit4",25,"4",52,"VK_4",t,t],[26,0,40,"Digit5",26,"5",53,"VK_5",t,t],[27,0,41,"Digit6",27,"6",54,"VK_6",t,t],[28,0,42,"Digit7",28,"7",55,"VK_7",t,t],[29,0,43,"Digit8",29,"8",56,"VK_8",t,t],[30,0,44,"Digit9",30,"9",57,"VK_9",t,t],[21,0,45,"Digit0",21,"0",48,"VK_0",t,t],[3,1,46,"Enter",3,"Enter",13,"VK_RETURN",t,t],[9,1,47,"Escape",9,"Escape",27,"VK_ESCAPE",t,t],[1,1,48,"Backspace",1,"Backspace",8,"VK_BACK",t,t],[2,1,49,"Tab",2,"Tab",9,"VK_TAB",t,t],[10,1,50,"Space",10,"Space",32,"VK_SPACE",t,t],[83,0,51,"Minus",83,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[81,0,52,"Equal",81,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[87,0,53,"BracketLeft",87,"[",219,"VK_OEM_4","[","OEM_4"],[89,0,54,"BracketRight",89,"]",221,"VK_OEM_6","]","OEM_6"],[88,0,55,"Backslash",88,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,0,56,"IntlHash",0,t,0,t,t,t],[80,0,57,"Semicolon",80,";",186,"VK_OEM_1",";","OEM_1"],[90,0,58,"Quote",90,"'",222,"VK_OEM_7","'","OEM_7"],[86,0,59,"Backquote",86,"`",192,"VK_OEM_3","`","OEM_3"],[82,0,60,"Comma",82,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[84,0,61,"Period",84,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[85,0,62,"Slash",85,"/",191,"VK_OEM_2","/","OEM_2"],[8,1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL",t,t],[59,1,64,"F1",59,"F1",112,"VK_F1",t,t],[60,1,65,"F2",60,"F2",113,"VK_F2",t,t],[61,1,66,"F3",61,"F3",114,"VK_F3",t,t],[62,1,67,"F4",62,"F4",115,"VK_F4",t,t],[63,1,68,"F5",63,"F5",116,"VK_F5",t,t],[64,1,69,"F6",64,"F6",117,"VK_F6",t,t],[65,1,70,"F7",65,"F7",118,"VK_F7",t,t],[66,1,71,"F8",66,"F8",119,"VK_F8",t,t],[67,1,72,"F9",67,"F9",120,"VK_F9",t,t],[68,1,73,"F10",68,"F10",121,"VK_F10",t,t],[69,1,74,"F11",69,"F11",122,"VK_F11",t,t],[70,1,75,"F12",70,"F12",123,"VK_F12",t,t],[0,1,76,"PrintScreen",0,t,0,t,t,t],[79,1,77,"ScrollLock",79,"ScrollLock",145,"VK_SCROLL",t,t],[7,1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE",t,t],[19,1,79,"Insert",19,"Insert",45,"VK_INSERT",t,t],[14,1,80,"Home",14,"Home",36,"VK_HOME",t,t],[11,1,81,"PageUp",11,"PageUp",33,"VK_PRIOR",t,t],[20,1,82,"Delete",20,"Delete",46,"VK_DELETE",t,t],[13,1,83,"End",13,"End",35,"VK_END",t,t],[12,1,84,"PageDown",12,"PageDown",34,"VK_NEXT",t,t],[17,1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",t],[15,1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",t],[18,1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",t],[16,1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",t],[78,1,89,"NumLock",78,"NumLock",144,"VK_NUMLOCK",t,t],[108,1,90,"NumpadDivide",108,"NumPad_Divide",111,"VK_DIVIDE",t,t],[103,1,91,"NumpadMultiply",103,"NumPad_Multiply",106,"VK_MULTIPLY",t,t],[106,1,92,"NumpadSubtract",106,"NumPad_Subtract",109,"VK_SUBTRACT",t,t],[104,1,93,"NumpadAdd",104,"NumPad_Add",107,"VK_ADD",t,t],[3,1,94,"NumpadEnter",3,t,0,t,t,t],[94,1,95,"Numpad1",94,"NumPad1",97,"VK_NUMPAD1",t,t],[95,1,96,"Numpad2",95,"NumPad2",98,"VK_NUMPAD2",t,t],[96,1,97,"Numpad3",96,"NumPad3",99,"VK_NUMPAD3",t,t],[97,1,98,"Numpad4",97,"NumPad4",100,"VK_NUMPAD4",t,t],[98,1,99,"Numpad5",98,"NumPad5",101,"VK_NUMPAD5",t,t],[99,1,100,"Numpad6",99,"NumPad6",102,"VK_NUMPAD6",t,t],[100,1,101,"Numpad7",100,"NumPad7",103,"VK_NUMPAD7",t,t],[101,1,102,"Numpad8",101,"NumPad8",104,"VK_NUMPAD8",t,t],[102,1,103,"Numpad9",102,"NumPad9",105,"VK_NUMPAD9",t,t],[93,1,104,"Numpad0",93,"NumPad0",96,"VK_NUMPAD0",t,t],[107,1,105,"NumpadDecimal",107,"NumPad_Decimal",110,"VK_DECIMAL",t,t],[92,0,106,"IntlBackslash",92,"OEM_102",226,"VK_OEM_102",t,t],[58,1,107,"ContextMenu",58,"ContextMenu",93,t,t,t],[0,1,108,"Power",0,t,0,t,t,t],[0,1,109,"NumpadEqual",0,t,0,t,t,t],[71,1,110,"F13",71,"F13",124,"VK_F13",t,t],[72,1,111,"F14",72,"F14",125,"VK_F14",t,t],[73,1,112,"F15",73,"F15",126,"VK_F15",t,t],[74,1,113,"F16",74,"F16",127,"VK_F16",t,t],[75,1,114,"F17",75,"F17",128,"VK_F17",t,t],[76,1,115,"F18",76,"F18",129,"VK_F18",t,t],[77,1,116,"F19",77,"F19",130,"VK_F19",t,t],[0,1,117,"F20",0,t,0,"VK_F20",t,t],[0,1,118,"F21",0,t,0,"VK_F21",t,t],[0,1,119,"F22",0,t,0,"VK_F22",t,t],[0,1,120,"F23",0,t,0,"VK_F23",t,t],[0,1,121,"F24",0,t,0,"VK_F24",t,t],[0,1,122,"Open",0,t,0,t,t,t],[0,1,123,"Help",0,t,0,t,t,t],[0,1,124,"Select",0,t,0,t,t,t],[0,1,125,"Again",0,t,0,t,t,t],[0,1,126,"Undo",0,t,0,t,t,t],[0,1,127,"Cut",0,t,0,t,t,t],[0,1,128,"Copy",0,t,0,t,t,t],[0,1,129,"Paste",0,t,0,t,t,t],[0,1,130,"Find",0,t,0,t,t,t],[0,1,131,"AudioVolumeMute",112,"AudioVolumeMute",173,"VK_VOLUME_MUTE",t,t],[0,1,132,"AudioVolumeUp",113,"AudioVolumeUp",175,"VK_VOLUME_UP",t,t],[0,1,133,"AudioVolumeDown",114,"AudioVolumeDown",174,"VK_VOLUME_DOWN",t,t],[105,1,134,"NumpadComma",105,"NumPad_Separator",108,"VK_SEPARATOR",t,t],[110,0,135,"IntlRo",110,"ABNT_C1",193,"VK_ABNT_C1",t,t],[0,1,136,"KanaMode",0,t,0,t,t,t],[0,0,137,"IntlYen",0,t,0,t,t,t],[0,1,138,"Convert",0,t,0,t,t,t],[0,1,139,"NonConvert",0,t,0,t,t,t],[0,1,140,"Lang1",0,t,0,t,t,t],[0,1,141,"Lang2",0,t,0,t,t,t],[0,1,142,"Lang3",0,t,0,t,t,t],[0,1,143,"Lang4",0,t,0,t,t,t],[0,1,144,"Lang5",0,t,0,t,t,t],[0,1,145,"Abort",0,t,0,t,t,t],[0,1,146,"Props",0,t,0,t,t,t],[0,1,147,"NumpadParenLeft",0,t,0,t,t,t],[0,1,148,"NumpadParenRight",0,t,0,t,t,t],[0,1,149,"NumpadBackspace",0,t,0,t,t,t],[0,1,150,"NumpadMemoryStore",0,t,0,t,t,t],[0,1,151,"NumpadMemoryRecall",0,t,0,t,t,t],[0,1,152,"NumpadMemoryClear",0,t,0,t,t,t],[0,1,153,"NumpadMemoryAdd",0,t,0,t,t,t],[0,1,154,"NumpadMemorySubtract",0,t,0,t,t,t],[0,1,155,"NumpadClear",126,"Clear",12,"VK_CLEAR",t,t],[0,1,156,"NumpadClearEntry",0,t,0,t,t,t],[5,1,0,t,5,"Ctrl",17,"VK_CONTROL",t,t],[4,1,0,t,4,"Shift",16,"VK_SHIFT",t,t],[6,1,0,t,6,"Alt",18,"VK_MENU",t,t],[57,1,0,t,57,"Meta",91,"VK_COMMAND",t,t],[5,1,157,"ControlLeft",5,t,0,"VK_LCONTROL",t,t],[4,1,158,"ShiftLeft",4,t,0,"VK_LSHIFT",t,t],[6,1,159,"AltLeft",6,t,0,"VK_LMENU",t,t],[57,1,160,"MetaLeft",57,t,0,"VK_LWIN",t,t],[5,1,161,"ControlRight",5,t,0,"VK_RCONTROL",t,t],[4,1,162,"ShiftRight",4,t,0,"VK_RSHIFT",t,t],[6,1,163,"AltRight",6,t,0,"VK_RMENU",t,t],[57,1,164,"MetaRight",57,t,0,"VK_RWIN",t,t],[0,1,165,"BrightnessUp",0,t,0,t,t,t],[0,1,166,"BrightnessDown",0,t,0,t,t,t],[0,1,167,"MediaPlay",0,t,0,t,t,t],[0,1,168,"MediaRecord",0,t,0,t,t,t],[0,1,169,"MediaFastForward",0,t,0,t,t,t],[0,1,170,"MediaRewind",0,t,0,t,t,t],[114,1,171,"MediaTrackNext",119,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK",t,t],[115,1,172,"MediaTrackPrevious",120,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK",t,t],[116,1,173,"MediaStop",121,"MediaStop",178,"VK_MEDIA_STOP",t,t],[0,1,174,"Eject",0,t,0,t,t,t],[117,1,175,"MediaPlayPause",122,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE",t,t],[0,1,176,"MediaSelect",123,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT",t,t],[0,1,177,"LaunchMail",124,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL",t,t],[0,1,178,"LaunchApp2",125,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2",t,t],[0,1,179,"LaunchApp1",0,t,0,"VK_MEDIA_LAUNCH_APP1",t,t],[0,1,180,"SelectTask",0,t,0,t,t,t],[0,1,181,"LaunchScreenSaver",0,t,0,t,t,t],[0,1,182,"BrowserSearch",115,"BrowserSearch",170,"VK_BROWSER_SEARCH",t,t],[0,1,183,"BrowserHome",116,"BrowserHome",172,"VK_BROWSER_HOME",t,t],[112,1,184,"BrowserBack",117,"BrowserBack",166,"VK_BROWSER_BACK",t,t],[113,1,185,"BrowserForward",118,"BrowserForward",167,"VK_BROWSER_FORWARD",t,t],[0,1,186,"BrowserStop",0,t,0,"VK_BROWSER_STOP",t,t],[0,1,187,"BrowserRefresh",0,t,0,"VK_BROWSER_REFRESH",t,t],[0,1,188,"BrowserFavorites",0,t,0,"VK_BROWSER_FAVORITES",t,t],[0,1,189,"ZoomToggle",0,t,0,t,t,t],[0,1,190,"MailReply",0,t,0,t,t,t],[0,1,191,"MailForward",0,t,0,t,t,t],[0,1,192,"MailSend",0,t,0,t,t,t],[109,1,0,t,109,"KeyInComposition",229,t,t,t],[111,1,0,t,111,"ABNT_C2",194,"VK_ABNT_C2",t,t],[91,1,0,t,91,"OEM_8",223,"VK_OEM_8",t,t],[0,1,0,t,0,t,0,"VK_KANA",t,t],[0,1,0,t,0,t,0,"VK_HANGUL",t,t],[0,1,0,t,0,t,0,"VK_JUNJA",t,t],[0,1,0,t,0,t,0,"VK_FINAL",t,t],[0,1,0,t,0,t,0,"VK_HANJA",t,t],[0,1,0,t,0,t,0,"VK_KANJI",t,t],[0,1,0,t,0,t,0,"VK_CONVERT",t,t],[0,1,0,t,0,t,0,"VK_NONCONVERT",t,t],[0,1,0,t,0,t,0,"VK_ACCEPT",t,t],[0,1,0,t,0,t,0,"VK_MODECHANGE",t,t],[0,1,0,t,0,t,0,"VK_SELECT",t,t],[0,1,0,t,0,t,0,"VK_PRINT",t,t],[0,1,0,t,0,t,0,"VK_EXECUTE",t,t],[0,1,0,t,0,t,0,"VK_SNAPSHOT",t,t],[0,1,0,t,0,t,0,"VK_HELP",t,t],[0,1,0,t,0,t,0,"VK_APPS",t,t],[0,1,0,t,0,t,0,"VK_PROCESSKEY",t,t],[0,1,0,t,0,t,0,"VK_PACKET",t,t],[0,1,0,t,0,t,0,"VK_DBE_SBCSCHAR",t,t],[0,1,0,t,0,t,0,"VK_DBE_DBCSCHAR",t,t],[0,1,0,t,0,t,0,"VK_ATTN",t,t],[0,1,0,t,0,t,0,"VK_CRSEL",t,t],[0,1,0,t,0,t,0,"VK_EXSEL",t,t],[0,1,0,t,0,t,0,"VK_EREOF",t,t],[0,1,0,t,0,t,0,"VK_PLAY",t,t],[0,1,0,t,0,t,0,"VK_ZOOM",t,t],[0,1,0,t,0,t,0,"VK_NONAME",t,t],[0,1,0,t,0,t,0,"VK_PA1",t,t],[0,1,0,t,0,t,0,"VK_OEM_CLEAR",t,t]];const i=[];const n=[];for(const t of e){const[e,s,r,o,c,h,l,a,u,d]=t;if(!n[r]){n[r]=true;a_[r]=o;u_[o]=r;d_[o.toLowerCase()]=r;if(s){f_[r]=c;if(c!==0&&c!==3&&c!==5&&c!==4&&c!==6&&c!==57){g_[c]=r}}}if(!i[c]){i[c]=true;if(!h){throw new Error(`String representation missing for key code ${c} around scan code ${o}`)}o_.define(c,h);c_.define(c,u||h);h_.define(c,d||u||h)}if(l){l_[l]=c}}g_[3]=46})();var p_;(function(t){function e(t){return o_.keyCodeToStr(t)}t.toString=e;function i(t){return o_.strToKeyCode(t)}t.fromString=i;function n(t){return c_.keyCodeToStr(t)}t.toUserSettingsUS=n;function s(t){return h_.keyCodeToStr(t)}t.toUserSettingsGeneral=s;function r(t){return c_.strToKeyCode(t)||h_.strToKeyCode(t)}t.fromUserSettings=r;function o(t){if(t>=93&&t<=108){return null}switch(t){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return o_.keyCodeToStr(t)}t.toElectronAccelerator=o})(p_||(p_={}));function m_(t,e){const i=(e&65535)<<16>>>0;return(t|i)>>>0}let w_;if(typeof cA.vscode!=="undefined"&&typeof cA.vscode.process!=="undefined"){const t=cA.vscode.process;w_={get platform(){return t.platform},get arch(){return t.arch},get env(){return t.env},cwd(){return t.cwd()}}}else if(typeof process!=="undefined"){w_={get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd(){return process.env["VSCODE_CWD"]||process.cwd()}}}else{w_={get platform(){return uA?"win32":dA?"darwin":"linux"},get arch(){return undefined},get env(){return{}},cwd(){return"/"}}}const b_=w_.cwd;const v_=w_.env;const y_=w_.platform;const k_=65;const x_=97;const C_=90;const S_=122;const D_=46;const A_=47;const E_=92;const M_=58;const L_=63;class __ extends Error{constructor(t,e,i){let n;if(typeof e==="string"&&e.indexOf("not ")===0){n="must not be";e=e.replace(/^not /,"")}else{n="must be"}const s=t.indexOf(".")!==-1?"property":"argument";let r=`The "${t}" ${s} ${n} of type ${e}`;r+=`. Received type ${typeof i}`;super(r);this.code="ERR_INVALID_ARG_TYPE"}}function O_(t,e){if(t===null||typeof t!=="object"){throw new __(e,"Object",t)}}function F_(t,e){if(typeof t!=="string"){throw new __(e,"string",t)}}const T_=y_==="win32";function R_(t){return t===A_||t===E_}function I_(t){return t===A_}function N_(t){return t>=k_&&t<=C_||t>=x_&&t<=S_}function B_(t,e,i,n){let s="";let r=0;let o=-1;let c=0;let h=0;for(let l=0;l<=t.length;++l){if(l2){const t=s.lastIndexOf(i);if(t===-1){s="";r=0}else{s=s.slice(0,t);r=s.length-1-s.lastIndexOf(i)}o=l;c=0;continue}else if(s.length!==0){s="";r=0;o=l;c=0;continue}}if(e){s+=s.length>0?`${i}..`:"..";r=2}}else{if(s.length>0){s+=`${i}${t.slice(o+1,l)}`}else{s=t.slice(o+1,l)}r=l-o-1}o=l;c=0}else if(h===D_&&c!==-1){++c}else{c=-1}}return s}function P_(t,e){O_(e,"pathObject");const i=e.dir||e.root;const n=e.base||`${e.name||""}${e.ext||""}`;if(!i){return n}return i===e.root?`${i}${n}`:`${i}${t}${n}`}const j_={resolve(...t){let e="";let i="";let n=false;for(let s=t.length-1;s>=-1;s--){let r;if(s>=0){r=t[s];F_(r,"path");if(r.length===0){continue}}else if(e.length===0){r=b_()}else{r=v_[`=${e}`]||b_();if(r===undefined||r.slice(0,2).toLowerCase()!==e.toLowerCase()&&r.charCodeAt(2)===E_){r=`${e}\\`}}const o=r.length;let c=0;let h="";let l=false;const a=r.charCodeAt(0);if(o===1){if(R_(a)){c=1;l=true}}else if(R_(a)){l=true;if(R_(r.charCodeAt(1))){let t=2;let e=t;while(t2&&R_(r.charCodeAt(2))){l=true;c=3}}if(h.length>0){if(e.length>0){if(h.toLowerCase()!==e.toLowerCase()){continue}}else{e=h}}if(n){if(e.length>0){break}}else{i=`${r.slice(c)}\\${i}`;n=l;if(l&&e.length>0){break}}}i=B_(i,!n,"\\",R_);return n?`${e}\\${i}`:`${e}${i}`||"."},normalize(t){F_(t,"path");const e=t.length;if(e===0){return"."}let i=0;let n;let s=false;const r=t.charCodeAt(0);if(e===1){return I_(r)?"\\":t}if(R_(r)){s=true;if(R_(t.charCodeAt(1))){let s=2;let r=s;while(s2&&R_(t.charCodeAt(2))){s=true;i=3}}let o=i0&&R_(t.charCodeAt(e-1))){o+="\\"}if(n===undefined){return s?`\\${o}`:o}return s?`${n}\\${o}`:`${n}${o}`},isAbsolute(t){F_(t,"path");const e=t.length;if(e===0){return false}const i=t.charCodeAt(0);return R_(i)||e>2&&N_(i)&&t.charCodeAt(1)===M_&&R_(t.charCodeAt(2))},join(...t){if(t.length===0){return"."}let e;let i;for(let n=0;n0){if(e===undefined){e=i=s}else{e+=`\\${s}`}}}if(e===undefined){return"."}let n=true;let s=0;if(typeof i==="string"&&R_(i.charCodeAt(0))){++s;const t=i.length;if(t>1&&R_(i.charCodeAt(1))){++s;if(t>2){if(R_(i.charCodeAt(2))){++s}else{n=false}}}}if(n){while(s=2){e=`\\${e.slice(s)}`}}return j_.normalize(e)},relative(t,e){F_(t,"from");F_(e,"to");if(t===e){return""}const i=j_.resolve(t);const n=j_.resolve(e);if(i===n){return""}t=i.toLowerCase();e=n.toLowerCase();if(t===e){return""}let s=0;while(ss&&t.charCodeAt(r-1)===E_){r--}const o=r-s;let c=0;while(cc&&e.charCodeAt(h-1)===E_){h--}const l=h-c;const a=oa){if(e.charCodeAt(c+d)===E_){return n.slice(c+d+1)}if(d===2){return n.slice(c+d)}}if(o>a){if(t.charCodeAt(s+d)===E_){u=d}else if(d===2){u=3}}if(u===-1){u=0}}let f="";for(d=s+u+1;d<=r;++d){if(d===r||t.charCodeAt(d)===E_){f+=f.length===0?"..":"\\.."}}c+=u;if(f.length>0){return`${f}${n.slice(c,h)}`}if(n.charCodeAt(c)===E_){++c}return n.slice(c,h)},toNamespacedPath(t){if(typeof t!=="string"||t.length===0){return t}const e=j_.resolve(t);if(e.length<=2){return t}if(e.charCodeAt(0)===E_){if(e.charCodeAt(1)===E_){const t=e.charCodeAt(2);if(t!==L_&&t!==D_){return`\\\\?\\UNC\\${e.slice(2)}`}}}else if(N_(e.charCodeAt(0))&&e.charCodeAt(1)===M_&&e.charCodeAt(2)===E_){return`\\\\?\\${e}`}return t},dirname(t){F_(t,"path");const e=t.length;if(e===0){return"."}let i=-1;let n=0;const s=t.charCodeAt(0);if(e===1){return R_(s)?t:"."}if(R_(s)){i=n=1;if(R_(t.charCodeAt(1))){let s=2;let r=s;while(s2&&R_(t.charCodeAt(2))?3:2;n=i}let r=-1;let o=true;for(let i=e-1;i>=n;--i){if(R_(t.charCodeAt(i))){if(!o){r=i;break}}else{o=false}}if(r===-1){if(i===-1){return"."}r=i}return t.slice(0,r)},basename(t,e){if(e!==undefined){F_(e,"ext")}F_(t,"path");let i=0;let n=-1;let s=true;let r;if(t.length>=2&&N_(t.charCodeAt(0))&&t.charCodeAt(1)===M_){i=2}if(e!==undefined&&e.length>0&&e.length<=t.length){if(e===t){return""}let o=e.length-1;let c=-1;for(r=t.length-1;r>=i;--r){const h=t.charCodeAt(r);if(R_(h)){if(!s){i=r+1;break}}else{if(c===-1){s=false;c=r+1}if(o>=0){if(h===e.charCodeAt(o)){if(--o===-1){n=r}}else{o=-1;n=c}}}}if(i===n){n=c}else if(n===-1){n=t.length}return t.slice(i,n)}for(r=t.length-1;r>=i;--r){if(R_(t.charCodeAt(r))){if(!s){i=r+1;break}}else if(n===-1){s=false;n=r+1}}if(n===-1){return""}return t.slice(i,n)},extname(t){F_(t,"path");let e=0;let i=-1;let n=0;let s=-1;let r=true;let o=0;if(t.length>=2&&t.charCodeAt(1)===M_&&N_(t.charCodeAt(0))){e=n=2}for(let c=t.length-1;c>=e;--c){const e=t.charCodeAt(c);if(R_(e)){if(!r){n=c+1;break}continue}if(s===-1){r=false;s=c+1}if(e===D_){if(i===-1){i=c}else if(o!==1){o=1}}else if(i!==-1){o=-1}}if(i===-1||s===-1||o===0||o===1&&i===s-1&&i===n+1){return""}return t.slice(i,s)},format:P_.bind(null,"\\"),parse(t){F_(t,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(t.length===0){return e}const i=t.length;let n=0;let s=t.charCodeAt(0);if(i===1){if(R_(s)){e.root=e.dir=t;return e}e.base=e.name=t;return e}if(R_(s)){n=1;if(R_(t.charCodeAt(1))){let e=2;let s=e;while(e0){e.root=t.slice(0,n)}let r=-1;let o=n;let c=-1;let h=true;let l=t.length-1;let a=0;for(;l>=n;--l){s=t.charCodeAt(l);if(R_(s)){if(!h){o=l+1;break}continue}if(c===-1){h=false;c=l+1}if(s===D_){if(r===-1){r=l}else if(a!==1){a=1}}else if(r!==-1){a=-1}}if(c!==-1){if(r===-1||a===0||a===1&&r===c-1&&r===o+1){e.base=e.name=t.slice(o,c)}else{e.name=t.slice(o,r);e.base=t.slice(o,c);e.ext=t.slice(r,c)}}if(o>0&&o!==n){e.dir=t.slice(0,o-1)}else{e.dir=e.root}return e},sep:"\\",delimiter:";",win32:null,posix:null};const $_=(()=>{if(T_){const t=/\\/g;return()=>{const e=b_().replace(t,"/");return e.slice(e.indexOf("/"))}}return()=>b_()})();const z_={resolve(...t){let e="";let i=false;for(let n=t.length-1;n>=-1&&!i;n--){const s=n>=0?t[n]:$_();F_(s,"path");if(s.length===0){continue}e=`${s}/${e}`;i=s.charCodeAt(0)===A_}e=B_(e,!i,"/",I_);if(i){return`/${e}`}return e.length>0?e:"."},normalize(t){F_(t,"path");if(t.length===0){return"."}const e=t.charCodeAt(0)===A_;const i=t.charCodeAt(t.length-1)===A_;t=B_(t,!e,"/",I_);if(t.length===0){if(e){return"/"}return i?"./":"."}if(i){t+="/"}return e?`/${t}`:t},isAbsolute(t){F_(t,"path");return t.length>0&&t.charCodeAt(0)===A_},join(...t){if(t.length===0){return"."}let e;for(let i=0;i0){if(e===undefined){e=n}else{e+=`/${n}`}}}if(e===undefined){return"."}return z_.normalize(e)},relative(t,e){F_(t,"from");F_(e,"to");if(t===e){return""}t=z_.resolve(t);e=z_.resolve(e);if(t===e){return""}const i=1;const n=t.length;const s=n-i;const r=1;const o=e.length-r;const c=sc){if(e.charCodeAt(r+l)===A_){return e.slice(r+l+1)}if(l===0){return e.slice(r+l)}}else if(s>c){if(t.charCodeAt(i+l)===A_){h=l}else if(l===0){h=0}}}let a="";for(l=i+h+1;l<=n;++l){if(l===n||t.charCodeAt(l)===A_){a+=a.length===0?"..":"/.."}}return`${a}${e.slice(r+h)}`},toNamespacedPath(t){return t},dirname(t){F_(t,"path");if(t.length===0){return"."}const e=t.charCodeAt(0)===A_;let i=-1;let n=true;for(let e=t.length-1;e>=1;--e){if(t.charCodeAt(e)===A_){if(!n){i=e;break}}else{n=false}}if(i===-1){return e?"/":"."}if(e&&i===1){return"//"}return t.slice(0,i)},basename(t,e){if(e!==undefined){F_(e,"ext")}F_(t,"path");let i=0;let n=-1;let s=true;let r;if(e!==undefined&&e.length>0&&e.length<=t.length){if(e===t){return""}let o=e.length-1;let c=-1;for(r=t.length-1;r>=0;--r){const h=t.charCodeAt(r);if(h===A_){if(!s){i=r+1;break}}else{if(c===-1){s=false;c=r+1}if(o>=0){if(h===e.charCodeAt(o)){if(--o===-1){n=r}}else{o=-1;n=c}}}}if(i===n){n=c}else if(n===-1){n=t.length}return t.slice(i,n)}for(r=t.length-1;r>=0;--r){if(t.charCodeAt(r)===A_){if(!s){i=r+1;break}}else if(n===-1){s=false;n=r+1}}if(n===-1){return""}return t.slice(i,n)},extname(t){F_(t,"path");let e=-1;let i=0;let n=-1;let s=true;let r=0;for(let o=t.length-1;o>=0;--o){const c=t.charCodeAt(o);if(c===A_){if(!s){i=o+1;break}continue}if(n===-1){s=false;n=o+1}if(c===D_){if(e===-1){e=o}else if(r!==1){r=1}}else if(e!==-1){r=-1}}if(e===-1||n===-1||r===0||r===1&&e===n-1&&e===i+1){return""}return t.slice(e,n)},format:P_.bind(null,"/"),parse(t){F_(t,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(t.length===0){return e}const i=t.charCodeAt(0)===A_;let n;if(i){e.root="/";n=1}else{n=0}let s=-1;let r=0;let o=-1;let c=true;let h=t.length-1;let l=0;for(;h>=n;--h){const e=t.charCodeAt(h);if(e===A_){if(!c){r=h+1;break}continue}if(o===-1){c=false;o=h+1}if(e===D_){if(s===-1){s=h}else if(l!==1){l=1}}else if(s!==-1){l=-1}}if(o!==-1){const n=r===0&&i?1:r;if(s===-1||l===0||l===1&&s===o-1&&s===r+1){e.base=e.name=t.slice(n,o)}else{e.name=t.slice(n,s);e.base=t.slice(n,o);e.ext=t.slice(s,o)}}if(r>0){e.dir=t.slice(0,r-1)}else if(i){e.dir="/"}return e},sep:"/",delimiter:":",win32:null,posix:null};z_.win32=j_.win32=j_;z_.posix=j_.posix=z_;const H_=T_?j_.normalize:z_.normalize;const W_=T_?j_.resolve:z_.resolve;const V_=T_?j_.relative:z_.relative;const U_=T_?j_.dirname:z_.dirname;const q_=T_?j_.basename:z_.basename;const K_=T_?j_.extname:z_.extname;const G_=T_?j_.sep:z_.sep;const Z_=/^\w[\w\d+.-]*$/;const J_=/^\//;const Q_=/^\/\//;function Y_(t,e){if(!t.scheme&&e){throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${t.authority}", path: "${t.path}", query: "${t.query}", fragment: "${t.fragment}"}`)}if(t.scheme&&!Z_.test(t.scheme)){throw new Error("[UriError]: Scheme contains illegal characters.")}if(t.path){if(t.authority){if(!J_.test(t.path)){throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}}else{if(Q_.test(t.path)){throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}}}function X_(t,e){if(!t&&!e){return"file"}return t}function tO(t,e){switch(t){case"https":case"http":case"file":if(!e){e=iO}else if(e[0]!==iO){e=iO+e}break}return e}const eO="";const iO="/";const nO=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class sO{static isUri(t){if(t instanceof sO){return true}if(!t){return false}return typeof t.authority==="string"&&typeof t.fragment==="string"&&typeof t.path==="string"&&typeof t.query==="string"&&typeof t.scheme==="string"&&typeof t.fsPath==="string"&&typeof t.with==="function"&&typeof t.toString==="function"}constructor(t,e,i,n,s,r=false){if(typeof t==="object"){this.scheme=t.scheme||eO;this.authority=t.authority||eO;this.path=t.path||eO;this.query=t.query||eO;this.fragment=t.fragment||eO}else{this.scheme=X_(t,r);this.authority=e||eO;this.path=tO(this.scheme,i||eO);this.query=n||eO;this.fragment=s||eO;Y_(this,r)}}get fsPath(){return aO(this,false)}with(t){if(!t){return this}let{scheme:e,authority:i,path:n,query:s,fragment:r}=t;if(e===undefined){e=this.scheme}else if(e===null){e=eO}if(i===undefined){i=this.authority}else if(i===null){i=eO}if(n===undefined){n=this.path}else if(n===null){n=eO}if(s===undefined){s=this.query}else if(s===null){s=eO}if(r===undefined){r=this.fragment}else if(r===null){r=eO}if(e===this.scheme&&i===this.authority&&n===this.path&&s===this.query&&r===this.fragment){return this}return new oO(e,i,n,s,r)}static parse(t,e=false){const i=nO.exec(t);if(!i){return new oO(eO,eO,eO,eO,eO)}return new oO(i[2]||eO,gO(i[4]||eO),gO(i[5]||eO),gO(i[7]||eO),gO(i[9]||eO),e)}static file(t){let e=eO;if(uA){t=t.replace(/\\/g,iO)}if(t[0]===iO&&t[1]===iO){const i=t.indexOf(iO,2);if(i===-1){e=t.substring(2);t=iO}else{e=t.substring(2,i);t=t.substring(i)||iO}}return new oO("file",e,t,eO,eO)}static from(t){const e=new oO(t.scheme,t.authority,t.path,t.query,t.fragment);Y_(e,true);return e}static joinPath(t,...e){if(!t.path){throw new Error(`[UriError]: cannot call joinPath on URI without path`)}let i;if(uA&&t.scheme==="file"){i=sO.file(j_.join(aO(t,true),...e)).path}else{i=z_.join(t.path,...e)}return t.with({path:i})}toString(t=false){return uO(this,t)}toJSON(){return this}static revive(t){if(!t){return t}else if(t instanceof sO){return t}else{const e=new oO(t);e._formatted=t.external;e._fsPath=t._sep===rO?t.fsPath:null;return e}}}const rO=uA?1:undefined;class oO extends sO{constructor(){super(...arguments);this._formatted=null;this._fsPath=null}get fsPath(){if(!this._fsPath){this._fsPath=aO(this,false)}return this._fsPath}toString(t=false){if(!t){if(!this._formatted){this._formatted=uO(this,false)}return this._formatted}else{return uO(this,true)}}toJSON(){const t={$mid:1};if(this._fsPath){t.fsPath=this._fsPath;t._sep=rO}if(this._formatted){t.external=this._formatted}if(this.path){t.path=this.path}if(this.scheme){t.scheme=this.scheme}if(this.authority){t.authority=this.authority}if(this.query){t.query=this.query}if(this.fragment){t.fragment=this.fragment}return t}}const cO={[58]:"%3A",[47]:"%2F",[63]:"%3F",[35]:"%23",[91]:"%5B",[93]:"%5D",[64]:"%40",[33]:"%21",[36]:"%24",[38]:"%26",[39]:"%27",[40]:"%28",[41]:"%29",[42]:"%2A",[43]:"%2B",[44]:"%2C",[59]:"%3B",[61]:"%3D",[32]:"%20"};function hO(t,e,i){let n=undefined;let s=-1;for(let r=0;r=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||o===45||o===46||o===95||o===126||e&&o===47||i&&o===91||i&&o===93||i&&o===58){if(s!==-1){n+=encodeURIComponent(t.substring(s,r));s=-1}if(n!==undefined){n+=t.charAt(r)}}else{if(n===undefined){n=t.substr(0,r)}const e=cO[o];if(e!==undefined){if(s!==-1){n+=encodeURIComponent(t.substring(s,r));s=-1}n+=e}else if(s===-1){s=r}}}if(s!==-1){n+=encodeURIComponent(t.substring(s))}return n!==undefined?n:t}function lO(t){let e=undefined;for(let i=0;i1&&t.scheme==="file"){i=`//${t.authority}${t.path}`}else if(t.path.charCodeAt(0)===47&&(t.path.charCodeAt(1)>=65&&t.path.charCodeAt(1)<=90||t.path.charCodeAt(1)>=97&&t.path.charCodeAt(1)<=122)&&t.path.charCodeAt(2)===58){if(!e){i=t.path[1].toLowerCase()+t.path.substr(2)}else{i=t.path.substr(1)}}else{i=t.path}if(uA){i=i.replace(/\//g,"\\")}return i}function uO(t,e){const i=!e?hO:lO;let n="";let{scheme:s,authority:r,path:o,query:c,fragment:h}=t;if(s){n+=s;n+=":"}if(r||s==="file"){n+=iO;n+=iO}if(r){let t=r.indexOf("@");if(t!==-1){const e=r.substr(0,t);r=r.substr(t+1);t=e.lastIndexOf(":");if(t===-1){n+=i(e,false,false)}else{n+=i(e.substr(0,t),false,false);n+=":";n+=i(e.substr(t+1),false,true)}n+="@"}r=r.toLowerCase();t=r.lastIndexOf(":");if(t===-1){n+=i(r,false,true)}else{n+=i(r.substr(0,t),false,true);n+=r.substr(t)}}if(o){if(o.length>=3&&o.charCodeAt(0)===47&&o.charCodeAt(2)===58){const t=o.charCodeAt(1);if(t>=65&&t<=90){o=`/${String.fromCharCode(t+32)}:${o.substr(3)}`}}else if(o.length>=2&&o.charCodeAt(1)===58){const t=o.charCodeAt(0);if(t>=65&&t<=90){o=`${String.fromCharCode(t+32)}:${o.substr(2)}`}}n+=i(o,true,false)}if(c){n+="?";n+=i(c,false,false)}if(h){n+="#";n+=!e?hO(h,false,false):h}return n}function dO(t){try{return decodeURIComponent(t)}catch(e){if(t.length>3){return t.substr(0,3)+dO(t.substr(3))}else{return t}}}const fO=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function gO(t){if(!t.match(fO)){return t}return t.replace(fO,(t=>dO(t)))}class pO{constructor(t,e){this.lineNumber=t;this.column=e}with(t=this.lineNumber,e=this.column){if(t===this.lineNumber&&e===this.column){return this}else{return new pO(t,e)}}delta(t=0,e=0){return this.with(this.lineNumber+t,this.column+e)}equals(t){return pO.equals(this,t)}static equals(t,e){if(!t&&!e){return true}return!!t&&!!e&&t.lineNumber===e.lineNumber&&t.column===e.column}isBefore(t){return pO.isBefore(this,t)}static isBefore(t,e){if(t.lineNumberi||t===i&&e>n){this.startLineNumber=i;this.startColumn=n;this.endLineNumber=t;this.endColumn=e}else{this.startLineNumber=t;this.startColumn=e;this.endLineNumber=i;this.endColumn=n}}isEmpty(){return mO.isEmpty(this)}static isEmpty(t){return t.startLineNumber===t.endLineNumber&&t.startColumn===t.endColumn}containsPosition(t){return mO.containsPosition(this,t)}static containsPosition(t,e){if(e.lineNumbert.endLineNumber){return false}if(e.lineNumber===t.startLineNumber&&e.columnt.endColumn){return false}return true}static strictContainsPosition(t,e){if(e.lineNumbert.endLineNumber){return false}if(e.lineNumber===t.startLineNumber&&e.column<=t.startColumn){return false}if(e.lineNumber===t.endLineNumber&&e.column>=t.endColumn){return false}return true}containsRange(t){return mO.containsRange(this,t)}static containsRange(t,e){if(e.startLineNumbert.endLineNumber||e.endLineNumber>t.endLineNumber){return false}if(e.startLineNumber===t.startLineNumber&&e.startColumnt.endColumn){return false}return true}strictContainsRange(t){return mO.strictContainsRange(this,t)}static strictContainsRange(t,e){if(e.startLineNumbert.endLineNumber||e.endLineNumber>t.endLineNumber){return false}if(e.startLineNumber===t.startLineNumber&&e.startColumn<=t.startColumn){return false}if(e.endLineNumber===t.endLineNumber&&e.endColumn>=t.endColumn){return false}return true}plusRange(t){return mO.plusRange(this,t)}static plusRange(t,e){let i;let n;let s;let r;if(e.startLineNumbert.endLineNumber){s=e.endLineNumber;r=e.endColumn}else if(e.endLineNumber===t.endLineNumber){s=e.endLineNumber;r=Math.max(e.endColumn,t.endColumn)}else{s=t.endLineNumber;r=t.endColumn}return new mO(i,n,s,r)}intersectRanges(t){return mO.intersectRanges(this,t)}static intersectRanges(t,e){let i=t.startLineNumber;let n=t.startColumn;let s=t.endLineNumber;let r=t.endColumn;const o=e.startLineNumber;const c=e.startColumn;const h=e.endLineNumber;const l=e.endColumn;if(ih){s=h;r=l}else if(s===h){r=Math.min(r,l)}if(i>s){return null}if(i===s&&n>r){return null}return new mO(i,n,s,r)}equalsRange(t){return mO.equalsRange(this,t)}static equalsRange(t,e){if(!t&&!e){return true}return!!t&&!!e&&t.startLineNumber===e.startLineNumber&&t.startColumn===e.startColumn&&t.endLineNumber===e.endLineNumber&&t.endColumn===e.endColumn}getEndPosition(){return mO.getEndPosition(this)}static getEndPosition(t){return new pO(t.endLineNumber,t.endColumn)}getStartPosition(){return mO.getStartPosition(this)}static getStartPosition(t){return new pO(t.startLineNumber,t.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(t,e){return new mO(this.startLineNumber,this.startColumn,t,e)}setStartPosition(t,e){return new mO(t,e,this.endLineNumber,this.endColumn)}collapseToStart(){return mO.collapseToStart(this)}static collapseToStart(t){return new mO(t.startLineNumber,t.startColumn,t.startLineNumber,t.startColumn)}collapseToEnd(){return mO.collapseToEnd(this)}static collapseToEnd(t){return new mO(t.endLineNumber,t.endColumn,t.endLineNumber,t.endColumn)}delta(t){return new mO(this.startLineNumber+t,this.startColumn,this.endLineNumber+t,this.endColumn)}static fromPositions(t,e=t){return new mO(t.lineNumber,t.column,e.lineNumber,e.column)}static lift(t){if(!t){return null}return new mO(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn)}static isIRange(t){return t&&typeof t.startLineNumber==="number"&&typeof t.startColumn==="number"&&typeof t.endLineNumber==="number"&&typeof t.endColumn==="number"}static areIntersectingOrTouching(t,e){if(t.endLineNumbert.startLineNumber}toJSON(){return this}}class wO extends mO{constructor(t,e,i,n){super(t,e,i,n);this.selectionStartLineNumber=t;this.selectionStartColumn=e;this.positionLineNumber=i;this.positionColumn=n}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(t){return wO.selectionsEqual(this,t)}static selectionsEqual(t,e){return t.selectionStartLineNumber===e.selectionStartLineNumber&&t.selectionStartColumn===e.selectionStartColumn&&t.positionLineNumber===e.positionLineNumber&&t.positionColumn===e.positionColumn}getDirection(){if(this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn){return 0}return 1}setEndPosition(t,e){if(this.getDirection()===0){return new wO(this.startLineNumber,this.startColumn,t,e)}return new wO(t,e,this.startLineNumber,this.startColumn)}getPosition(){return new pO(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new pO(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(t,e){if(this.getDirection()===0){return new wO(t,e,this.endLineNumber,this.endColumn)}return new wO(this.endLineNumber,this.endColumn,t,e)}static fromPositions(t,e=t){return new wO(t.lineNumber,t.column,e.lineNumber,e.column)}static fromRange(t,e){if(e===0){return new wO(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn)}else{return new wO(t.endLineNumber,t.endColumn,t.startLineNumber,t.startColumn)}}static liftSelection(t){return new wO(t.selectionStartLineNumber,t.selectionStartColumn,t.positionLineNumber,t.positionColumn)}static selectionsArrEqual(t,e){if(t&&!e||!t&&e){return false}if(!t&&!e){return true}if(t.length!==e.length){return false}for(let i=0,n=t.length;i{if(this._tokenizationSupports.get(t)!==e){return}this._tokenizationSupports.delete(t);this.handleChange([t])}))}get(t){return this._tokenizationSupports.get(t)||null}registerFactory(t,e){var i;(i=this._factories.get(t))===null||i===void 0?void 0:i.dispose();const n=new SO(this,t,e);this._factories.set(t,n);return LL((()=>{const e=this._factories.get(t);if(!e||e!==n){return}this._factories.delete(t);e.dispose()}))}getOrCreate(t){return xO(this,void 0,void 0,(function*(){const e=this.get(t);if(e){return e}const i=this._factories.get(t);if(!i||i.isResolved){return null}yield i.resolve();return this.get(t)}))}isResolved(t){const e=this.get(t);if(e){return true}const i=this._factories.get(t);if(!i||i.isResolved){return true}return false}setColorMap(t){this._colorMap=t;this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:true})}getColorMap(){return this._colorMap}getDefaultBackground(){if(this._colorMap&&this._colorMap.length>2){return this._colorMap[2]}return null}}class SO extends OL{get isResolved(){return this._isResolved}constructor(t,e,i){super();this._registry=t;this._languageId=e;this._factory=i;this._isDisposed=false;this._resolvePromise=null;this._isResolved=false}dispose(){this._isDisposed=true;super.dispose()}resolve(){return xO(this,void 0,void 0,(function*(){if(!this._resolvePromise){this._resolvePromise=this._create()}return this._resolvePromise}))}_create(){return xO(this,void 0,void 0,(function*(){const t=yield this._factory.tokenizationSupport;this._isResolved=true;if(t&&!this._isDisposed){this._register(this._registry.register(this._languageId,t))}}))}}class DO{constructor(t,e,i){this.offset=t;this.type=e;this.language=i;this._tokenBrand=undefined}toString(){return"("+this.offset+", "+this.type+")"}}class AO{constructor(t,e){this.tokens=t;this.endState=e;this._tokenizationResultBrand=undefined}}class EO{constructor(t,e){this.tokens=t;this.endState=e;this._encodedTokenizationResultBrand=undefined}}var MO;(function(t){const e=new Map;e.set(0,kO.symbolMethod);e.set(1,kO.symbolFunction);e.set(2,kO.symbolConstructor);e.set(3,kO.symbolField);e.set(4,kO.symbolVariable);e.set(5,kO.symbolClass);e.set(6,kO.symbolStruct);e.set(7,kO.symbolInterface);e.set(8,kO.symbolModule);e.set(9,kO.symbolProperty);e.set(10,kO.symbolEvent);e.set(11,kO.symbolOperator);e.set(12,kO.symbolUnit);e.set(13,kO.symbolValue);e.set(15,kO.symbolEnum);e.set(14,kO.symbolConstant);e.set(15,kO.symbolEnum);e.set(16,kO.symbolEnumMember);e.set(17,kO.symbolKeyword);e.set(27,kO.symbolSnippet);e.set(18,kO.symbolText);e.set(19,kO.symbolColor);e.set(20,kO.symbolFile);e.set(21,kO.symbolReference);e.set(22,kO.symbolCustomColor);e.set(23,kO.symbolFolder);e.set(24,kO.symbolTypeParameter);e.set(25,kO.account);e.set(26,kO.issues);function i(t){let i=e.get(t);if(!i){console.info("No codicon found for CompletionItemKind "+t);i=kO.symbolProperty}return i}t.toIcon=i;const n=new Map;n.set("method",0);n.set("function",1);n.set("constructor",2);n.set("field",3);n.set("variable",4);n.set("class",5);n.set("struct",6);n.set("interface",7);n.set("module",8);n.set("property",9);n.set("event",10);n.set("operator",11);n.set("unit",12);n.set("value",13);n.set("constant",14);n.set("enum",15);n.set("enum-member",16);n.set("enumMember",16);n.set("keyword",17);n.set("snippet",27);n.set("text",18);n.set("color",19);n.set("file",20);n.set("reference",21);n.set("customcolor",22);n.set("folder",23);n.set("type-parameter",24);n.set("typeParameter",24);n.set("account",25);n.set("issue",26);function s(t,e){let i=n.get(t);if(typeof i==="undefined"&&!e){i=9}return i}t.fromString=s})(MO||(MO={}));var LO;(function(t){t[t["Automatic"]=0]="Automatic";t[t["Explicit"]=1]="Explicit"})(LO||(LO={}));var _O;(function(t){t[t["Invoke"]=1]="Invoke";t[t["TriggerCharacter"]=2]="TriggerCharacter";t[t["ContentChange"]=3]="ContentChange"})(_O||(_O={}));var OO;(function(t){t[t["Text"]=0]="Text";t[t["Read"]=1]="Read";t[t["Write"]=2]="Write"})(OO||(OO={}));function FO(t){return t&&sO.isUri(t.uri)&&mO.isIRange(t.range)&&(mO.isIRange(t.originSelectionRange)||mO.isIRange(t.targetSelectionRange))}var TO;(function(t){const e=new Map;e.set(0,kO.symbolFile);e.set(1,kO.symbolModule);e.set(2,kO.symbolNamespace);e.set(3,kO.symbolPackage);e.set(4,kO.symbolClass);e.set(5,kO.symbolMethod);e.set(6,kO.symbolProperty);e.set(7,kO.symbolField);e.set(8,kO.symbolConstructor);e.set(9,kO.symbolEnum);e.set(10,kO.symbolInterface);e.set(11,kO.symbolFunction);e.set(12,kO.symbolVariable);e.set(13,kO.symbolConstant);e.set(14,kO.symbolString);e.set(15,kO.symbolNumber);e.set(16,kO.symbolBoolean);e.set(17,kO.symbolArray);e.set(18,kO.symbolObject);e.set(19,kO.symbolKey);e.set(20,kO.symbolNull);e.set(21,kO.symbolEnumMember);e.set(22,kO.symbolStruct);e.set(23,kO.symbolEvent);e.set(24,kO.symbolOperator);e.set(25,kO.symbolTypeParameter);function i(t){let i=e.get(t);if(!i){console.info("No codicon found for SymbolKind "+t);i=kO.symbolProperty}return i}t.toIcon=i})(TO||(TO={}));class RO{static fromValue(t){switch(t){case"comment":return RO.Comment;case"imports":return RO.Imports;case"region":return RO.Region}return new RO(t)}constructor(t){this.value=t}}RO.Comment=new RO("comment");RO.Imports=new RO("imports");RO.Region=new RO("region");var IO;(function(t){function e(t){if(!t||typeof t!=="object"){return false}return typeof t.id==="string"&&typeof t.title==="string"}t.is=e})(IO||(IO={}));var NO;(function(t){t[t["Type"]=1]="Type";t[t["Parameter"]=2]="Parameter"})(NO||(NO={}));class BO{constructor(t){this.createSupport=t;this._tokenizationSupport=null}dispose(){if(this._tokenizationSupport){this._tokenizationSupport.then((t=>{if(t){t.dispose()}}))}}get tokenizationSupport(){if(!this._tokenizationSupport){this._tokenizationSupport=this.createSupport()}return this._tokenizationSupport}}const PO=new CO;var jO;(function(t){t[t["Unknown"]=0]="Unknown";t[t["Disabled"]=1]="Disabled";t[t["Enabled"]=2]="Enabled"})(jO||(jO={}));var $O;(function(t){t[t["Invoke"]=1]="Invoke";t[t["Auto"]=2]="Auto"})($O||($O={}));var zO;(function(t){t[t["None"]=0]="None";t[t["KeepWhitespace"]=1]="KeepWhitespace";t[t["InsertAsSnippet"]=4]="InsertAsSnippet"})(zO||(zO={}));var HO;(function(t){t[t["Method"]=0]="Method";t[t["Function"]=1]="Function";t[t["Constructor"]=2]="Constructor";t[t["Field"]=3]="Field";t[t["Variable"]=4]="Variable";t[t["Class"]=5]="Class";t[t["Struct"]=6]="Struct";t[t["Interface"]=7]="Interface";t[t["Module"]=8]="Module";t[t["Property"]=9]="Property";t[t["Event"]=10]="Event";t[t["Operator"]=11]="Operator";t[t["Unit"]=12]="Unit";t[t["Value"]=13]="Value";t[t["Constant"]=14]="Constant";t[t["Enum"]=15]="Enum";t[t["EnumMember"]=16]="EnumMember";t[t["Keyword"]=17]="Keyword";t[t["Text"]=18]="Text";t[t["Color"]=19]="Color";t[t["File"]=20]="File";t[t["Reference"]=21]="Reference";t[t["Customcolor"]=22]="Customcolor";t[t["Folder"]=23]="Folder";t[t["TypeParameter"]=24]="TypeParameter";t[t["User"]=25]="User";t[t["Issue"]=26]="Issue";t[t["Snippet"]=27]="Snippet"})(HO||(HO={}));var WO;(function(t){t[t["Deprecated"]=1]="Deprecated"})(WO||(WO={}));var VO;(function(t){t[t["Invoke"]=0]="Invoke";t[t["TriggerCharacter"]=1]="TriggerCharacter";t[t["TriggerForIncompleteCompletions"]=2]="TriggerForIncompleteCompletions"})(VO||(VO={}));var UO;(function(t){t[t["EXACT"]=0]="EXACT";t[t["ABOVE"]=1]="ABOVE";t[t["BELOW"]=2]="BELOW"})(UO||(UO={}));var qO;(function(t){t[t["NotSet"]=0]="NotSet";t[t["ContentFlush"]=1]="ContentFlush";t[t["RecoverFromMarkers"]=2]="RecoverFromMarkers";t[t["Explicit"]=3]="Explicit";t[t["Paste"]=4]="Paste";t[t["Undo"]=5]="Undo";t[t["Redo"]=6]="Redo"})(qO||(qO={}));var KO;(function(t){t[t["LF"]=1]="LF";t[t["CRLF"]=2]="CRLF"})(KO||(KO={}));var GO;(function(t){t[t["Text"]=0]="Text";t[t["Read"]=1]="Read";t[t["Write"]=2]="Write"})(GO||(GO={}));var ZO;(function(t){t[t["None"]=0]="None";t[t["Keep"]=1]="Keep";t[t["Brackets"]=2]="Brackets";t[t["Advanced"]=3]="Advanced";t[t["Full"]=4]="Full"})(ZO||(ZO={}));var JO;(function(t){t[t["acceptSuggestionOnCommitCharacter"]=0]="acceptSuggestionOnCommitCharacter";t[t["acceptSuggestionOnEnter"]=1]="acceptSuggestionOnEnter";t[t["accessibilitySupport"]=2]="accessibilitySupport";t[t["accessibilityPageSize"]=3]="accessibilityPageSize";t[t["ariaLabel"]=4]="ariaLabel";t[t["autoClosingBrackets"]=5]="autoClosingBrackets";t[t["screenReaderAnnounceInlineSuggestion"]=6]="screenReaderAnnounceInlineSuggestion";t[t["autoClosingDelete"]=7]="autoClosingDelete";t[t["autoClosingOvertype"]=8]="autoClosingOvertype";t[t["autoClosingQuotes"]=9]="autoClosingQuotes";t[t["autoIndent"]=10]="autoIndent";t[t["automaticLayout"]=11]="automaticLayout";t[t["autoSurround"]=12]="autoSurround";t[t["bracketPairColorization"]=13]="bracketPairColorization";t[t["guides"]=14]="guides";t[t["codeLens"]=15]="codeLens";t[t["codeLensFontFamily"]=16]="codeLensFontFamily";t[t["codeLensFontSize"]=17]="codeLensFontSize";t[t["colorDecorators"]=18]="colorDecorators";t[t["colorDecoratorsLimit"]=19]="colorDecoratorsLimit";t[t["columnSelection"]=20]="columnSelection";t[t["comments"]=21]="comments";t[t["contextmenu"]=22]="contextmenu";t[t["copyWithSyntaxHighlighting"]=23]="copyWithSyntaxHighlighting";t[t["cursorBlinking"]=24]="cursorBlinking";t[t["cursorSmoothCaretAnimation"]=25]="cursorSmoothCaretAnimation";t[t["cursorStyle"]=26]="cursorStyle";t[t["cursorSurroundingLines"]=27]="cursorSurroundingLines";t[t["cursorSurroundingLinesStyle"]=28]="cursorSurroundingLinesStyle";t[t["cursorWidth"]=29]="cursorWidth";t[t["disableLayerHinting"]=30]="disableLayerHinting";t[t["disableMonospaceOptimizations"]=31]="disableMonospaceOptimizations";t[t["domReadOnly"]=32]="domReadOnly";t[t["dragAndDrop"]=33]="dragAndDrop";t[t["dropIntoEditor"]=34]="dropIntoEditor";t[t["emptySelectionClipboard"]=35]="emptySelectionClipboard";t[t["experimentalWhitespaceRendering"]=36]="experimentalWhitespaceRendering";t[t["extraEditorClassName"]=37]="extraEditorClassName";t[t["fastScrollSensitivity"]=38]="fastScrollSensitivity";t[t["find"]=39]="find";t[t["fixedOverflowWidgets"]=40]="fixedOverflowWidgets";t[t["folding"]=41]="folding";t[t["foldingStrategy"]=42]="foldingStrategy";t[t["foldingHighlight"]=43]="foldingHighlight";t[t["foldingImportsByDefault"]=44]="foldingImportsByDefault";t[t["foldingMaximumRegions"]=45]="foldingMaximumRegions";t[t["unfoldOnClickAfterEndOfLine"]=46]="unfoldOnClickAfterEndOfLine";t[t["fontFamily"]=47]="fontFamily";t[t["fontInfo"]=48]="fontInfo";t[t["fontLigatures"]=49]="fontLigatures";t[t["fontSize"]=50]="fontSize";t[t["fontWeight"]=51]="fontWeight";t[t["fontVariations"]=52]="fontVariations";t[t["formatOnPaste"]=53]="formatOnPaste";t[t["formatOnType"]=54]="formatOnType";t[t["glyphMargin"]=55]="glyphMargin";t[t["gotoLocation"]=56]="gotoLocation";t[t["hideCursorInOverviewRuler"]=57]="hideCursorInOverviewRuler";t[t["hover"]=58]="hover";t[t["inDiffEditor"]=59]="inDiffEditor";t[t["inlineSuggest"]=60]="inlineSuggest";t[t["letterSpacing"]=61]="letterSpacing";t[t["lightbulb"]=62]="lightbulb";t[t["lineDecorationsWidth"]=63]="lineDecorationsWidth";t[t["lineHeight"]=64]="lineHeight";t[t["lineNumbers"]=65]="lineNumbers";t[t["lineNumbersMinChars"]=66]="lineNumbersMinChars";t[t["linkedEditing"]=67]="linkedEditing";t[t["links"]=68]="links";t[t["matchBrackets"]=69]="matchBrackets";t[t["minimap"]=70]="minimap";t[t["mouseStyle"]=71]="mouseStyle";t[t["mouseWheelScrollSensitivity"]=72]="mouseWheelScrollSensitivity";t[t["mouseWheelZoom"]=73]="mouseWheelZoom";t[t["multiCursorMergeOverlapping"]=74]="multiCursorMergeOverlapping";t[t["multiCursorModifier"]=75]="multiCursorModifier";t[t["multiCursorPaste"]=76]="multiCursorPaste";t[t["multiCursorLimit"]=77]="multiCursorLimit";t[t["occurrencesHighlight"]=78]="occurrencesHighlight";t[t["overviewRulerBorder"]=79]="overviewRulerBorder";t[t["overviewRulerLanes"]=80]="overviewRulerLanes";t[t["padding"]=81]="padding";t[t["parameterHints"]=82]="parameterHints";t[t["peekWidgetDefaultFocus"]=83]="peekWidgetDefaultFocus";t[t["definitionLinkOpensInPeek"]=84]="definitionLinkOpensInPeek";t[t["quickSuggestions"]=85]="quickSuggestions";t[t["quickSuggestionsDelay"]=86]="quickSuggestionsDelay";t[t["readOnly"]=87]="readOnly";t[t["renameOnType"]=88]="renameOnType";t[t["renderControlCharacters"]=89]="renderControlCharacters";t[t["renderFinalNewline"]=90]="renderFinalNewline";t[t["renderLineHighlight"]=91]="renderLineHighlight";t[t["renderLineHighlightOnlyWhenFocus"]=92]="renderLineHighlightOnlyWhenFocus";t[t["renderValidationDecorations"]=93]="renderValidationDecorations";t[t["renderWhitespace"]=94]="renderWhitespace";t[t["revealHorizontalRightPadding"]=95]="revealHorizontalRightPadding";t[t["roundedSelection"]=96]="roundedSelection";t[t["rulers"]=97]="rulers";t[t["scrollbar"]=98]="scrollbar";t[t["scrollBeyondLastColumn"]=99]="scrollBeyondLastColumn";t[t["scrollBeyondLastLine"]=100]="scrollBeyondLastLine";t[t["scrollPredominantAxis"]=101]="scrollPredominantAxis";t[t["selectionClipboard"]=102]="selectionClipboard";t[t["selectionHighlight"]=103]="selectionHighlight";t[t["selectOnLineNumbers"]=104]="selectOnLineNumbers";t[t["showFoldingControls"]=105]="showFoldingControls";t[t["showUnused"]=106]="showUnused";t[t["snippetSuggestions"]=107]="snippetSuggestions";t[t["smartSelect"]=108]="smartSelect";t[t["smoothScrolling"]=109]="smoothScrolling";t[t["stickyScroll"]=110]="stickyScroll";t[t["stickyTabStops"]=111]="stickyTabStops";t[t["stopRenderingLineAfter"]=112]="stopRenderingLineAfter";t[t["suggest"]=113]="suggest";t[t["suggestFontSize"]=114]="suggestFontSize";t[t["suggestLineHeight"]=115]="suggestLineHeight";t[t["suggestOnTriggerCharacters"]=116]="suggestOnTriggerCharacters";t[t["suggestSelection"]=117]="suggestSelection";t[t["tabCompletion"]=118]="tabCompletion";t[t["tabIndex"]=119]="tabIndex";t[t["unicodeHighlighting"]=120]="unicodeHighlighting";t[t["unusualLineTerminators"]=121]="unusualLineTerminators";t[t["useShadowDOM"]=122]="useShadowDOM";t[t["useTabStops"]=123]="useTabStops";t[t["wordBreak"]=124]="wordBreak";t[t["wordSeparators"]=125]="wordSeparators";t[t["wordWrap"]=126]="wordWrap";t[t["wordWrapBreakAfterCharacters"]=127]="wordWrapBreakAfterCharacters";t[t["wordWrapBreakBeforeCharacters"]=128]="wordWrapBreakBeforeCharacters";t[t["wordWrapColumn"]=129]="wordWrapColumn";t[t["wordWrapOverride1"]=130]="wordWrapOverride1";t[t["wordWrapOverride2"]=131]="wordWrapOverride2";t[t["wrappingIndent"]=132]="wrappingIndent";t[t["wrappingStrategy"]=133]="wrappingStrategy";t[t["showDeprecated"]=134]="showDeprecated";t[t["inlayHints"]=135]="inlayHints";t[t["editorClassName"]=136]="editorClassName";t[t["pixelRatio"]=137]="pixelRatio";t[t["tabFocusMode"]=138]="tabFocusMode";t[t["layoutInfo"]=139]="layoutInfo";t[t["wrappingInfo"]=140]="wrappingInfo"})(JO||(JO={}));var QO;(function(t){t[t["TextDefined"]=0]="TextDefined";t[t["LF"]=1]="LF";t[t["CRLF"]=2]="CRLF"})(QO||(QO={}));var YO;(function(t){t[t["LF"]=0]="LF";t[t["CRLF"]=1]="CRLF"})(YO||(YO={}));var XO;(function(t){t[t["None"]=0]="None";t[t["Indent"]=1]="Indent";t[t["IndentOutdent"]=2]="IndentOutdent";t[t["Outdent"]=3]="Outdent"})(XO||(XO={}));var tF;(function(t){t[t["Both"]=0]="Both";t[t["Right"]=1]="Right";t[t["Left"]=2]="Left";t[t["None"]=3]="None"})(tF||(tF={}));var eF;(function(t){t[t["Type"]=1]="Type";t[t["Parameter"]=2]="Parameter"})(eF||(eF={}));var iF;(function(t){t[t["Automatic"]=0]="Automatic";t[t["Explicit"]=1]="Explicit"})(iF||(iF={}));var nF;(function(t){t[t["DependsOnKbLayout"]=-1]="DependsOnKbLayout";t[t["Unknown"]=0]="Unknown";t[t["Backspace"]=1]="Backspace";t[t["Tab"]=2]="Tab";t[t["Enter"]=3]="Enter";t[t["Shift"]=4]="Shift";t[t["Ctrl"]=5]="Ctrl";t[t["Alt"]=6]="Alt";t[t["PauseBreak"]=7]="PauseBreak";t[t["CapsLock"]=8]="CapsLock";t[t["Escape"]=9]="Escape";t[t["Space"]=10]="Space";t[t["PageUp"]=11]="PageUp";t[t["PageDown"]=12]="PageDown";t[t["End"]=13]="End";t[t["Home"]=14]="Home";t[t["LeftArrow"]=15]="LeftArrow";t[t["UpArrow"]=16]="UpArrow";t[t["RightArrow"]=17]="RightArrow";t[t["DownArrow"]=18]="DownArrow";t[t["Insert"]=19]="Insert";t[t["Delete"]=20]="Delete";t[t["Digit0"]=21]="Digit0";t[t["Digit1"]=22]="Digit1";t[t["Digit2"]=23]="Digit2";t[t["Digit3"]=24]="Digit3";t[t["Digit4"]=25]="Digit4";t[t["Digit5"]=26]="Digit5";t[t["Digit6"]=27]="Digit6";t[t["Digit7"]=28]="Digit7";t[t["Digit8"]=29]="Digit8";t[t["Digit9"]=30]="Digit9";t[t["KeyA"]=31]="KeyA";t[t["KeyB"]=32]="KeyB";t[t["KeyC"]=33]="KeyC";t[t["KeyD"]=34]="KeyD";t[t["KeyE"]=35]="KeyE";t[t["KeyF"]=36]="KeyF";t[t["KeyG"]=37]="KeyG";t[t["KeyH"]=38]="KeyH";t[t["KeyI"]=39]="KeyI";t[t["KeyJ"]=40]="KeyJ";t[t["KeyK"]=41]="KeyK";t[t["KeyL"]=42]="KeyL";t[t["KeyM"]=43]="KeyM";t[t["KeyN"]=44]="KeyN";t[t["KeyO"]=45]="KeyO";t[t["KeyP"]=46]="KeyP";t[t["KeyQ"]=47]="KeyQ";t[t["KeyR"]=48]="KeyR";t[t["KeyS"]=49]="KeyS";t[t["KeyT"]=50]="KeyT";t[t["KeyU"]=51]="KeyU";t[t["KeyV"]=52]="KeyV";t[t["KeyW"]=53]="KeyW";t[t["KeyX"]=54]="KeyX";t[t["KeyY"]=55]="KeyY";t[t["KeyZ"]=56]="KeyZ";t[t["Meta"]=57]="Meta";t[t["ContextMenu"]=58]="ContextMenu";t[t["F1"]=59]="F1";t[t["F2"]=60]="F2";t[t["F3"]=61]="F3";t[t["F4"]=62]="F4";t[t["F5"]=63]="F5";t[t["F6"]=64]="F6";t[t["F7"]=65]="F7";t[t["F8"]=66]="F8";t[t["F9"]=67]="F9";t[t["F10"]=68]="F10";t[t["F11"]=69]="F11";t[t["F12"]=70]="F12";t[t["F13"]=71]="F13";t[t["F14"]=72]="F14";t[t["F15"]=73]="F15";t[t["F16"]=74]="F16";t[t["F17"]=75]="F17";t[t["F18"]=76]="F18";t[t["F19"]=77]="F19";t[t["NumLock"]=78]="NumLock";t[t["ScrollLock"]=79]="ScrollLock";t[t["Semicolon"]=80]="Semicolon";t[t["Equal"]=81]="Equal";t[t["Comma"]=82]="Comma";t[t["Minus"]=83]="Minus";t[t["Period"]=84]="Period";t[t["Slash"]=85]="Slash";t[t["Backquote"]=86]="Backquote";t[t["BracketLeft"]=87]="BracketLeft";t[t["Backslash"]=88]="Backslash";t[t["BracketRight"]=89]="BracketRight";t[t["Quote"]=90]="Quote";t[t["OEM_8"]=91]="OEM_8";t[t["IntlBackslash"]=92]="IntlBackslash";t[t["Numpad0"]=93]="Numpad0";t[t["Numpad1"]=94]="Numpad1";t[t["Numpad2"]=95]="Numpad2";t[t["Numpad3"]=96]="Numpad3";t[t["Numpad4"]=97]="Numpad4";t[t["Numpad5"]=98]="Numpad5";t[t["Numpad6"]=99]="Numpad6";t[t["Numpad7"]=100]="Numpad7";t[t["Numpad8"]=101]="Numpad8";t[t["Numpad9"]=102]="Numpad9";t[t["NumpadMultiply"]=103]="NumpadMultiply";t[t["NumpadAdd"]=104]="NumpadAdd";t[t["NUMPAD_SEPARATOR"]=105]="NUMPAD_SEPARATOR";t[t["NumpadSubtract"]=106]="NumpadSubtract";t[t["NumpadDecimal"]=107]="NumpadDecimal";t[t["NumpadDivide"]=108]="NumpadDivide";t[t["KEY_IN_COMPOSITION"]=109]="KEY_IN_COMPOSITION";t[t["ABNT_C1"]=110]="ABNT_C1";t[t["ABNT_C2"]=111]="ABNT_C2";t[t["AudioVolumeMute"]=112]="AudioVolumeMute";t[t["AudioVolumeUp"]=113]="AudioVolumeUp";t[t["AudioVolumeDown"]=114]="AudioVolumeDown";t[t["BrowserSearch"]=115]="BrowserSearch";t[t["BrowserHome"]=116]="BrowserHome";t[t["BrowserBack"]=117]="BrowserBack";t[t["BrowserForward"]=118]="BrowserForward";t[t["MediaTrackNext"]=119]="MediaTrackNext";t[t["MediaTrackPrevious"]=120]="MediaTrackPrevious";t[t["MediaStop"]=121]="MediaStop";t[t["MediaPlayPause"]=122]="MediaPlayPause";t[t["LaunchMediaPlayer"]=123]="LaunchMediaPlayer";t[t["LaunchMail"]=124]="LaunchMail";t[t["LaunchApp2"]=125]="LaunchApp2";t[t["Clear"]=126]="Clear";t[t["MAX_VALUE"]=127]="MAX_VALUE"})(nF||(nF={}));var sF;(function(t){t[t["Hint"]=1]="Hint";t[t["Info"]=2]="Info";t[t["Warning"]=4]="Warning";t[t["Error"]=8]="Error"})(sF||(sF={}));var rF;(function(t){t[t["Unnecessary"]=1]="Unnecessary";t[t["Deprecated"]=2]="Deprecated"})(rF||(rF={}));var oF;(function(t){t[t["Inline"]=1]="Inline";t[t["Gutter"]=2]="Gutter"})(oF||(oF={}));var cF;(function(t){t[t["UNKNOWN"]=0]="UNKNOWN";t[t["TEXTAREA"]=1]="TEXTAREA";t[t["GUTTER_GLYPH_MARGIN"]=2]="GUTTER_GLYPH_MARGIN";t[t["GUTTER_LINE_NUMBERS"]=3]="GUTTER_LINE_NUMBERS";t[t["GUTTER_LINE_DECORATIONS"]=4]="GUTTER_LINE_DECORATIONS";t[t["GUTTER_VIEW_ZONE"]=5]="GUTTER_VIEW_ZONE";t[t["CONTENT_TEXT"]=6]="CONTENT_TEXT";t[t["CONTENT_EMPTY"]=7]="CONTENT_EMPTY";t[t["CONTENT_VIEW_ZONE"]=8]="CONTENT_VIEW_ZONE";t[t["CONTENT_WIDGET"]=9]="CONTENT_WIDGET";t[t["OVERVIEW_RULER"]=10]="OVERVIEW_RULER";t[t["SCROLLBAR"]=11]="SCROLLBAR";t[t["OVERLAY_WIDGET"]=12]="OVERLAY_WIDGET";t[t["OUTSIDE_EDITOR"]=13]="OUTSIDE_EDITOR"})(cF||(cF={}));var hF;(function(t){t[t["TOP_RIGHT_CORNER"]=0]="TOP_RIGHT_CORNER";t[t["BOTTOM_RIGHT_CORNER"]=1]="BOTTOM_RIGHT_CORNER";t[t["TOP_CENTER"]=2]="TOP_CENTER"})(hF||(hF={}));var lF;(function(t){t[t["Left"]=1]="Left";t[t["Center"]=2]="Center";t[t["Right"]=4]="Right";t[t["Full"]=7]="Full"})(lF||(lF={}));var aF;(function(t){t[t["Left"]=0]="Left";t[t["Right"]=1]="Right";t[t["None"]=2]="None";t[t["LeftOfInjectedText"]=3]="LeftOfInjectedText";t[t["RightOfInjectedText"]=4]="RightOfInjectedText"})(aF||(aF={}));var uF;(function(t){t[t["Off"]=0]="Off";t[t["On"]=1]="On";t[t["Relative"]=2]="Relative";t[t["Interval"]=3]="Interval";t[t["Custom"]=4]="Custom"})(uF||(uF={}));var dF;(function(t){t[t["None"]=0]="None";t[t["Text"]=1]="Text";t[t["Blocks"]=2]="Blocks"})(dF||(dF={}));var fF;(function(t){t[t["Smooth"]=0]="Smooth";t[t["Immediate"]=1]="Immediate"})(fF||(fF={}));var gF;(function(t){t[t["Auto"]=1]="Auto";t[t["Hidden"]=2]="Hidden";t[t["Visible"]=3]="Visible"})(gF||(gF={}));var pF;(function(t){t[t["LTR"]=0]="LTR";t[t["RTL"]=1]="RTL"})(pF||(pF={}));var mF;(function(t){t[t["Invoke"]=1]="Invoke";t[t["TriggerCharacter"]=2]="TriggerCharacter";t[t["ContentChange"]=3]="ContentChange"})(mF||(mF={}));var wF;(function(t){t[t["File"]=0]="File";t[t["Module"]=1]="Module";t[t["Namespace"]=2]="Namespace";t[t["Package"]=3]="Package";t[t["Class"]=4]="Class";t[t["Method"]=5]="Method";t[t["Property"]=6]="Property";t[t["Field"]=7]="Field";t[t["Constructor"]=8]="Constructor";t[t["Enum"]=9]="Enum";t[t["Interface"]=10]="Interface";t[t["Function"]=11]="Function";t[t["Variable"]=12]="Variable";t[t["Constant"]=13]="Constant";t[t["String"]=14]="String";t[t["Number"]=15]="Number";t[t["Boolean"]=16]="Boolean";t[t["Array"]=17]="Array";t[t["Object"]=18]="Object";t[t["Key"]=19]="Key";t[t["Null"]=20]="Null";t[t["EnumMember"]=21]="EnumMember";t[t["Struct"]=22]="Struct";t[t["Event"]=23]="Event";t[t["Operator"]=24]="Operator";t[t["TypeParameter"]=25]="TypeParameter"})(wF||(wF={}));var bF;(function(t){t[t["Deprecated"]=1]="Deprecated"})(bF||(bF={}));var vF;(function(t){t[t["Hidden"]=0]="Hidden";t[t["Blink"]=1]="Blink";t[t["Smooth"]=2]="Smooth";t[t["Phase"]=3]="Phase";t[t["Expand"]=4]="Expand";t[t["Solid"]=5]="Solid"})(vF||(vF={}));var yF;(function(t){t[t["Line"]=1]="Line";t[t["Block"]=2]="Block";t[t["Underline"]=3]="Underline";t[t["LineThin"]=4]="LineThin";t[t["BlockOutline"]=5]="BlockOutline";t[t["UnderlineThin"]=6]="UnderlineThin"})(yF||(yF={}));var kF;(function(t){t[t["AlwaysGrowsWhenTypingAtEdges"]=0]="AlwaysGrowsWhenTypingAtEdges";t[t["NeverGrowsWhenTypingAtEdges"]=1]="NeverGrowsWhenTypingAtEdges";t[t["GrowsOnlyWhenTypingBefore"]=2]="GrowsOnlyWhenTypingBefore";t[t["GrowsOnlyWhenTypingAfter"]=3]="GrowsOnlyWhenTypingAfter"})(kF||(kF={}));var xF;(function(t){t[t["None"]=0]="None";t[t["Same"]=1]="Same";t[t["Indent"]=2]="Indent";t[t["DeepIndent"]=3]="DeepIndent"})(xF||(xF={}));class CF{static chord(t,e){return m_(t,e)}}CF.CtrlCmd=2048;CF.Shift=1024;CF.Alt=512;CF.WinCtrl=256;function SF(){return{editor:undefined,languages:undefined,CancellationTokenSource:s_,Emitter:UL,KeyCode:nF,KeyMod:CF,Position:pO,Range:mO,Selection:wO,SelectionDirection:pF,MarkerSeverity:sF,MarkerTag:rF,Uri:sO,Token:DO}}class DF{constructor(t){this.fn=t;this.lastCache=undefined;this.lastArgKey=undefined}get(t){const e=JSON.stringify(t);if(this.lastArgKey!==e){this.lastArgKey=e;this.lastCache=this.fn(t)}return this.lastCache}}class AF{get cachedValues(){return this._map}constructor(t){this.fn=t;this._map=new Map}get(t){if(this._map.has(t)){return this._map.get(t)}const e=this.fn(t);this._map.set(t,e);return e}}class EF{constructor(t){this.executor=t;this._didRun=false}get value(){if(!this._didRun){try{this._value=this.executor()}catch(t){this._error=t}finally{this._didRun=true}}if(this._error){throw this._error}return this._value}get rawValue(){return this._value}}var MF;function LF(t){if(!t||typeof t!=="string"){return true}return t.trim().length===0}const _F=/{(\d+)}/g;function OF(t,...e){if(e.length===0){return t}return t.replace(_F,(function(t,i){const n=parseInt(i,10);return isNaN(n)||n<0||n>=e.length?t:e[n]}))}function FF(t){return t.replace(/[<>&]/g,(function(t){switch(t){case"<":return"<";case">":return">";case"&":return"&";default:return t}}))}function TF(t){return t.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function RF(t,e=" "){const i=IF(t,e);return NF(i,e)}function IF(t,e){if(!t||!e){return t}const i=e.length;if(i===0||t.length===0){return t}let n=0;while(t.indexOf(e,n)===n){n=n+i}return t.substring(n)}function NF(t,e){if(!t||!e){return t}const i=e.length,n=t.length;if(i===0||n===0){return t}let s=n,r=-1;while(true){r=t.lastIndexOf(e,s-1);if(r===-1||r+i!==s){break}if(r===0){return""}s=r}return t.substring(0,s)}function BF(t){return t.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function PF(t){return t.replace(/\*/g,"")}function jF(t,e,i={}){if(!t){throw new Error("Cannot create regex from empty string")}if(!e){t=TF(t)}if(i.wholeWord){if(!/\B/.test(t.charAt(0))){t="\\b"+t}if(!/\B/.test(t.charAt(t.length-1))){t=t+"\\b"}}let n="";if(i.global){n+="g"}if(!i.matchCase){n+="i"}if(i.multiline){n+="m"}if(i.unicode){n+="u"}return new RegExp(t,n)}function $F(t){if(t.source==="^"||t.source==="^$"||t.source==="$"||t.source==="^\\s*$"){return false}const e=t.exec("");return!!(e&&t.lastIndex===0)}function zF(t){return(t.global?"g":"")+(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")}function HF(t){return t.split(/\r\n|\r|\n/)}function WF(t){for(let e=0,i=t.length;e=0;i--){const e=t.charCodeAt(i);if(e!==32&&e!==9){return i}}return-1}function qF(t,e){if(te){return 1}else{return 0}}function KF(t,e,i=0,n=t.length,s=0,r=e.length){for(;ir){return 1}}const o=n-i;const c=r-s;if(oc){return 1}return 0}function GF(t,e){return ZF(t,e,0,t.length,0,e.length)}function ZF(t,e,i=0,n=t.length,s=0,r=e.length){for(;i=128||c>=128){return KF(t.toLowerCase(),e.toLowerCase(),i,n,s,r)}if(QF(o)){o-=32}if(QF(c)){c-=32}const h=o-c;if(h===0){continue}return h}const o=n-i;const c=r-s;if(oc){return 1}return 0}function JF(t){return t>=48&&t<=57}function QF(t){return t>=97&&t<=122}function YF(t){return t>=65&&t<=90}function XF(t,e){return t.length===e.length&&ZF(t,e)===0}function tT(t,e){const i=e.length;if(e.length>t.length){return false}return ZF(t,e,0,i)===0}function eT(t,e){const i=Math.min(t.length,e.length);let n;for(n=0;n1){const n=t.charCodeAt(e-2);if(nT(n)){return rT(n,i)}}return i}class hT{get offset(){return this._offset}constructor(t,e=0){this._str=t;this._len=t.length;this._offset=e}setOffset(t){this._offset=t}prevCodePoint(){const t=cT(this._str,this._offset);this._offset-=t>=65536?2:1;return t}nextCodePoint(){const t=oT(this._str,this._len,this._offset);this._offset+=t>=65536?2:1;return t}eol(){return this._offset>=this._len}}class lT{get offset(){return this._iterator.offset}constructor(t,e=0){this._iterator=new hT(t,e)}nextGraphemeLength(){const t=ET.getInstance();const e=this._iterator;const i=e.offset;let n=t.getGraphemeBreakType(e.nextCodePoint());while(!e.eol()){const i=e.offset;const s=t.getGraphemeBreakType(e.nextCodePoint());if(AT(n,s)){e.setOffset(i);break}n=s}return e.offset-i}prevGraphemeLength(){const t=ET.getInstance();const e=this._iterator;const i=e.offset;let n=t.getGraphemeBreakType(e.prevCodePoint());while(e.offset>0){const i=e.offset;const s=t.getGraphemeBreakType(e.prevCodePoint());if(AT(s,n)){e.setOffset(i);break}n=s}return i-e.offset}eol(){return this._iterator.eol()}}function aT(t,e){const i=new lT(t,e);return i.nextGraphemeLength()}function uT(t,e){const i=new lT(t,e);return i.prevGraphemeLength()}function dT(t,e){if(e>0&&sT(t.charCodeAt(e))){e--}const i=e+aT(t,e);const n=i-uT(t,i);return[n,i]}let fT=undefined;function gT(){return/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/}function pT(t){if(!fT){fT=gT()}return fT.test(t)}const mT=/^[\t\n\r\x20-\x7E]*$/;function wT(t){return mT.test(t)}const bT=/[\u2028\u2029]/;function vT(t){return bT.test(t)}function yT(t){return t>=11904&&t<=55215||t>=63744&&t<=64255||t>=65281&&t<=65374}function kT(t){return t>=127462&&t<=127487||t===8986||t===8987||t===9200||t===9203||t>=9728&&t<=10175||t===11088||t===11093||t>=127744&&t<=128591||t>=128640&&t<=128764||t>=128992&&t<=129008||t>=129280&&t<=129535||t>=129648&&t<=129782}const xT=String.fromCharCode(65279);function CT(t){return!!(t&&t.length>0&&t.charCodeAt(0)===65279)}function ST(t,e=false){if(!t){return false}if(e){t=t.replace(/\\./g,"")}return t.toLowerCase()!==t}function DT(t){const e=90-65+1;t=t%(2*e);if(te[3*n+1]){n=2*n+1}else{return e[3*n+2]}}return 0}}ET._INSTANCE=null;function MT(){return JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}function LT(t,e){if(t===0){return 0}const i=_T(t,e);if(i!==undefined){return i}const n=new hT(e,t);n.prevCodePoint();return n.offset}function _T(t,e){const i=new hT(e,t);let n=i.prevCodePoint();while(OT(n)||n===65039||n===8419){if(i.offset===0){return undefined}n=i.prevCodePoint()}if(!kT(n)){return undefined}let s=i.offset;if(s>0){const t=i.prevCodePoint();if(t===8205){s=i.offset}}return s}function OT(t){return 127995<=t&&t<=127999}const FT=" ";class TT{static getInstance(t){return TT.cache.get(Array.from(t))}static getLocales(){return TT._locales.value}constructor(t){this.confusableDictionary=t}isAmbiguous(t){return this.confusableDictionary.has(t)}getPrimaryConfusable(t){return this.confusableDictionary.get(t)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}}MF=TT;TT.ambiguousCharacterData=new EF((()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,8218,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,8242,96,1370,96,1523,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71922,67,71913,67,65315,67,8557,67,8450,67,8493,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71919,87,71910,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,66293,90,71909,90,65338,90,8484,90,8488,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65292,44,65307,59],"ko":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65307,59]}')));TT.cache=new DF((t=>{function e(t){const e=new Map;for(let i=0;i!t.startsWith("_")&&t in s));if(r.length===0){r=["_default"]}let o=undefined;for(const t of r){const i=e(s[t]);o=n(o,i)}const c=e(s["_common"]);const h=i(c,o);return new TT(h)}));TT._locales=new EF((()=>Object.keys(TT.ambiguousCharacterData.value).filter((t=>!t.startsWith("_")))));class RT{static getRawData(){return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12288,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999]")}static getData(){if(!this._data){this._data=new Set(RT.getRawData())}return this._data}static isInvisibleCharacter(t){return RT.getData().has(t)}static get codePoints(){return RT.getData()}}RT._data=undefined;class IT{constructor(){this._zoomFactor=1}getZoomFactor(){return this._zoomFactor}}IT.INSTANCE=new IT;class NT extends OL{constructor(){super();this._onDidChange=this._register(new UL);this.onDidChange=this._onDidChange.event;this._listener=()=>this._handleChange(true);this._mediaQueryList=null;this._handleChange(false)}_handleChange(t){var e;(e=this._mediaQueryList)===null||e===void 0?void 0:e.removeEventListener("change",this._listener);this._mediaQueryList=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`);this._mediaQueryList.addEventListener("change",this._listener);if(t){this._onDidChange.fire()}}}class BT extends OL{get value(){return this._value}constructor(){super();this._onDidChange=this._register(new UL);this.onDidChange=this._onDidChange.event;this._value=this._getPixelRatio();const t=this._register(new NT);this._register(t.onDidChange((()=>{this._value=this._getPixelRatio();this._onDidChange.fire(this._value)})))}_getPixelRatio(){const t=document.createElement("canvas").getContext("2d");const e=window.devicePixelRatio||1;const i=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return e/i}}class PT{constructor(){this._pixelRatioMonitor=null}_getOrCreatePixelRatioMonitor(){if(!this._pixelRatioMonitor){this._pixelRatioMonitor=DL(new BT)}return this._pixelRatioMonitor}get value(){return this._getOrCreatePixelRatioMonitor().value}get onDidChange(){return this._getOrCreatePixelRatioMonitor().onDidChange}}function jT(t,e){if(typeof t==="string"){t=window.matchMedia(t)}t.addEventListener("change",e)}const $T=new PT;function zT(){return IT.INSTANCE.getZoomFactor()}const HT=navigator.userAgent;const WT=HT.indexOf("Firefox")>=0;const VT=HT.indexOf("AppleWebKit")>=0;const UT=HT.indexOf("Chrome")>=0;const qT=!UT&&HT.indexOf("Safari")>=0;const KT=!UT&&!qT&&VT;const GT=HT.indexOf("Electron/")>=0;const ZT=HT.indexOf("Android")>=0;let JT=false;if(window.matchMedia){const t=window.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)");const e=window.matchMedia("(display-mode: fullscreen)");JT=t.matches;jT(t,(({matches:t})=>{if(JT&&e.matches){return}JT=t}))}function QT(){return JT}const YT=Object.freeze({__proto__:null,addMatchMediaChangeListener:jT,PixelRatio:$T,getZoomFactor:zT,isFirefox:WT,isWebKit:VT,isChrome:UT,isSafari:qT,isWebkitWebView:KT,isElectron:GT,isAndroid:ZT,isStandalone:QT});class XT{constructor(t){this.domNode=t;this._maxWidth="";this._width="";this._height="";this._top="";this._left="";this._bottom="";this._right="";this._paddingLeft="";this._fontFamily="";this._fontWeight="";this._fontSize="";this._fontStyle="";this._fontFeatureSettings="";this._fontVariationSettings="";this._textDecoration="";this._lineHeight="";this._letterSpacing="";this._className="";this._display="";this._position="";this._visibility="";this._color="";this._backgroundColor="";this._layerHint=false;this._contain="none";this._boxShadow=""}setMaxWidth(t){const e=tR(t);if(this._maxWidth===e){return}this._maxWidth=e;this.domNode.style.maxWidth=this._maxWidth}setWidth(t){const e=tR(t);if(this._width===e){return}this._width=e;this.domNode.style.width=this._width}setHeight(t){const e=tR(t);if(this._height===e){return}this._height=e;this.domNode.style.height=this._height}setTop(t){const e=tR(t);if(this._top===e){return}this._top=e;this.domNode.style.top=this._top}setLeft(t){const e=tR(t);if(this._left===e){return}this._left=e;this.domNode.style.left=this._left}setBottom(t){const e=tR(t);if(this._bottom===e){return}this._bottom=e;this.domNode.style.bottom=this._bottom}setRight(t){const e=tR(t);if(this._right===e){return}this._right=e;this.domNode.style.right=this._right}setPaddingLeft(t){const e=tR(t);if(this._paddingLeft===e){return}this._paddingLeft=e;this.domNode.style.paddingLeft=this._paddingLeft}setFontFamily(t){if(this._fontFamily===t){return}this._fontFamily=t;this.domNode.style.fontFamily=this._fontFamily}setFontWeight(t){if(this._fontWeight===t){return}this._fontWeight=t;this.domNode.style.fontWeight=this._fontWeight}setFontSize(t){const e=tR(t);if(this._fontSize===e){return}this._fontSize=e;this.domNode.style.fontSize=this._fontSize}setFontStyle(t){if(this._fontStyle===t){return}this._fontStyle=t;this.domNode.style.fontStyle=this._fontStyle}setFontFeatureSettings(t){if(this._fontFeatureSettings===t){return}this._fontFeatureSettings=t;this.domNode.style.fontFeatureSettings=this._fontFeatureSettings}setFontVariationSettings(t){if(this._fontVariationSettings===t){return}this._fontVariationSettings=t;this.domNode.style.fontVariationSettings=this._fontVariationSettings}setTextDecoration(t){if(this._textDecoration===t){return}this._textDecoration=t;this.domNode.style.textDecoration=this._textDecoration}setLineHeight(t){const e=tR(t);if(this._lineHeight===e){return}this._lineHeight=e;this.domNode.style.lineHeight=this._lineHeight}setLetterSpacing(t){const e=tR(t);if(this._letterSpacing===e){return}this._letterSpacing=e;this.domNode.style.letterSpacing=this._letterSpacing}setClassName(t){if(this._className===t){return}this._className=t;this.domNode.className=this._className}toggleClassName(t,e){this.domNode.classList.toggle(t,e);this._className=this.domNode.className}setDisplay(t){if(this._display===t){return}this._display=t;this.domNode.style.display=this._display}setPosition(t){if(this._position===t){return}this._position=t;this.domNode.style.position=this._position}setVisibility(t){if(this._visibility===t){return}this._visibility=t;this.domNode.style.visibility=this._visibility}setColor(t){if(this._color===t){return}this._color=t;this.domNode.style.color=this._color}setBackgroundColor(t){if(this._backgroundColor===t){return}this._backgroundColor=t;this.domNode.style.backgroundColor=this._backgroundColor}setLayerHinting(t){if(this._layerHint===t){return}this._layerHint=t;this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":""}setBoxShadow(t){if(this._boxShadow===t){return}this._boxShadow=t;this.domNode.style.boxShadow=t}setContain(t){if(this._contain===t){return}this._contain=t;this.domNode.style.contain=this._contain}setAttribute(t,e){this.domNode.setAttribute(t,e)}removeAttribute(t){this.domNode.removeAttribute(t)}appendChild(t){this.domNode.appendChild(t.domNode)}removeChild(t){this.domNode.removeChild(t.domNode)}}function tR(t){return typeof t==="number"?`${t}px`:t}function eR(t){return new XT(t)}function iR(t,e){if(t instanceof XT){t.setFontFamily(e.getMassagedFontFamily());t.setFontWeight(e.fontWeight);t.setFontSize(e.fontSize);t.setFontFeatureSettings(e.fontFeatureSettings);t.setFontVariationSettings(e.fontVariationSettings);t.setLineHeight(e.lineHeight);t.setLetterSpacing(e.letterSpacing)}else{t.style.fontFamily=e.getMassagedFontFamily();t.style.fontWeight=e.fontWeight;t.style.fontSize=e.fontSize+"px";t.style.fontFeatureSettings=e.fontFeatureSettings;t.style.fontVariationSettings=e.fontVariationSettings;t.style.lineHeight=e.lineHeight+"px";t.style.letterSpacing=e.letterSpacing+"px"}}class nR{constructor(t,e){this.chr=t;this.type=e;this.width=0}fulfill(t){this.width=t}}class sR{constructor(t,e){this._bareFontInfo=t;this._requests=e;this._container=null;this._testElements=null}read(){this._createDomElements();document.body.appendChild(this._container);this._readFromDomElements();document.body.removeChild(this._container);this._container=null;this._testElements=null}_createDomElements(){const t=document.createElement("div");t.style.position="absolute";t.style.top="-50000px";t.style.width="50000px";const e=document.createElement("div");iR(e,this._bareFontInfo);t.appendChild(e);const i=document.createElement("div");iR(i,this._bareFontInfo);i.style.fontWeight="bold";t.appendChild(i);const n=document.createElement("div");iR(n,this._bareFontInfo);n.style.fontStyle="italic";t.appendChild(n);const s=[];for(const t of this._requests){let r;if(t.type===0){r=e}if(t.type===2){r=i}if(t.type===1){r=n}r.appendChild(document.createElement("br"));const o=document.createElement("span");sR._render(o,t);r.appendChild(o);s.push(o)}this._container=t;this._testElements=s}static _render(t,e){if(e.chr===" "){let e=" ";for(let t=0;t<8;t++){e+=e}t.innerText=e}else{let i=e.chr;for(let t=0;t<8;t++){i+=i}t.textContent=i}}_readFromDomElements(){for(let t=0,e=this._requests.length;t{this._evictUntrustedReadingsTimeout=-1;this._evictUntrustedReadings()}),5e3)}}_evictUntrustedReadings(){const t=this._cache.getValues();let e=false;for(const i of t){if(!i.isTrusted){e=true;this._cache.remove(i)}}if(e){this._onDidChange.fire()}}readFontInfo(t){if(!this._cache.has(t)){let e=this._actualReadFontInfo(t);if(e.typicalHalfwidthCharacterWidth<=2||e.typicalFullwidthCharacterWidth<=2||e.spaceWidth<=2||e.maxDigitWidth<=2){e=new uR({pixelRatio:$T.value,fontFamily:e.fontFamily,fontWeight:e.fontWeight,fontSize:e.fontSize,fontFeatureSettings:e.fontFeatureSettings,fontVariationSettings:e.fontVariationSettings,lineHeight:e.lineHeight,letterSpacing:e.letterSpacing,isMonospace:e.isMonospace,typicalHalfwidthCharacterWidth:Math.max(e.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(e.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:e.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(e.spaceWidth,5),middotWidth:Math.max(e.middotWidth,5),wsmiddotWidth:Math.max(e.wsmiddotWidth,5),maxDigitWidth:Math.max(e.maxDigitWidth,5)},false)}this._writeToCache(t,e)}return this._cache.get(t)}_createRequest(t,e,i,n){const s=new nR(t,e);i.push(s);n===null||n===void 0?void 0:n.push(s);return s}_actualReadFontInfo(t){const e=[];const i=[];const n=this._createRequest("n",0,e,i);const s=this._createRequest("m",0,e,null);const r=this._createRequest(" ",0,e,i);const o=this._createRequest("0",0,e,i);const c=this._createRequest("1",0,e,i);const h=this._createRequest("2",0,e,i);const l=this._createRequest("3",0,e,i);const a=this._createRequest("4",0,e,i);const u=this._createRequest("5",0,e,i);const d=this._createRequest("6",0,e,i);const f=this._createRequest("7",0,e,i);const g=this._createRequest("8",0,e,i);const p=this._createRequest("9",0,e,i);const m=this._createRequest("→",0,e,i);const w=this._createRequest("→",0,e,null);const b=this._createRequest("·",0,e,i);const v=this._createRequest(String.fromCharCode(11825),0,e,null);const y="|/-_ilm%";for(let t=0,n=y.length;t.001){x=false;break}}let S=true;if(x&&w.width!==C){S=false}if(w.width>m.width){S=false}return new uR({pixelRatio:$T.value,fontFamily:t.fontFamily,fontWeight:t.fontWeight,fontSize:t.fontSize,fontFeatureSettings:t.fontFeatureSettings,fontVariationSettings:t.fontVariationSettings,lineHeight:t.lineHeight,letterSpacing:t.letterSpacing,isMonospace:x,typicalHalfwidthCharacterWidth:n.width,typicalFullwidthCharacterWidth:s.width,canUseHalfwidthRightwardsArrow:S,spaceWidth:r.width,middotWidth:b.width,wsmiddotWidth:v.width,maxDigitWidth:k},true)}}class fR{constructor(){this._keys=Object.create(null);this._values=Object.create(null)}has(t){const e=t.getId();return!!this._values[e]}get(t){const e=t.getId();return this._values[e]}put(t,e){const i=t.getId();this._keys[i]=t;this._values[i]=e}remove(t){const e=t.getId();delete this._keys[e];delete this._values[e]}getValues(){return Object.keys(this._keys).map((t=>this._values[t]))}}const gR=new dR;var pR;(function(t){t.serviceIds=new Map;t.DI_TARGET="$di$target";t.DI_DEPENDENCIES="$di$dependencies";function e(e){return e[t.DI_DEPENDENCIES]||[]}t.getServiceDependencies=e})(pR||(pR={}));const mR=bR("instantiationService");function wR(t,e,i){if(e[pR.DI_TARGET]===e){e[pR.DI_DEPENDENCIES].push({id:t,index:i})}else{e[pR.DI_DEPENDENCIES]=[{id:t,index:i}];e[pR.DI_TARGET]=e}}function bR(t){if(pR.serviceIds.has(t)){return pR.serviceIds.get(t)}const e=function(t,i,n){if(arguments.length!==3){throw new Error("@IServiceName-decorator can only be used to decorate a parameter")}wR(e,t,n)};e.toString=()=>t;pR.serviceIds.set(t,e);return e}const vR=bR("codeEditorService");function yR(t,e){if(!t){throw new Error(e?`Assertion failed (${e})`:"Assertion Failed")}}function kR(t,e="Unreachable"){throw new Error(e)}function xR(t){if(!t()){debugger;t();uL(new xL("Assertion Failed"))}}function CR(t,e){let i=0;while(i\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy}static getLexeme(t){switch(t.type){case 0:return"(";case 1:return")";case 2:return"!";case 3:return t.isTripleEq?"===":"==";case 4:return t.isTripleEq?"!==":"!=";case 5:return"<";case 6:return"<=";case 7:return">=";case 8:return">=";case 9:return"=~";case 10:return t.lexeme;case 11:return"true";case 12:return"false";case 13:return"in";case 14:return"not";case 15:return"&&";case 16:return"||";case 17:return t.lexeme;case 18:return t.lexeme;case 19:return t.lexeme;case 20:return"EOF";default:throw vL(`unhandled token type: ${JSON.stringify(t)}; have you forgotten to add a case?`)}}reset(t){this._input=t;this._start=0;this._current=0;this._tokens=[];this._errors=[];return this}scan(){while(!this._isAtEnd()){this._start=this._current;const t=this._advance();switch(t){case 40:this._addToken(0);break;case 41:this._addToken(1);break;case 33:if(this._match(61)){const t=this._match(61);this._tokens.push({type:4,offset:this._start,isTripleEq:t})}else{this._addToken(2)}break;case 39:this._quotedString();break;case 47:this._regex();break;case 61:if(this._match(61)){const t=this._match(61);this._tokens.push({type:3,offset:this._start,isTripleEq:t})}else if(this._match(126)){this._addToken(9)}else{this._error(ER("==","=~"))}break;case 60:this._addToken(this._match(61)?6:5);break;case 62:this._addToken(this._match(61)?8:7);break;case 38:if(this._match(38)){this._addToken(15)}else{this._error(ER("&&"))}break;case 124:if(this._match(124)){this._addToken(16)}else{this._error(ER("||"))}break;case 32:case 13:case 9:case 10:case 160:break;default:this._string()}}this._start=this._current;this._addToken(20);return Array.from(this._tokens)}_match(t){if(this._isAtEnd()){return false}if(this._input.charCodeAt(this._current)!==t){return false}this._current++;return true}_advance(){return this._input.charCodeAt(this._current++)}_peek(){return this._isAtEnd()?0:this._input.charCodeAt(this._current)}_addToken(t){this._tokens.push({type:t,offset:this._start})}_error(t){const e=this._start;const i=this._input.substring(this._start,this._current);const n={type:19,offset:this._start,lexeme:i};this._errors.push({offset:e,lexeme:i,additionalInfo:t});this._tokens.push(n)}_string(){this.stringRe.lastIndex=this._start;const t=this.stringRe.exec(this._input);if(t){this._current=this._start+t[0].length;const e=this._input.substring(this._start,this._current);const i=_R._keywords.get(e);if(i){this._addToken(i)}else{this._tokens.push({type:17,lexeme:e,offset:this._start})}}}_quotedString(){while(this._peek()!==39&&!this._isAtEnd()){this._advance()}if(this._isAtEnd()){this._error(MR);return}this._advance();this._tokens.push({type:18,lexeme:this._input.substring(this._start+1,this._current-1),offset:this._start+1})}_regex(){let t=this._current;let e=false;let i=false;while(true){if(t>=this._input.length){this._current=t;this._error(LR);return}const n=this._input.charCodeAt(t);if(e){e=false}else if(n===47&&!i){t++;break}else if(n===91){i=true}else if(n===92){e=true}else if(n===93){i=false}t++}while(t=this._input.length}}_R._regexFlags=new Set(["i","g","s","m","y","u"].map((t=>t.charCodeAt(0))));_R._keywords=new Map([["not",14],["in",13],["false",12],["true",11]]);const OR=new Map;OR.set("false",false);OR.set("true",true);OR.set("isMac",dA);OR.set("isLinux",fA);OR.set("isWindows",uA);OR.set("isWeb",pA);OR.set("isMacNative",dA&&!pA);OR.set("isEdge",_A);OR.set("isFirefox",MA);OR.set("isChrome",EA);OR.set("isSafari",LA);const FR=Object.prototype.hasOwnProperty;const TR={regexParsingWithErrorRecovery:true};const RR=KD("contextkey.parser.error.emptyString","Empty context key expression");const IR=KD("contextkey.parser.error.emptyString.hint","Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively.");const NR=KD("contextkey.parser.error.noInAfterNot","'in' after 'not'.");const BR=KD("contextkey.parser.error.closingParenthesis","closing parenthesis ')'");const PR=KD("contextkey.parser.error.unexpectedToken","Unexpected token");const jR=KD("contextkey.parser.error.unexpectedToken.hint","Did you forget to put && or || before the token?");const $R=KD("contextkey.parser.error.unexpectedEOF","Unexpected end of expression");const zR=KD("contextkey.parser.error.unexpectedEOF.hint","Did you forget to put a context key?");class HR{constructor(t=TR){this._config=t;this._scanner=new _R;this._tokens=[];this._current=0;this._parsingErrors=[];this._flagsGYRe=/g|y/g}parse(t){if(t===""){this._parsingErrors.push({message:RR,offset:0,lexeme:"",additionalInfo:IR});return undefined}this._tokens=this._scanner.reset(t).scan();this._current=0;this._parsingErrors=[];try{const t=this._expr();if(!this._isAtEnd()){const t=this._peek();const e=t.type===17?jR:undefined;this._parsingErrors.push({message:PR,offset:t.offset,lexeme:_R.getLexeme(t),additionalInfo:e});throw HR._parseError}return t}catch(t){if(!(t===HR._parseError)){throw t}return undefined}}_expr(){return this._or()}_or(){const t=[this._and()];while(this._matchOne(16)){const e=this._and();t.push(e)}return t.length===1?t[0]:WR.or(...t)}_and(){const t=[this._term()];while(this._matchOne(15)){const e=this._term();t.push(e)}return t.length===1?t[0]:WR.and(...t)}_term(){if(this._matchOne(2)){const t=this._peek();switch(t.type){case 11:this._advance();return qR.INSTANCE;case 12:this._advance();return KR.INSTANCE;case 0:{this._advance();const t=this._expr();this._consume(1,BR);return t===null||t===void 0?void 0:t.negate()}case 17:this._advance();return XR.create(t.lexeme);default:throw this._errExpectedButGot(`KEY | true | false | '(' expression ')'`,t)}}return this._primary()}_primary(){const t=this._peek();switch(t.type){case 11:this._advance();return WR.true();case 12:this._advance();return WR.false();case 0:{this._advance();const t=this._expr();this._consume(1,BR);return t}case 17:{const e=t.lexeme;this._advance();if(this._matchOne(9)){const t=this._peek();if(!this._config.regexParsingWithErrorRecovery){this._advance();if(t.type!==10){throw this._errExpectedButGot(`REGEX`,t)}const i=t.lexeme;const n=i.lastIndexOf("/");const s=n===i.length-1?undefined:this._removeFlagsGY(i.substring(n+1));let r;try{r=new RegExp(i.substring(1,n),s)}catch(e){throw this._errExpectedButGot(`REGEX`,t)}return rI.create(e,r)}switch(t.type){case 10:case 19:{const i=[t.lexeme];this._advance();let n=this._peek();let s=0;for(let e=0;e=0){const r=i.slice(e+1,s);const o=i[s+1]==="i"?"i":"";try{n=new RegExp(r,o)}catch(e){throw this._errExpectedButGot(`REGEX`,t)}}}if(n===null){throw this._errExpectedButGot("REGEX",t)}return rI.create(e,n)}default:throw this._errExpectedButGot("REGEX",this._peek())}}if(this._matchOne(14)){this._consume(13,NR);const t=this._value();return WR.notIn(e,t)}const i=this._peek().type;switch(i){case 3:{this._advance();const t=this._value();if(this._previous().type===18){return WR.equals(e,t)}switch(t){case"true":return WR.has(e);case"false":return WR.not(e);default:return WR.equals(e,t)}}case 4:{this._advance();const t=this._value();if(this._previous().type===18){return WR.notEquals(e,t)}switch(t){case"true":return WR.not(e);case"false":return WR.has(e);default:return WR.notEquals(e,t)}}case 5:this._advance();return nI.create(e,this._value());case 6:this._advance();return sI.create(e,this._value());case 7:this._advance();return eI.create(e,this._value());case 8:this._advance();return iI.create(e,this._value());case 13:this._advance();return WR.in(e,this._value());default:return WR.has(e)}}case 20:this._parsingErrors.push({message:$R,offset:t.offset,lexeme:"",additionalInfo:zR});throw HR._parseError;default:throw this._errExpectedButGot(`true | false | KEY \n\t| KEY '=~' REGEX \n\t| KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`,this._peek())}}_value(){const t=this._peek();switch(t.type){case 17:case 18:this._advance();return t.lexeme;case 11:this._advance();return"true";case 12:this._advance();return"false";case 13:this._advance();return"in";default:return""}}_removeFlagsGY(t){return t.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(t){if(this._check(t)){this._advance();return true}return false}_advance(){if(!this._isAtEnd()){this._current++}return this._previous()}_consume(t,e){if(this._check(t)){return this._advance()}throw this._errExpectedButGot(e,this._peek())}_errExpectedButGot(t,e,i){const n=KD("contextkey.parser.error.expectedButGot","Expected: {0}\nReceived: '{1}'.",t,_R.getLexeme(e));const s=e.offset;const r=_R.getLexeme(e);this._parsingErrors.push({message:n,offset:s,lexeme:r,additionalInfo:i});return HR._parseError}_check(t){return this._peek().type===t}_peek(){return this._tokens[this._current]}_isAtEnd(){return this._peek().type===20}}HR._parseError=new Error;class WR{static false(){return qR.INSTANCE}static true(){return KR.INSTANCE}static has(t){return GR.create(t)}static equals(t,e){return ZR.create(t,e)}static notEquals(t,e){return YR.create(t,e)}static regex(t,e){return rI.create(t,e)}static in(t,e){return JR.create(t,e)}static notIn(t,e){return QR.create(t,e)}static not(t){return XR.create(t)}static and(...t){return hI.create(t,null,true)}static or(...t){return lI.create(t,null,true)}static deserialize(t){if(t===undefined||t===null){return undefined}const e=this._parser.parse(t);return e}}WR._parser=new HR({regexParsingWithErrorRecovery:false});function VR(t,e){const i=t?t.substituteConstants():undefined;const n=e?e.substituteConstants():undefined;if(!i&&!n){return true}if(!i||!n){return false}return i.equals(n)}function UR(t,e){return t.cmp(e)}class qR{constructor(){this.type=0}cmp(t){return this.type-t.type}equals(t){return t.type===this.type}substituteConstants(){return this}evaluate(t){return false}serialize(){return"false"}keys(){return[]}negate(){return KR.INSTANCE}}qR.INSTANCE=new qR;class KR{constructor(){this.type=1}cmp(t){return this.type-t.type}equals(t){return t.type===this.type}substituteConstants(){return this}evaluate(t){return true}serialize(){return"true"}keys(){return[]}negate(){return qR.INSTANCE}}KR.INSTANCE=new KR;class GR{static create(t,e=null){const i=OR.get(t);if(typeof i==="boolean"){return i?KR.INSTANCE:qR.INSTANCE}return new GR(t,e)}constructor(t,e){this.key=t;this.negated=e;this.type=2}cmp(t){if(t.type!==this.type){return this.type-t.type}return dI(this.key,t.key)}equals(t){if(t.type===this.type){return this.key===t.key}return false}substituteConstants(){const t=OR.get(this.key);if(typeof t==="boolean"){return t?KR.INSTANCE:qR.INSTANCE}return this}evaluate(t){return!!t.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){if(!this.negated){this.negated=XR.create(this.key,this)}return this.negated}}class ZR{static create(t,e,i=null){if(typeof e==="boolean"){return e?GR.create(t,i):XR.create(t,i)}const n=OR.get(t);if(typeof n==="boolean"){const t=n?"true":"false";return e===t?KR.INSTANCE:qR.INSTANCE}return new ZR(t,e,i)}constructor(t,e,i){this.key=t;this.value=e;this.negated=i;this.type=4}cmp(t){if(t.type!==this.type){return this.type-t.type}return fI(this.key,this.value,t.key,t.value)}equals(t){if(t.type===this.type){return this.key===t.key&&this.value===t.value}return false}substituteConstants(){const t=OR.get(this.key);if(typeof t==="boolean"){const e=t?"true":"false";return this.value===e?KR.INSTANCE:qR.INSTANCE}return this}evaluate(t){return t.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){if(!this.negated){this.negated=YR.create(this.key,this.value,this)}return this.negated}}class JR{static create(t,e){return new JR(t,e)}constructor(t,e){this.key=t;this.valueKey=e;this.type=10;this.negated=null}cmp(t){if(t.type!==this.type){return this.type-t.type}return fI(this.key,this.valueKey,t.key,t.valueKey)}equals(t){if(t.type===this.type){return this.key===t.key&&this.valueKey===t.valueKey}return false}substituteConstants(){return this}evaluate(t){const e=t.getValue(this.valueKey);const i=t.getValue(this.key);if(Array.isArray(e)){return e.includes(i)}if(typeof i==="string"&&typeof e==="object"&&e!==null){return FR.call(e,i)}return false}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){if(!this.negated){this.negated=QR.create(this.key,this.valueKey)}return this.negated}}class QR{static create(t,e){return new QR(t,e)}constructor(t,e){this.key=t;this.valueKey=e;this.type=11;this._negated=JR.create(t,e)}cmp(t){if(t.type!==this.type){return this.type-t.type}return this._negated.cmp(t._negated)}equals(t){if(t.type===this.type){return this._negated.equals(t._negated)}return false}substituteConstants(){return this}evaluate(t){return!this._negated.evaluate(t)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class YR{static create(t,e,i=null){if(typeof e==="boolean"){if(e){return XR.create(t,i)}return GR.create(t,i)}const n=OR.get(t);if(typeof n==="boolean"){const t=n?"true":"false";return e===t?qR.INSTANCE:KR.INSTANCE}return new YR(t,e,i)}constructor(t,e,i){this.key=t;this.value=e;this.negated=i;this.type=5}cmp(t){if(t.type!==this.type){return this.type-t.type}return fI(this.key,this.value,t.key,t.value)}equals(t){if(t.type===this.type){return this.key===t.key&&this.value===t.value}return false}substituteConstants(){const t=OR.get(this.key);if(typeof t==="boolean"){const e=t?"true":"false";return this.value===e?qR.INSTANCE:KR.INSTANCE}return this}evaluate(t){return t.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){if(!this.negated){this.negated=ZR.create(this.key,this.value,this)}return this.negated}}class XR{static create(t,e=null){const i=OR.get(t);if(typeof i==="boolean"){return i?qR.INSTANCE:KR.INSTANCE}return new XR(t,e)}constructor(t,e){this.key=t;this.negated=e;this.type=3}cmp(t){if(t.type!==this.type){return this.type-t.type}return dI(this.key,t.key)}equals(t){if(t.type===this.type){return this.key===t.key}return false}substituteConstants(){const t=OR.get(this.key);if(typeof t==="boolean"){return t?qR.INSTANCE:KR.INSTANCE}return this}evaluate(t){return!t.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){if(!this.negated){this.negated=GR.create(this.key,this)}return this.negated}}function tI(t,e){if(typeof t==="string"){const e=parseFloat(t);if(!isNaN(e)){t=e}}if(typeof t==="string"||typeof t==="number"){return e(t)}return qR.INSTANCE}class eI{static create(t,e,i=null){return tI(e,(e=>new eI(t,e,i)))}constructor(t,e,i){this.key=t;this.value=e;this.negated=i;this.type=12}cmp(t){if(t.type!==this.type){return this.type-t.type}return fI(this.key,this.value,t.key,t.value)}equals(t){if(t.type===this.type){return this.key===t.key&&this.value===t.value}return false}substituteConstants(){return this}evaluate(t){if(typeof this.value==="string"){return false}return parseFloat(t.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){if(!this.negated){this.negated=sI.create(this.key,this.value,this)}return this.negated}}class iI{static create(t,e,i=null){return tI(e,(e=>new iI(t,e,i)))}constructor(t,e,i){this.key=t;this.value=e;this.negated=i;this.type=13}cmp(t){if(t.type!==this.type){return this.type-t.type}return fI(this.key,this.value,t.key,t.value)}equals(t){if(t.type===this.type){return this.key===t.key&&this.value===t.value}return false}substituteConstants(){return this}evaluate(t){if(typeof this.value==="string"){return false}return parseFloat(t.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){if(!this.negated){this.negated=nI.create(this.key,this.value,this)}return this.negated}}class nI{static create(t,e,i=null){return tI(e,(e=>new nI(t,e,i)))}constructor(t,e,i){this.key=t;this.value=e;this.negated=i;this.type=14}cmp(t){if(t.type!==this.type){return this.type-t.type}return fI(this.key,this.value,t.key,t.value)}equals(t){if(t.type===this.type){return this.key===t.key&&this.value===t.value}return false}substituteConstants(){return this}evaluate(t){if(typeof this.value==="string"){return false}return parseFloat(t.getValue(this.key))new sI(t,e,i)))}constructor(t,e,i){this.key=t;this.value=e;this.negated=i;this.type=15}cmp(t){if(t.type!==this.type){return this.type-t.type}return fI(this.key,this.value,t.key,t.value)}equals(t){if(t.type===this.type){return this.key===t.key&&this.value===t.value}return false}substituteConstants(){return this}evaluate(t){if(typeof this.value==="string"){return false}return parseFloat(t.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){if(!this.negated){this.negated=eI.create(this.key,this.value,this)}return this.negated}}class rI{static create(t,e){return new rI(t,e)}constructor(t,e){this.key=t;this.regexp=e;this.type=7;this.negated=null}cmp(t){if(t.type!==this.type){return this.type-t.type}if(this.keyt.key){return 1}const e=this.regexp?this.regexp.source:"";const i=t.regexp?t.regexp.source:"";if(ei){return 1}return 0}equals(t){if(t.type===this.type){const e=this.regexp?this.regexp.source:"";const i=t.regexp?t.regexp.source:"";return this.key===t.key&&e===i}return false}substituteConstants(){return this}evaluate(t){const e=t.getValue(this.key);return this.regexp?this.regexp.test(e):false}serialize(){const t=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${t}`}keys(){return[this.key]}negate(){if(!this.negated){this.negated=oI.create(this)}return this.negated}}class oI{static create(t){return new oI(t)}constructor(t){this._actual=t;this.type=8}cmp(t){if(t.type!==this.type){return this.type-t.type}return this._actual.cmp(t._actual)}equals(t){if(t.type===this.type){return this._actual.equals(t._actual)}return false}substituteConstants(){return this}evaluate(t){return!this._actual.evaluate(t)}serialize(){throw new Error("Method not implemented.")}keys(){return this._actual.keys()}negate(){return this._actual}}function cI(t){let e=null;for(let i=0,n=t.length;it.expr.length){return 1}for(let e=0,i=this.expr.length;e1){const t=n[n.length-1];if(t.type!==9){break}n.pop();const e=n.pop();const s=n.length===0;const r=lI.create(t.expr.map((t=>hI.create([t,e],null,i))),null,s);if(r){n.push(r);n.sort(UR)}}if(n.length===1){return n[0]}if(i){for(let t=0;tt.serialize())).join(" && ")}keys(){const t=[];for(const e of this.expr){t.push(...e.keys())}return t}negate(){if(!this.negated){const t=[];for(const e of this.expr){t.push(e.negate())}this.negated=lI.create(t,this,true)}return this.negated}}class lI{static create(t,e,i){return lI._normalizeArr(t,e,i)}constructor(t,e){this.expr=t;this.negated=e;this.type=9}cmp(t){if(t.type!==this.type){return this.type-t.type}if(this.expr.lengtht.expr.length){return 1}for(let e=0,i=this.expr.length;et.serialize())).join(" || ")}keys(){const t=[];for(const e of this.expr){t.push(...e.keys())}return t}negate(){if(!this.negated){const t=[];for(const e of this.expr){t.push(e.negate())}while(t.length>1){const e=t.shift();const i=t.shift();const n=[];for(const t of mI(e)){for(const e of mI(i)){n.push(hI.create([t,e],null,false))}}t.unshift(lI.create(n,null,false))}this.negated=lI.create(t,this,true)}return this.negated}}class aI extends GR{static all(){return aI._info.values()}constructor(t,e,i){super(t,null);this._defaultValue=e;if(typeof i==="object"){aI._info.push(Object.assign(Object.assign({},i),{key:t}))}else if(i!==true){aI._info.push({key:t,description:i,type:e!==null&&e!==undefined?typeof e:undefined})}}bindTo(t){return t.createKey(this.key,this._defaultValue)}getValue(t){return t.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(t){return ZR.create(this.key,t)}}aI._info=[];const uI=bR("contextKeyService");function dI(t,e){if(te){return 1}return 0}function fI(t,e,i,n){if(ti){return 1}if(en){return 1}return 0}function gI(t,e){if(t.type===0||e.type===1){return true}if(t.type===9){if(e.type===9){return pI(t.expr,e.expr)}return false}if(e.type===9){for(const i of e.expr){if(gI(t,i)){return true}}return false}if(t.type===6){if(e.type===6){return pI(e.expr,t.expr)}for(const i of t.expr){if(gI(i,e)){return true}}return false}return t.equals(e)}function pI(t,e){let i=0;let n=0;while(i=0;c--)if(o=t[c])r=(s<3?o(r):s>3?o(e,i,r):o(e,i))||r;return s>3&&r&&Object.defineProperty(e,i,r),r};var yI=undefined&&undefined.__param||function(t,e){return function(i,n){e(i,n,t)}};const kI={followsCaret:true,ignoreCharChanges:true,alwaysRevealFirst:true,findResultLoop:true};let xI=class t extends OL{constructor(t,e={},i,n,s){super();this._audioCueService=i;this._codeEditorService=n;this._accessibilityService=s;this._onDidUpdate=this._register(new UL);this._editor=t;this._options=zE(e,kI,false);this.disposed=false;this.nextIdx=-1;this.ranges=[];this.ignoreSelectionChange=false;this.revealFirst=Boolean(this._options.alwaysRevealFirst);this._register(this._editor.onDidDispose((()=>this.dispose())));this._register(this._editor.onDidUpdateDiff((()=>this._onDiffUpdated())));if(this._options.followsCaret){this._register(this._editor.getModifiedEditor().onDidChangeCursorPosition((t=>{if(this.ignoreSelectionChange){return}this._updateAccessibilityState(t.position.lineNumber);this.nextIdx=-1})))}if(this._options.alwaysRevealFirst){this._register(this._editor.getModifiedEditor().onDidChangeModel((t=>{this.revealFirst=true})))}this._init()}_init(){const t=this._editor.getLineChanges();if(!t){return}}_onDiffUpdated(){this._init();this._compute(this._editor.getLineChanges());if(this.revealFirst){if(this._editor.getLineChanges()!==null){this.revealFirst=false;this.nextIdx=-1;this.next(1)}}}_compute(t){this.ranges=[];if(t){t.forEach((t=>{if(!this._options.ignoreCharChanges&&t.charChanges){t.charChanges.forEach((t=>{this.ranges.push({rhs:true,range:new mO(t.modifiedStartLineNumber,t.modifiedStartColumn,t.modifiedEndLineNumber,t.modifiedEndColumn)})}))}else{if(t.modifiedEndLineNumber===0){this.ranges.push({rhs:true,range:new mO(t.modifiedStartLineNumber,1,t.modifiedStartLineNumber+1,1)})}else{this.ranges.push({rhs:true,range:new mO(t.modifiedStartLineNumber,1,t.modifiedEndLineNumber+1,1)})}}}))}this.ranges.sort(((t,e)=>mO.compareRangesUsingStarts(t.range,e.range)));this._onDidUpdate.fire(this)}_initIdx(t){let e=false;const i=this._editor.getPosition();if(!i){this.nextIdx=0;return}for(let n=0,s=this.ranges.length;n=this.ranges.length){this.nextIdx=0}}else{this.nextIdx-=1;if(this.nextIdx<0){this.nextIdx=this.ranges.length-1}}const i=this.ranges[this.nextIdx];this.ignoreSelectionChange=true;try{const t=i.range.getStartPosition();this._editor.setPosition(t);this._editor.revealRangeInCenter(i.range,e);this._updateAccessibilityState(t.lineNumber,true)}finally{this.ignoreSelectionChange=false}}_updateAccessibilityState(t,e){var i;const n=(i=this._editor.getModel())===null||i===void 0?void 0:i.modified;if(!n){return}const s=n.getLineDecorations(t).find((t=>t.options.className==="line-insert"));if(s){this._audioCueService.playAudioCue(AR.diffLineModified,true)}else if(e){this._audioCueService.playAudioCue(AR.diffLineDeleted,true)}else{return}const r=this._codeEditorService.getActiveCodeEditor();if(e&&r&&s&&this._accessibilityService.isScreenReaderOptimized()){r.setSelection({startLineNumber:t,startColumn:0,endLineNumber:t,endColumn:Number.MAX_VALUE});r.writeScreenReaderContent("diff-navigation")}}canNavigate(){return this.ranges&&this.ranges.length>0}next(t=0){if(!this.canNavigateNext()){return}this._move(true,t)}previous(t=0){if(!this.canNavigatePrevious()){return}this._move(false,t)}canNavigateNext(){return this.canNavigateLoop()||this.nextIdx0&&t.getLanguageId(o-1)===s){o--}return new jI(t,s,o,r+1,t.getStartOffset(o),t.getEndOffset(r))}class jI{constructor(t,e,i,n,s,r){this._scopedLineTokensBrand=undefined;this._actual=t;this.languageId=e;this._firstTokenIndex=i;this._lastTokenIndex=n;this.firstCharOffset=s;this._lastCharOffset=r}getLineContent(){const t=this._actual.getLineContent();return t.substring(this.firstCharOffset,this._lastCharOffset)}getActualLineContentBefore(t){const e=this._actual.getLineContent();return e.substring(0,this.firstCharOffset+t)}getTokenCount(){return this._lastTokenIndex-this._firstTokenIndex}findTokenIndexAtOffset(t){return this._actual.findTokenIndexAtOffset(t+this.firstCharOffset)-this._firstTokenIndex}getStandardTokenType(t){return this._actual.getStandardTokenType(t+this._firstTokenIndex)}}function $I(t){return(t&3)!==0}class zI{constructor(t){if(t.autoClosingPairs){this._autoClosingPairs=t.autoClosingPairs.map((t=>new II(t)))}else if(t.brackets){this._autoClosingPairs=t.brackets.map((t=>new II({open:t[0],close:t[1]})))}else{this._autoClosingPairs=[]}if(t.__electricCharacterSupport&&t.__electricCharacterSupport.docComment){const e=t.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new II({open:e.open,close:e.close||""}))}this._autoCloseBeforeForQuotes=typeof t.autoCloseBefore==="string"?t.autoCloseBefore:zI.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES;this._autoCloseBeforeForBrackets=typeof t.autoCloseBefore==="string"?t.autoCloseBefore:zI.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS;this._surroundingPairs=t.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(t){return t?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}}zI.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=";:.,=}])> \n\t";zI.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS="'\"`;:.,=}])> \n\t";const HI=typeof Buffer!=="undefined";let WI;class VI{static wrap(t){if(HI&&!Buffer.isBuffer(t)){t=Buffer.from(t.buffer,t.byteOffset,t.byteLength)}return new VI(t)}constructor(t){this.buffer=t;this.byteLength=this.buffer.byteLength}toString(){if(HI){return this.buffer.toString()}else{if(!WI){WI=new TextDecoder}return WI.decode(this.buffer)}}}function UI(t,e){return t[e+0]<<0>>>0|t[e+1]<<8>>>0}function qI(t,e,i){t[i+0]=e&255;e=e>>>8;t[i+1]=e&255}function KI(t,e){return t[e]*Math.pow(2,24)+t[e+1]*Math.pow(2,16)+t[e+2]*Math.pow(2,8)+t[e+3]}function GI(t,e,i){t[i+3]=e;e=e>>>8;t[i+2]=e;e=e>>>8;t[i+1]=e;e=e>>>8;t[i]=e}function ZI(t,e){return t[e]}function JI(t,e,i){t[i]=e}let QI;function YI(){if(!QI){QI=new TextDecoder("UTF-16LE")}return QI}let XI;function tN(){if(!XI){XI=new TextDecoder("UTF-16BE")}return XI}let eN;function iN(){if(!eN){eN=AA()?YI():tN()}return eN}function nN(t,e,i){const n=new Uint16Array(t.buffer,e,i);if(i>0&&(n[0]===65279||n[0]===65534)){return sN(t,e,i)}return YI().decode(n)}function sN(t,e,i){const n=[];let s=0;for(let r=0;r=this._capacity){this._flushBuffer();this._completedStrings[this._completedStrings.length]=t;return}for(let i=0;i[t[0].toLowerCase(),t[1].toLowerCase()]));const i=[];for(let t=0;t{const[i,n]=t;const[s,r]=e;return i===s||i===r||n===s||n===r};const s=(t,n)=>{const s=Math.min(t,n);const r=Math.max(t,n);for(let t=0;t0){r.push({open:s,close:o})}}return r}class hN{constructor(t,e){this._richEditBracketsBrand=undefined;const i=cN(e);this.brackets=i.map(((e,n)=>new oN(t,n,e.open,e.close,dN(e.open,e.close,i,n),fN(e.open,e.close,i,n))));this.forwardRegex=gN(this.brackets);this.reversedRegex=pN(this.brackets);this.textIsBracket={};this.textIsOpenBracket={};this.maxBracketLength=0;for(const t of this.brackets){for(const e of t.open){this.textIsBracket[e]=t;this.textIsOpenBracket[e]=true;this.maxBracketLength=Math.max(this.maxBracketLength,e.length)}for(const e of t.close){this.textIsBracket[e]=t;this.textIsOpenBracket[e]=false;this.maxBracketLength=Math.max(this.maxBracketLength,e.length)}}}}function lN(t,e,i,n){for(let s=0,r=e.length;s=0){n.push(e)}}for(const e of r.close){if(e.indexOf(t)>=0){n.push(e)}}}}function aN(t,e){return t.length-e.length}function uN(t){if(t.length<=1){return t}const e=[];const i=new Set;for(const n of t){if(i.has(n)){continue}e.push(n);i.add(n)}return e}function dN(t,e,i,n){let s=[];s=s.concat(t);s=s.concat(e);for(let t=0,e=s.length;t=0;n--){e[i++]=t.charCodeAt(n)}return iN().decode(e)}let e=null;let i=null;return function n(s){if(e!==s){e=s;i=t(e)}return i}}();class vN{static _findPrevBracketInText(t,e,i,n){const s=i.match(t);if(!s){return null}const r=i.length-(s.index||0);const o=s[0].length;const c=n+r;return new mO(e,c-o+1,e,c+1)}static findPrevBracketInRange(t,e,i,n,s){const r=bN(i);const o=r.substring(i.length-s,i.length-n);return this._findPrevBracketInText(t,e,o,n)}static findNextBracketInText(t,e,i,n){const s=i.match(t);if(!s){return null}const r=s.index||0;const o=s[0].length;if(o===0){return null}const c=n+r;return new mO(e,c+1,e,c+1+o)}static findNextBracketInRange(t,e,i,n,s){const r=i.substring(n,s);return this.findNextBracketInText(t,e,r,n)}}class yN{constructor(t){this._richEditBrackets=t}getElectricCharacters(){const t=[];if(this._richEditBrackets){for(const e of this._richEditBrackets.brackets){for(const i of e.close){const e=i.charAt(i.length-1);t.push(e)}}}return tE(t)}onElectricCharacter(t,e,i){if(!this._richEditBrackets||this._richEditBrackets.brackets.length===0){return null}const n=e.findTokenIndexAtOffset(i-1);if($I(e.getStandardTokenType(n))){return null}const s=this._richEditBrackets.reversedRegex;const r=e.getLineContent().substring(0,i-1)+t;const o=vN.findPrevBracketInRange(s,1,r,0,r.length);if(!o){return null}const c=r.substring(o.startColumn-1,o.endColumn-1).toLowerCase();const h=this._richEditBrackets.textIsOpenBracket[c];if(h){return null}const l=e.getActualLineContentBefore(o.startColumn-1);if(!/^\s*$/.test(l)){return null}return{matchOpenBracket:c}}}function kN(t){if(t.global){t.lastIndex=0}return true}class xN{constructor(t){this._indentationRules=t}shouldIncrease(t){if(this._indentationRules){if(this._indentationRules.increaseIndentPattern&&kN(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(t)){return true}}return false}shouldDecrease(t){if(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&kN(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(t)){return true}return false}shouldIndentNextLine(t){if(this._indentationRules&&this._indentationRules.indentNextLinePattern&&kN(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(t)){return true}return false}shouldIgnore(t){if(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&kN(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(t)){return true}return false}getIndentMetadata(t){let e=0;if(this.shouldIncrease(t)){e+=1}if(this.shouldDecrease(t)){e+=2}if(this.shouldIndentNextLine(t)){e+=4}if(this.shouldIgnore(t)){e+=8}return e}}class CN{constructor(t){t=t||{};t.brackets=t.brackets||[["(",")"],["{","}"],["[","]"]];this._brackets=[];t.brackets.forEach((t=>{const e=CN._createOpenBracketRegExp(t[0]);const i=CN._createCloseBracketRegExp(t[1]);if(e&&i){this._brackets.push({open:t[0],openRegExp:e,close:t[1],closeRegExp:i})}}));this._regExpRules=t.onEnterRules||[]}onEnter(t,e,i,n){if(t>=3){for(let t=0,s=this._regExpRules.length;t{if(!t.reg){return true}t.reg.lastIndex=0;return t.reg.test(t.text)}));if(r){return s.action}}}if(t>=2){if(i.length>0&&n.length>0){for(let t=0,e=this._brackets.length;t=2){if(i.length>0){for(let t=0,e=this._brackets.length;t0&&t.charAt(t.length-1)==="#"){return t.substring(0,t.length-1)}return t}class zN{constructor(){this._onDidChangeSchema=new UL;this.schemasById={}}registerSchema(t,e){this.schemasById[$N(t)]=e;this._onDidChangeSchema.fire(t)}notifySchemaChanged(t){this._onDidChangeSchema.fire(t)}}const HN=new zN;BN.add(jN.JSONContribution,HN);const WN={Configuration:"base.contributions.configuration"};const VN="vscode://schemas/settings/resourceLanguage";const UN=BN.as(jN.JSONContribution);class qN{constructor(){this.overrideIdentifiers=new Set;this._onDidSchemaChange=new UL;this._onDidUpdateConfiguration=new UL;this.configurationDefaultsOverrides=new Map;this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:KD("defaultLanguageConfigurationOverrides.title","Default Language Configuration Overrides"),properties:{}};this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode];this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:true,allowTrailingCommas:true,allowComments:true};this.configurationProperties={};this.policyConfigurations=new Map;this.excludedConfigurationProperties={};UN.registerSchema(VN,this.resourceLanguageSettingsSchema);this.registerOverridePropertyPatternKey()}registerConfiguration(t,e=true){this.registerConfigurations([t],e)}registerConfigurations(t,e=true){const i=new Set;this.doRegisterConfigurations(t,e,i);UN.registerSchema(VN,this.resourceLanguageSettingsSchema);this._onDidSchemaChange.fire();this._onDidUpdateConfiguration.fire({properties:i})}registerDefaultConfigurations(t){const e=new Set;this.doRegisterDefaultConfigurations(t,e);this._onDidSchemaChange.fire();this._onDidUpdateConfiguration.fire({properties:e,defaultsOverrides:true})}doRegisterDefaultConfigurations(t,e){var i;const n=[];for(const{overrides:s,source:r}of t){for(const t in s){e.add(t);if(JN.test(t)){const e=this.configurationDefaultsOverrides.get(t);const o=(i=e===null||e===void 0?void 0:e.valuesSources)!==null&&i!==void 0?i:new Map;if(r){for(const e of Object.keys(s[t])){o.set(e,r)}}const c=Object.assign(Object.assign({},(e===null||e===void 0?void 0:e.value)||{}),s[t]);this.configurationDefaultsOverrides.set(t,{source:r,value:c,valuesSources:o});const h=_N(t);const l={type:"object",default:c,description:KD("defaultLanguageConfiguration.description","Configure settings to be overridden for the {0} language.",h),$ref:VN,defaultDefaultValue:c,source:kE(r)?undefined:r,defaultValueSource:r};n.push(...QN(t));this.configurationProperties[t]=l;this.defaultLanguageConfigurationOverridesNode.properties[t]=l}else{this.configurationDefaultsOverrides.set(t,{value:s[t],source:r});const e=this.configurationProperties[t];if(e){this.updatePropertyDefaultValue(t,e);this.updateSchema(t,e)}}}}this.doRegisterOverrideIdentifiers(n)}registerOverrideIdentifiers(t){this.doRegisterOverrideIdentifiers(t);this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(t){for(const e of t){this.overrideIdentifiers.add(e)}this.updateOverridePropertyPatternKey()}doRegisterConfigurations(t,e,i){t.forEach((t=>{this.validateAndRegisterProperties(t,e,t.extensionInfo,t.restrictedProperties,undefined,i);this.configurationContributors.push(t);this.registerJSONConfiguration(t)}))}validateAndRegisterProperties(t,e=true,i,n,s=3,r){var o;s=LE(t.scope)?s:t.scope;const c=t.properties;if(c){for(const t in c){const h=c[t];if(e&&tB(t,h)){delete c[t];continue}h.source=i;h.defaultDefaultValue=c[t].default;this.updatePropertyDefaultValue(t,h);if(JN.test(t)){h.scope=undefined}else{h.scope=LE(h.scope)?s:h.scope;h.restricted=LE(h.restricted)?!!(n===null||n===void 0?void 0:n.includes(t)):h.restricted}if(c[t].hasOwnProperty("included")&&!c[t].included){this.excludedConfigurationProperties[t]=c[t];delete c[t];continue}else{this.configurationProperties[t]=c[t];if((o=c[t].policy)===null||o===void 0?void 0:o.name){this.policyConfigurations.set(c[t].policy.name,t)}}if(!c[t].deprecationMessage&&c[t].markdownDeprecationMessage){c[t].deprecationMessage=c[t].markdownDeprecationMessage}r.add(t)}}const h=t.allOf;if(h){for(const t of h){this.validateAndRegisterProperties(t,e,i,n,s,r)}}}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}registerJSONConfiguration(t){const e=t=>{const i=t.properties;if(i){for(const t in i){this.updateSchema(t,i[t])}}const n=t.allOf;n===null||n===void 0?void 0:n.forEach(e)};e(t)}updateSchema(t,e){switch(e.scope){case 1:break;case 2:break;case 6:break;case 3:break;case 4:break;case 5:this.resourceLanguageSettingsSchema.properties[t]=e;break}}updateOverridePropertyPatternKey(){for(const t of this.overrideIdentifiers.values()){const e=`[${t}]`;const i={type:"object",description:KD("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:KD("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:VN};this.updatePropertyDefaultValue(e,i)}}registerOverridePropertyPatternKey(){({type:"object",description:KD("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:KD("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:VN});this._onDidSchemaChange.fire()}updatePropertyDefaultValue(t,e){const i=this.configurationDefaultsOverrides.get(t);let n=i===null||i===void 0?void 0:i.value;let s=i===null||i===void 0?void 0:i.source;if(EE(n)){n=e.defaultDefaultValue;s=undefined}if(EE(n)){n=YN(e.type)}e.default=n;e.defaultValueSource=s}}const KN=`\\[([^\\]]+)\\]`;const GN=new RegExp(KN,"g");const ZN=`^(${KN})+$`;const JN=new RegExp(ZN);function QN(t){const e=[];if(JN.test(t)){let i=GN.exec(t);while(i===null||i===void 0?void 0:i.length){const n=i[1].trim();if(n){e.push(n)}i=GN.exec(t)}}return tE(e)}function YN(t){const e=Array.isArray(t)?t[0]:t;switch(e){case"boolean":return false;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}const XN=new qN;BN.add(WN.Configuration,XN);function tB(t,e){var i,n,s,r;if(!t.trim()){return KD("config.property.empty","Cannot register an empty property")}if(JN.test(t)){return KD("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",t)}if(XN.getConfigurationProperties()[t]!==undefined){return KD("config.property.duplicate","Cannot register '{0}'. This property is already registered.",t)}if(((i=e.policy)===null||i===void 0?void 0:i.name)&&XN.getPolicyConfigurations().get((n=e.policy)===null||n===void 0?void 0:n.name)!==undefined){return KD("config.policy.duplicate","Cannot register '{0}'. The associated policy {1} is already registered with {2}.",t,(s=e.policy)===null||s===void 0?void 0:s.name,XN.getPolicyConfigurations().get((r=e.policy)===null||r===void 0?void 0:r.name))}return null}const eB={ModesRegistry:"editor.modesRegistry"};class iB{constructor(){this._onDidChangeLanguages=new UL;this.onDidChangeLanguages=this._onDidChangeLanguages.event;this._languages=[]}registerLanguage(t){this._languages.push(t);this._onDidChangeLanguages.fire(undefined);return{dispose:()=>{for(let e=0,i=this._languages.length;e{const e=new Set;return{info:new lB(this,t,e),closing:e}}));const s=new AF((t=>{const e=new Set;const i=new Set;return{info:new aB(this,t,e,i),opening:e,openingColorized:i}}));for(const[t,e]of i){const i=n.get(t);const r=s.get(e);i.closing.add(r.info);r.opening.add(i.info)}const r=e.colorizedBracketPairs?cB(e.colorizedBracketPairs):i.filter((t=>!(t[0]==="<"&&t[1]===">")));for(const[t,e]of r){const i=n.get(t);const r=s.get(e);i.closing.add(r.info);r.openingColorized.add(i.info);r.opening.add(i.info)}this._openingBrackets=new Map([...n.cachedValues].map((([t,e])=>[t,e.info])));this._closingBrackets=new Map([...s.cachedValues].map((([t,e])=>[t,e.info])))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(t){return this._openingBrackets.get(t)}getClosingBracketInfo(t){return this._closingBrackets.get(t)}getBracketInfo(t){return this.getOpeningBracketInfo(t)||this.getClosingBracketInfo(t)}}function cB(t){return t.filter((([t,e])=>t!==""&&e!==""))}class hB{constructor(t,e){this.config=t;this.bracketText=e}get languageId(){return this.config.languageId}}class lB extends hB{constructor(t,e,i){super(t,e);this.openedBrackets=i;this.isOpeningBracket=true}}class aB extends hB{constructor(t,e,i,n){super(t,e);this.openingBrackets=i;this.openingColorizedBrackets=n;this.isOpeningBracket=false}closes(t){if(t["config"]!==this.config){return false}return this.openingBrackets.has(t)}closesColorized(t){if(t["config"]!==this.config){return false}return this.openingColorizedBrackets.has(t)}getOpeningBrackets(){return[...this.openingBrackets]}}var uB=undefined&&undefined.__decorate||function(t,e,i,n){var s=arguments.length,r=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,i):n,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(t,e,i,n);else for(var c=t.length-1;c>=0;c--)if(o=t[c])r=(s<3?o(r):s>3?o(e,i,r):o(e,i))||r;return s>3&&r&&Object.defineProperty(e,i,r),r};var dB=undefined&&undefined.__param||function(t,e){return function(i,n){e(i,n,t)}};class fB{constructor(t){this.languageId=t}affects(t){return!this.languageId?true:this.languageId===t}}const gB=bR("languageConfigurationService");let pB=class t extends OL{constructor(t,e){super();this.configurationService=t;this.languageService=e;this._registry=this._register(new AB);this.onDidChangeEmitter=this._register(new UL);this.onDidChange=this.onDidChangeEmitter.event;this.configurations=new Map;const i=new Set(Object.values(wB));this._register(this.configurationService.onDidChangeConfiguration((t=>{const e=t.change.keys.some((t=>i.has(t)));const n=t.change.overrides.filter((([t,e])=>e.some((t=>i.has(t))))).map((([t])=>t));if(e){this.configurations.clear();this.onDidChangeEmitter.fire(new fB(undefined))}else{for(const t of n){if(this.languageService.isRegisteredLanguageId(t)){this.configurations.delete(t);this.onDidChangeEmitter.fire(new fB(t))}}}})));this._register(this._registry.onDidChange((t=>{this.configurations.delete(t.languageId);this.onDidChangeEmitter.fire(new fB(t.languageId))})))}register(t,e,i){return this._registry.register(t,e,i)}getLanguageConfiguration(t){let e=this.configurations.get(t);if(!e){e=mB(t,this._registry,this.configurationService,this.languageService);this.configurations.set(t,e)}return e}};pB=uB([dB(0,SN),dB(1,ON)],pB);function mB(t,e,i,n){let s=e.getLanguageConfiguration(t);if(!s){if(!n.isRegisteredLanguageId(t)){return new EB(t,{})}s=new EB(t,{})}const r=bB(s.languageId,i);const o=CB([s.underlyingConfig,r]);const c=new EB(s.languageId,o);return c}const wB={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function bB(t,e){const i=e.getValue(wB.brackets,{overrideIdentifier:t});const n=e.getValue(wB.colorizedBracketPairs,{overrideIdentifier:t});return{brackets:vB(i),colorizedBracketPairs:vB(n)}}function vB(t){if(!Array.isArray(t)){return undefined}return t.map((t=>{if(!Array.isArray(t)||t.length!==2){return undefined}return[t[0],t[1]]})).filter((t=>!!t))}function yB(t,e,i){const n=t.getLineContent(e);let s=VF(n);if(s.length>i-1){s=s.substring(0,i-1)}return s}function kB(t,e,i){t.tokenization.forceTokenization(e);const n=t.tokenization.getLineTokens(e);const s=typeof i==="undefined"?t.getLineMaxColumn(e)-1:i-1;return PI(n,s)}class xB{constructor(t){this.languageId=t;this._resolved=null;this._entries=[];this._order=0;this._resolved=null}register(t,e){const i=new SB(t,e,++this._order);this._entries.push(i);this._resolved=null;return LL((()=>{for(let t=0;tt.configuration)))}}function CB(t){let e={comments:undefined,brackets:undefined,wordPattern:undefined,indentationRules:undefined,onEnterRules:undefined,autoClosingPairs:undefined,surroundingPairs:undefined,autoCloseBefore:undefined,folding:undefined,colorizedBracketPairs:undefined,__electricCharacterSupport:undefined};for(const i of t){e={comments:i.comments||e.comments,brackets:i.brackets||e.brackets,wordPattern:i.wordPattern||e.wordPattern,indentationRules:i.indentationRules||e.indentationRules,onEnterRules:i.onEnterRules||e.onEnterRules,autoClosingPairs:i.autoClosingPairs||e.autoClosingPairs,surroundingPairs:i.surroundingPairs||e.surroundingPairs,autoCloseBefore:i.autoCloseBefore||e.autoCloseBefore,folding:i.folding||e.folding,colorizedBracketPairs:i.colorizedBracketPairs||e.colorizedBracketPairs,__electricCharacterSupport:i.__electricCharacterSupport||e.__electricCharacterSupport}}return e}class SB{constructor(t,e,i){this.configuration=t;this.priority=e;this.order=i}static cmp(t,e){if(t.priority===e.priority){return t.order-e.order}return t.priority-e.priority}}class DB{constructor(t){this.languageId=t}}class AB extends OL{constructor(){super();this._entries=new Map;this._onDidChange=this._register(new UL);this.onDidChange=this._onDidChange.event;this._register(this.register(sB,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:true}},0))}register(t,e,i=0){let n=this._entries.get(t);if(!n){n=new xB(t);this._entries.set(t,n)}const s=n.register(e,i);this._onDidChange.fire(new DB(t));return LL((()=>{s.dispose();this._onDidChange.fire(new DB(t))}))}getLanguageConfiguration(t){const e=this._entries.get(t);return(e===null||e===void 0?void 0:e.getResolvedConfiguration())||null}}class EB{constructor(t,e){this.languageId=t;this.underlyingConfig=e;this._brackets=null;this._electricCharacter=null;this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new CN(this.underlyingConfig):null;this.comments=EB._handleComments(this.underlyingConfig);this.characterPair=new zI(this.underlyingConfig);this.wordDefinition=this.underlyingConfig.wordPattern||NA;this.indentationRules=this.underlyingConfig.indentationRules;if(this.underlyingConfig.indentationRules){this.indentRulesSupport=new xN(this.underlyingConfig.indentationRules)}else{this.indentRulesSupport=null}this.foldingRules=this.underlyingConfig.folding||{};this.bracketsNew=new oB(t,this.underlyingConfig)}getWordDefinition(){return BA(this.wordDefinition)}get brackets(){if(!this._brackets&&this.underlyingConfig.brackets){this._brackets=new hN(this.languageId,this.underlyingConfig.brackets)}return this._brackets}get electricCharacter(){if(!this._electricCharacter){this._electricCharacter=new yN(this.brackets)}return this._electricCharacter}onEnter(t,e,i,n){if(!this._onEnterSupport){return null}return this._onEnterSupport.onEnter(t,e,i,n)}getAutoClosingPairs(){return new NI(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(t){return this.characterPair.getAutoCloseBeforeSet(t)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(t){const e=t.comments;if(!e){return null}const i={};if(e.lineComment){i.lineCommentToken=e.lineComment}if(e.blockComment){const[t,n]=e.blockComment;i.blockCommentStartToken=t;i.blockCommentEndToken=n}return i}}RN(gB,pB,1);const MB=new class{clone(){return this}equals(t){return this===t}};function LB(t,e){return new AO([new DO(0,"",t)],e)}function _B(t,e){const i=new Uint32Array(2);i[0]=0;i[1]=(t<<0|0<<8|0<<11|1<<15|2<<24)>>>0;return new EO(i,e===null?MB:e)}const OB=bR("modelService");const FB=Symbol("MicrotaskDelay");var TB=undefined&&undefined.__awaiter||function(t,e,i,n){function s(t){return t instanceof i?t:new i((function(e){e(t)}))}return new(i||(i=Promise))((function(i,r){function o(t){try{h(n.next(t))}catch(t){r(t)}}function c(t){try{h(n["throw"](t))}catch(t){r(t)}}function h(t){t.done?i(t.value):s(t.value).then(o,c)}h((n=n.apply(t,e||[])).next())}))};var RB=undefined&&undefined.__asyncValues||function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],i;return e?e.call(t):(t=typeof __values==="function"?__values(t):t[Symbol.iterator](),i={},n("next"),n("throw"),n("return"),i[Symbol.asyncIterator]=function(){return this},i);function n(e){i[e]=t[e]&&function(i){return new Promise((function(n,r){i=t[e](i),s(n,r,i.done,i.value)}))}}function s(t,e,i,n){Promise.resolve(n).then((function(e){t({value:e,done:i})}),e)}};function IB(t){return!!t&&typeof t.then==="function"}function NB(t){const e=new s_;const i=t(e.token);const n=new Promise(((t,n)=>{const s=e.token.onCancellationRequested((()=>{s.dispose();e.dispose();n(new mL)}));Promise.resolve(i).then((i=>{s.dispose();e.dispose();t(i)}),(t=>{s.dispose();e.dispose();n(t)}))}));return new class{cancel(){e.cancel()}then(t,e){return n.then(t,e)}catch(t){return this.then(undefined,t)}finally(t){return n.finally(t)}}}function BB(t,e,i){return new Promise(((n,s)=>{const r=e.onCancellationRequested((()=>{r.dispose();n(i)}));t.then(n,s).finally((()=>r.dispose()))}))}class PB{constructor(){this.activePromise=null;this.queuedPromise=null;this.queuedPromiseFactory=null}queue(t){if(this.activePromise){this.queuedPromiseFactory=t;if(!this.queuedPromise){const t=()=>{this.queuedPromise=null;const t=this.queue(this.queuedPromiseFactory);this.queuedPromiseFactory=null;return t};this.queuedPromise=new Promise((e=>{this.activePromise.then(t,t).then(e)}))}return new Promise(((t,e)=>{this.queuedPromise.then(t,e)}))}this.activePromise=t();return new Promise(((t,e)=>{this.activePromise.then((e=>{this.activePromise=null;t(e)}),(t=>{this.activePromise=null;e(t)}))}))}}const jB=(t,e)=>{let i=true;const n=setTimeout((()=>{i=false;e()}),t);return{isTriggered:()=>i,dispose:()=>{clearTimeout(n);i=false}}};const $B=t=>{let e=true;queueMicrotask((()=>{if(e){e=false;t()}}));return{isTriggered:()=>e,dispose:()=>{e=false}}};class zB{constructor(t){this.defaultDelay=t;this.deferred=null;this.completionPromise=null;this.doResolve=null;this.doReject=null;this.task=null}trigger(t,e=this.defaultDelay){this.task=t;this.cancelTimeout();if(!this.completionPromise){this.completionPromise=new Promise(((t,e)=>{this.doResolve=t;this.doReject=e})).then((()=>{this.completionPromise=null;this.doResolve=null;if(this.task){const t=this.task;this.task=null;return t()}return undefined}))}const i=()=>{var t;this.deferred=null;(t=this.doResolve)===null||t===void 0?void 0:t.call(this,null)};this.deferred=e===FB?$B(i):jB(e,i);return this.completionPromise}isTriggered(){var t;return!!((t=this.deferred)===null||t===void 0?void 0:t.isTriggered())}cancel(){var t;this.cancelTimeout();if(this.completionPromise){(t=this.doReject)===null||t===void 0?void 0:t.call(this,new mL);this.completionPromise=null}}cancelTimeout(){var t;(t=this.deferred)===null||t===void 0?void 0:t.dispose();this.deferred=null}dispose(){this.cancel()}}class HB{constructor(t){this.delayer=new zB(t);this.throttler=new PB}trigger(t,e){return this.delayer.trigger((()=>this.throttler.queue(t)),e)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose()}}function WB(t,e){if(!e){return NB((e=>WB(t,e)))}return new Promise(((i,n)=>{const s=setTimeout((()=>{r.dispose();i()}),t);const r=e.onCancellationRequested((()=>{clearTimeout(s);r.dispose();n(new mL)}))}))}function VB(t,e=0){const i=setTimeout(t,e);return LL((()=>clearTimeout(i)))}function UB(t,e=(t=>!!t),i=null){let n=0;const s=t.length;const r=()=>{if(n>=s){return Promise.resolve(i)}const o=t[n++];const c=Promise.resolve(o());return c.then((t=>{if(e(t)){return Promise.resolve(t)}return r()}))};return r()}class qB{constructor(t,e){this._token=-1;if(typeof t==="function"&&typeof e==="number"){this.setIfNotSet(t,e)}}dispose(){this.cancel()}cancel(){if(this._token!==-1){clearTimeout(this._token);this._token=-1}}cancelAndSet(t,e){this.cancel();this._token=setTimeout((()=>{this._token=-1;t()}),e)}setIfNotSet(t,e){if(this._token!==-1){return}this._token=setTimeout((()=>{this._token=-1;t()}),e)}}class KB{constructor(){this._token=-1}dispose(){this.cancel()}cancel(){if(this._token!==-1){clearInterval(this._token);this._token=-1}}cancelAndSet(t,e){this.cancel();this._token=setInterval((()=>{t()}),e)}}class GB{constructor(t,e){this.timeoutToken=-1;this.runner=t;this.timeout=e;this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel();this.runner=null}cancel(){if(this.isScheduled()){clearTimeout(this.timeoutToken);this.timeoutToken=-1}}schedule(t=this.timeout){this.cancel();this.timeoutToken=setTimeout(this.timeoutHandler,t)}get delay(){return this.timeout}set delay(t){this.timeout=t}isScheduled(){return this.timeoutToken!==-1}onTimeout(){this.timeoutToken=-1;if(this.runner){this.doRun()}}doRun(){var t;(t=this.runner)===null||t===void 0?void 0:t.call(this)}}let ZB;(function(){if(typeof requestIdleCallback!=="function"||typeof cancelIdleCallback!=="function"){ZB=t=>{xA((()=>{if(e){return}const i=Date.now()+15;t(Object.freeze({didTimeout:true,timeRemaining(){return Math.max(0,i-Date.now())}}))}));let e=false;return{dispose(){if(e){return}e=true}}}}else{ZB=(t,e)=>{const i=requestIdleCallback(t,typeof e==="number"?{timeout:e}:undefined);let n=false;return{dispose(){if(n){return}n=true;cancelIdleCallback(i)}}}}})();class JB{constructor(t){this._didRun=false;this._executor=()=>{try{this._value=t()}catch(t){this._error=t}finally{this._didRun=true}};this._handle=ZB((()=>this._executor()))}dispose(){this._handle.dispose()}get value(){if(!this._didRun){this._handle.dispose();this._executor()}if(this._error){throw this._error}return this._value}get isInitialized(){return this._didRun}}class QB{get isRejected(){return this.rejected}get isSettled(){return this.rejected||this.resolved}constructor(){this.rejected=false;this.resolved=false;this.p=new Promise(((t,e)=>{this.completeCallback=t;this.errorCallback=e}))}complete(t){return new Promise((e=>{this.completeCallback(t);this.resolved=true;e()}))}cancel(){new Promise((t=>{this.errorCallback(new mL);this.rejected=true;t()}))}}var YB;(function(t){function e(t){return TB(this,void 0,void 0,(function*(){let e=undefined;const i=yield Promise.all(t.map((t=>t.then((t=>t),(t=>{if(!e){e=t}return undefined})))));if(typeof e!=="undefined"){throw e}return i}))}t.settled=e;function i(t){return new Promise(((e,i)=>TB(this,void 0,void 0,(function*(){try{yield t(e,i)}catch(t){i(t)}}))))}t.withAsyncBody=i})(YB||(YB={}));class XB{static fromArray(t){return new XB((e=>{e.emitMany(t)}))}static fromPromise(t){return new XB((e=>TB(this,void 0,void 0,(function*(){e.emitMany(yield t)}))))}static fromPromises(t){return new XB((e=>TB(this,void 0,void 0,(function*(){yield Promise.all(t.map((t=>TB(this,void 0,void 0,(function*(){return e.emitOne(yield t)})))))}))))}static merge(t){return new XB((e=>TB(this,void 0,void 0,(function*(){yield Promise.all(t.map((t=>{var i,n,s;return TB(this,void 0,void 0,(function*(){var r,o,c,h;try{for(i=true,n=RB(t);s=yield n.next(),r=s.done,!r;){h=s.value;i=false;try{const t=h;e.emitOne(t)}finally{i=true}}}catch(t){o={error:t}}finally{try{if(!i&&!r&&(c=n.return))yield c.call(n)}finally{if(o)throw o.error}}}))})))}))))}constructor(t){this._state=0;this._results=[];this._error=null;this._onStateChanged=new UL;queueMicrotask((()=>TB(this,void 0,void 0,(function*(){const e={emitOne:t=>this.emitOne(t),emitMany:t=>this.emitMany(t),reject:t=>this.reject(t)};try{yield Promise.resolve(t(e));this.resolve()}catch(t){this.reject(t)}finally{e.emitOne=undefined;e.emitMany=undefined;e.reject=undefined}}))))}[Symbol.asyncIterator](){let t=0;return{next:()=>TB(this,void 0,void 0,(function*(){do{if(this._state===2){throw this._error}if(tTB(this,void 0,void 0,(function*(){var n,s,r,o;try{for(var c=true,h=RB(t),l;l=yield h.next(),n=l.done,!n;){o=l.value;c=false;try{const t=o;i.emitOne(e(t))}finally{c=true}}}catch(t){s={error:t}}finally{try{if(!c&&!n&&(r=h.return))yield r.call(h)}finally{if(s)throw s.error}}}))))}map(t){return XB.map(this,t)}static filter(t,e){return new XB((i=>TB(this,void 0,void 0,(function*(){var n,s,r,o;try{for(var c=true,h=RB(t),l;l=yield h.next(),n=l.done,!n;){o=l.value;c=false;try{const t=o;if(e(t)){i.emitOne(t)}}finally{c=true}}}catch(t){s={error:t}}finally{try{if(!c&&!n&&(r=h.return))yield r.call(h)}finally{if(s)throw s.error}}}))))}filter(t){return XB.filter(this,t)}static coalesce(t){return XB.filter(t,(t=>!!t))}coalesce(){return XB.coalesce(this)}static toPromise(t){var e,i,n;var s,r,o,c;return TB(this,void 0,void 0,(function*(){const h=[];try{for(e=true,i=RB(t);n=yield i.next(),s=n.done,!s;){c=n.value;e=false;try{const t=c;h.push(t)}finally{e=true}}}catch(t){r={error:t}}finally{try{if(!e&&!s&&(o=i.return))yield o.call(i)}finally{if(r)throw r.error}}return h}))}toPromise(){return XB.toPromise(this)}emitOne(t){if(this._state!==0){return}this._results.push(t);this._onStateChanged.fire()}emitMany(t){if(this._state!==0){return}this._results=this._results.concat(t);this._onStateChanged.fire()}resolve(){if(this._state!==0){return}this._state=1;this._onStateChanged.fire()}reject(t){if(this._state!==0){return}this._state=2;this._error=t;this._onStateChanged.fire()}}XB.EMPTY=XB.fromArray([]);class tP extends XB{constructor(t,e){super(e);this._source=t}cancel(){this._source.cancel()}}function eP(t){const e=new s_;const i=t(e.token);return new tP(e,(t=>TB(this,void 0,void 0,(function*(){var n,s,r,o;const c=e.token.onCancellationRequested((()=>{c.dispose();e.dispose();t.reject(new mL)}));try{try{for(var h=true,l=RB(i),a;a=yield l.next(),n=a.done,!n;){o=a.value;h=false;try{const i=o;if(e.token.isCancellationRequested){return}t.emitOne(i)}finally{h=true}}}catch(t){s={error:t}}finally{try{if(!h&&!n&&(r=l.return))yield r.call(l)}finally{if(s)throw s.error}}c.dispose();e.dispose()}catch(i){c.dispose();e.dispose();t.reject(i)}}))))}const iP="$initialize";let nP=false;function sP(t){if(!pA){return}if(!nP){nP=true;console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/microsoft/monaco-editor#faq")}console.warn(t.message)}class rP{constructor(t,e,i,n){this.vsWorker=t;this.req=e;this.method=i;this.args=n;this.type=0}}class oP{constructor(t,e,i,n){this.vsWorker=t;this.seq=e;this.res=i;this.err=n;this.type=1}}class cP{constructor(t,e,i,n){this.vsWorker=t;this.req=e;this.eventName=i;this.arg=n;this.type=2}}class hP{constructor(t,e,i){this.vsWorker=t;this.req=e;this.event=i;this.type=3}}class lP{constructor(t,e){this.vsWorker=t;this.req=e;this.type=4}}class aP{constructor(t){this._workerId=-1;this._handler=t;this._lastSentReq=0;this._pendingReplies=Object.create(null);this._pendingEmitters=new Map;this._pendingEvents=new Map}setWorkerId(t){this._workerId=t}sendMessage(t,e){const i=String(++this._lastSentReq);return new Promise(((n,s)=>{this._pendingReplies[i]={resolve:n,reject:s};this._send(new rP(this._workerId,i,t,e))}))}listen(t,e){let i=null;const n=new UL({onWillAddFirstListener:()=>{i=String(++this._lastSentReq);this._pendingEmitters.set(i,n);this._send(new cP(this._workerId,i,t,e))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(i);this._send(new lP(this._workerId,i));i=null}});return n.event}handleMessage(t){if(!t||!t.vsWorker){return}if(this._workerId!==-1&&t.vsWorker!==this._workerId){return}this._handleMessage(t)}_handleMessage(t){switch(t.type){case 1:return this._handleReplyMessage(t);case 0:return this._handleRequestMessage(t);case 2:return this._handleSubscribeEventMessage(t);case 3:return this._handleEventMessage(t);case 4:return this._handleUnsubscribeEventMessage(t)}}_handleReplyMessage(t){if(!this._pendingReplies[t.seq]){console.warn("Got reply to unknown seq");return}const e=this._pendingReplies[t.seq];delete this._pendingReplies[t.seq];if(t.err){let i=t.err;if(t.err.$isError){i=new Error;i.name=t.err.name;i.message=t.err.message;i.stack=t.err.stack}e.reject(i);return}e.resolve(t.res)}_handleRequestMessage(t){const e=t.req;const i=this._handler.handleMessage(t.method,t.args);i.then((t=>{this._send(new oP(this._workerId,e,t,undefined))}),(t=>{if(t.detail instanceof Error){t.detail=fL(t.detail)}this._send(new oP(this._workerId,e,undefined,fL(t)))}))}_handleSubscribeEventMessage(t){const e=t.req;const i=this._handler.handleEvent(t.eventName,t.arg)((t=>{this._send(new hP(this._workerId,e,t))}));this._pendingEvents.set(e,i)}_handleEventMessage(t){if(!this._pendingEmitters.has(t.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(t.req).fire(t.event)}_handleUnsubscribeEventMessage(t){if(!this._pendingEvents.has(t.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(t.req).dispose();this._pendingEvents.delete(t.req)}_send(t){const e=[];if(t.type===0){for(let i=0;i{this._protocol.handleMessage(t)}),(t=>{n===null||n===void 0?void 0:n(t)})));this._protocol=new aP({sendMessage:(t,e)=>{this._worker.postMessage(t,e)},handleMessage:(t,e)=>{if(typeof i[t]!=="function"){return Promise.reject(new Error("Missing method "+t+" on main thread host."))}try{return Promise.resolve(i[t].apply(i,e))}catch(t){return Promise.reject(t)}},handleEvent:(t,e)=>{if(fP(t)){const n=i[t].call(i,e);if(typeof n!=="function"){throw new Error(`Missing dynamic event ${t} on main thread host.`)}return n}if(dP(t)){const e=i[t];if(typeof e!=="function"){throw new Error(`Missing event ${t} on main thread host.`)}return e}throw new Error(`Malformed event name ${t}`)}});this._protocol.setWorkerId(this._worker.getId());let s=null;const r=globalThis.require;if(typeof r!=="undefined"&&typeof r.getConfig==="function"){s=r.getConfig()}else if(typeof globalThis.requirejs!=="undefined"){s=globalThis.requirejs.s.contexts._.config}const o=VE(i);this._onModuleLoaded=this._protocol.sendMessage(iP,[this._worker.getId(),JSON.parse(JSON.stringify(s)),e,o]);const c=(t,e)=>this._request(t,e);const h=(t,e)=>this._protocol.listen(t,e);this._lazyProxy=new Promise(((t,i)=>{n=i;this._onModuleLoaded.then((e=>{t(gP(e,c,h))}),(t=>{i(t);this._onError("Worker failed to load "+e,t)}))}))}getProxyObject(){return this._lazyProxy}_request(t,e){return new Promise(((i,n)=>{this._onModuleLoaded.then((()=>{this._protocol.sendMessage(t,e).then(i,n)}),n)}))}_onError(t,e){console.error(t);console.info(e)}}function dP(t){return t[0]==="o"&&t[1]==="n"&&YF(t.charCodeAt(2))}function fP(t){return/^onDynamic/.test(t)&&YF(t.charCodeAt(9))}function gP(t,e,i){const n=t=>function(){const i=Array.prototype.slice.call(arguments,0);return e(t,i)};const s=t=>function(e){return i(t,e)};const r={};for(const e of t){if(fP(e)){r[e]=s(e);continue}if(dP(e)){r[e]=i(e,undefined);continue}r[e]=n(e)}return r}var pP;const mP=(pP=window.trustedTypes)===null||pP===void 0?void 0:pP.createPolicy("defaultWorkerFactory",{createScriptURL:t=>t});function wP(t){const e=globalThis.MonacoEnvironment;if(e){if(typeof e.getWorker==="function"){return e.getWorker("workerMain.js",t)}if(typeof e.getWorkerUrl==="function"){const i=e.getWorkerUrl("workerMain.js",t);return new Worker(mP?mP.createScriptURL(i):i,{name:t})}}throw new Error(`You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker`)}function bP(t){if(typeof t.then==="function"){return true}return false}class vP{constructor(t,e,i,n,s){this.id=e;const r=wP(i);if(bP(r)){this.worker=r}else{this.worker=Promise.resolve(r)}this.postMessage(t,[]);this.worker.then((t=>{t.onmessage=function(t){n(t.data)};t.onmessageerror=s;if(typeof t.addEventListener==="function"){t.addEventListener("error",s)}}))}getId(){return this.id}postMessage(t,e){var i;(i=this.worker)===null||i===void 0?void 0:i.then((i=>i.postMessage(t,e)))}dispose(){var t;(t=this.worker)===null||t===void 0?void 0:t.then((t=>t.terminate()));this.worker=null}}class yP{constructor(t){this._label=t;this._webWorkerFailedBeforeError=false}create(t,e,i){const n=++yP.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError){throw this._webWorkerFailedBeforeError}return new vP(t,n,this._label||"anonymous"+n,e,(t=>{sP(t);this._webWorkerFailedBeforeError=t;i(t)}))}}yP.LAST_WORKER_ID=0;class kP{constructor(t,e,i,n){this.originalStart=t;this.originalLength=e;this.modifiedStart=i;this.modifiedLength=n}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}function xP(t){return CP(t,0)}function CP(t,e){switch(typeof t){case"object":if(t===null){return SP(349,e)}else if(Array.isArray(t)){return EP(t,e)}return MP(t,e);case"string":return AP(t,e);case"boolean":return DP(t,e);case"number":return SP(t,e);case"undefined":return SP(937,e);default:return SP(617,e)}}function SP(t,e){return(e<<5)-e+t|0}function DP(t,e){return SP(t?433:863,e)}function AP(t,e){e=SP(149417,e);for(let i=0,n=t.length;iCP(e,t)),e)}function MP(t,e){e=SP(181387,e);return Object.keys(t).sort().reduce(((e,i)=>{e=AP(i,e);return CP(t[i],e)}),e)}function LP(t,e,i=32){const n=i-e;const s=~((1<>>n)>>>0}function _P(t,e=0,i=t.byteLength,n=0){for(let s=0;st.toString(16).padStart(2,"0"))).join("")}return OP((t>>>0).toString(16),e/4)}class TP{constructor(){this._h0=1732584193;this._h1=4023233417;this._h2=2562383102;this._h3=271733878;this._h4=3285377520;this._buff=new Uint8Array(64+3);this._buffDV=new DataView(this._buff.buffer);this._buffLen=0;this._totalLen=0;this._leftoverHighSurrogate=0;this._finished=false}update(t){const e=t.length;if(e===0){return}const i=this._buff;let n=this._buffLen;let s=this._leftoverHighSurrogate;let r;let o;if(s!==0){r=s;o=-1;s=0}else{r=t.charCodeAt(0);o=0}while(true){let c=r;if(nT(r)){if(o+1>>6;t[e++]=128|(i&63)>>>0}else if(i<65536){t[e++]=224|(i&61440)>>>12;t[e++]=128|(i&4032)>>>6;t[e++]=128|(i&63)>>>0}else{t[e++]=240|(i&1835008)>>>18;t[e++]=128|(i&258048)>>>12;t[e++]=128|(i&4032)>>>6;t[e++]=128|(i&63)>>>0}if(e>=64){this._step();e-=64;this._totalLen+=64;t[0]=t[64+0];t[1]=t[64+1];t[2]=t[64+2]}return e}digest(){if(!this._finished){this._finished=true;if(this._leftoverHighSurrogate){this._leftoverHighSurrogate=0;this._buffLen=this._push(this._buff,this._buffLen,65533)}this._totalLen+=this._buffLen;this._wrapUp()}return FP(this._h0)+FP(this._h1)+FP(this._h2)+FP(this._h3)+FP(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128;_P(this._buff,this._buffLen);if(this._buffLen>56){this._step();_P(this._buff)}const t=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(t/4294967296),false);this._buffDV.setUint32(60,t%4294967296,false);this._step()}_step(){const t=TP._bigBlock32;const e=this._buffDV;for(let i=0;i<64;i+=4){t.setUint32(i,e.getUint32(i,false),false)}for(let e=64;e<320;e+=4){t.setUint32(e,LP(t.getUint32(e-12,false)^t.getUint32(e-32,false)^t.getUint32(e-56,false)^t.getUint32(e-64,false),1),false)}let i=this._h0;let n=this._h1;let s=this._h2;let r=this._h3;let o=this._h4;let c,h;let l;for(let e=0;e<80;e++){if(e<20){c=n&s|~n&r;h=1518500249}else if(e<40){c=n^s^r;h=1859775393}else if(e<60){c=n&s|n&r|s&r;h=2400959708}else{c=n^s^r;h=3395469782}l=LP(i,5)+c+o+h+t.getUint32(e*4,false)&4294967295;o=r;r=s;s=LP(n,30);n=i;i=l}this._h0=this._h0+i&4294967295;this._h1=this._h1+n&4294967295;this._h2=this._h2+s&4294967295;this._h3=this._h3+r&4294967295;this._h4=this._h4+o&4294967295}}TP._bigBlock32=new DataView(new ArrayBuffer(320));class RP{constructor(t){this.source=t}getElements(){const t=this.source;const e=new Int32Array(t.length);for(let i=0,n=t.length;i0||this.m_modifiedCount>0){this.m_changes.push(new kP(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount))}this.m_originalCount=0;this.m_modifiedCount=0;this.m_originalStart=1073741824;this.m_modifiedStart=1073741824}AddOriginalElement(t,e){this.m_originalStart=Math.min(this.m_originalStart,t);this.m_modifiedStart=Math.min(this.m_modifiedStart,e);this.m_originalCount++}AddModifiedElement(t,e){this.m_originalStart=Math.min(this.m_originalStart,t);this.m_modifiedStart=Math.min(this.m_modifiedStart,e);this.m_modifiedCount++}getChanges(){if(this.m_originalCount>0||this.m_modifiedCount>0){this.MarkNextChange()}return this.m_changes}getReverseChanges(){if(this.m_originalCount>0||this.m_modifiedCount>0){this.MarkNextChange()}this.m_changes.reverse();return this.m_changes}}class jP{constructor(t,e,i=null){this.ContinueProcessingPredicate=i;this._originalSequence=t;this._modifiedSequence=e;const[n,s,r]=jP._getElements(t);const[o,c,h]=jP._getElements(e);this._hasStrings=r&&h;this._originalStringElements=n;this._originalElementsOrHash=s;this._modifiedStringElements=o;this._modifiedElementsOrHash=c;this.m_forwardHistory=[];this.m_reverseHistory=[]}static _isStringArray(t){return t.length>0&&typeof t[0]==="string"}static _getElements(t){const e=t.getElements();if(jP._isStringArray(e)){const t=new Int32Array(e.length);for(let i=0,n=e.length;i=t&&n>=i&&this.ElementsAreEqual(e,n)){e--;n--}if(t>e||i>n){let s;if(i<=n){NP.Assert(t===e+1,"originalStart should only be one more than originalEnd");s=[new kP(t,0,i,n-i+1)]}else if(t<=e){NP.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd");s=[new kP(t,e-t+1,i,0)]}else{NP.Assert(t===e+1,"originalStart should only be one more than originalEnd");NP.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd");s=[]}return s}const r=[0];const o=[0];const c=this.ComputeRecursionPoint(t,e,i,n,r,o,s);const h=r[0];const l=o[0];if(c!==null){return c}else if(!s[0]){const r=this.ComputeDiffRecursive(t,h,i,l,s);let o=[];if(!s[0]){o=this.ComputeDiffRecursive(h+1,e,l+1,n,s)}else{o=[new kP(h+1,e-(h+1)+1,l+1,n-(l+1)+1)]}return this.ConcatenateChanges(r,o)}return[new kP(t,e-t+1,i,n-i+1)]}WALKTRACE(t,e,i,n,s,r,o,c,h,l,a,u,d,f,g,p,m,w){let b=null;let v=null;let y=new PP;let k=e;let x=i;let C=d[0]-p[0]-n;let S=-1073741824;let D=this.m_forwardHistory.length-1;do{const e=C+t;if(e===k||e=0){h=this.m_forwardHistory[D];t=h[0];k=1;x=h.length-1}}while(--D>=-1);b=y.getReverseChanges();if(w[0]){let t=d[0]+1;let e=p[0]+1;if(b!==null&&b.length>0){const i=b[b.length-1];t=Math.max(t,i.getOriginalEnd());e=Math.max(e,i.getModifiedEnd())}v=[new kP(t,u-t+1,e,g-e+1)]}else{y=new PP;k=r;x=o;C=d[0]-p[0]-c;S=1073741824;D=m?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const t=C+s;if(t===k||t=l[t+1]){a=l[t+1]-1;f=a-C-c;if(a>S){y.MarkNextChange()}S=a+1;y.AddOriginalElement(a+1,f+1);C=t+1-s}else{a=l[t-1];f=a-C-c;if(a>S){y.MarkNextChange()}S=a;y.AddModifiedElement(a+1,f+1);C=t-1-s}if(D>=0){l=this.m_reverseHistory[D];s=l[0];k=1;x=l.length-1}}while(--D>=-1);v=y.getChanges()}return this.ConcatenateChanges(b,v)}ComputeRecursionPoint(t,e,i,n,s,r,o){let c=0,h=0;let l=0,a=0;let u=0,d=0;t--;i--;s[0]=0;r[0]=0;this.m_forwardHistory=[];this.m_reverseHistory=[];const f=e-t+(n-i);const g=f+1;const p=new Int32Array(g);const m=new Int32Array(g);const w=n-i;const b=e-t;const v=t-i;const y=e-n;const k=b-w;const x=k%2===0;p[w]=t;m[b]=e;o[0]=false;for(let k=1;k<=f/2+1;k++){let f=0;let C=0;l=this.ClipDiagonalBound(w-k,k,w,g);a=this.ClipDiagonalBound(w+k,k,w,g);for(let t=l;t<=a;t+=2){if(t===l||tf+C){f=c;C=h}if(!x&&Math.abs(t-b)<=k-1){if(c>=m[t]){s[0]=c;r[0]=h;if(i<=m[t]&&1447>0&&k<=1447+1){return this.WALKTRACE(w,l,a,v,b,u,d,y,p,m,c,e,s,h,n,r,x,o)}else{return null}}}}const S=(f-t+(C-i)-k)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(f,S)){o[0]=true;s[0]=f;r[0]=C;if(S>0&&1447>0&&k<=1447+1){return this.WALKTRACE(w,l,a,v,b,u,d,y,p,m,c,e,s,h,n,r,x,o)}else{t++;i++;return[new kP(t,e-t+1,i,n-i+1)]}}u=this.ClipDiagonalBound(b-k,k,b,g);d=this.ClipDiagonalBound(b+k,k,b,g);for(let f=u;f<=d;f+=2){if(f===u||f=m[f+1]){c=m[f+1]-1}else{c=m[f-1]}h=c-(f-b)-y;const g=c;while(c>t&&h>i&&this.ElementsAreEqual(c,h)){c--;h--}m[f]=c;if(x&&Math.abs(f-w)<=k){if(c<=p[f]){s[0]=c;r[0]=h;if(g>=p[f]&&1447>0&&k<=1447+1){return this.WALKTRACE(w,l,a,v,b,u,d,y,p,m,c,e,s,h,n,r,x,o)}else{return null}}}}if(k<=1447){let t=new Int32Array(a-l+2);t[0]=w-l+1;BP.Copy2(p,l,t,1,a-l+1);this.m_forwardHistory.push(t);t=new Int32Array(d-u+2);t[0]=b-u+1;BP.Copy2(m,u,t,1,d-u+1);this.m_reverseHistory.push(t)}}return this.WALKTRACE(w,l,a,v,b,u,d,y,p,m,c,e,s,h,n,r,x,o)}PrettifyChanges(t){for(let e=0;e0;const o=i.modifiedLength>0;while(i.originalStart+i.originalLength=0;e--){const i=t[e];let n=0;let s=0;if(e>0){const i=t[e-1];n=i.originalStart+i.originalLength;s=i.modifiedStart+i.modifiedLength}const r=i.originalLength>0;const o=i.modifiedLength>0;let c=0;let h=this._boundaryScore(i.originalStart,i.originalLength,i.modifiedStart,i.modifiedLength);for(let t=1;;t++){const e=i.originalStart-t;const l=i.modifiedStart-t;if(eh){h=u;c=t}}i.originalStart-=c;i.modifiedStart-=c;const l=[null];if(e>0&&this.ChangesOverlap(t[e-1],t[e],l)){t[e-1]=l[0];t.splice(e,1);e++;continue}}if(this._hasStrings){for(let e=1,i=t.length;e0&&i>c){c=i;h=e;l=t}}}if(c>0){return[h,l]}return null}_contiguousSequenceScore(t,e,i){let n=0;for(let s=0;s=this._originalElementsOrHash.length-1){return true}return this._hasStrings&&/^\s*$/.test(this._originalStringElements[t])}_OriginalRegionIsBoundary(t,e){if(this._OriginalIsBoundary(t)||this._OriginalIsBoundary(t-1)){return true}if(e>0){const i=t+e;if(this._OriginalIsBoundary(i-1)||this._OriginalIsBoundary(i)){return true}}return false}_ModifiedIsBoundary(t){if(t<=0||t>=this._modifiedElementsOrHash.length-1){return true}return this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[t])}_ModifiedRegionIsBoundary(t,e){if(this._ModifiedIsBoundary(t)||this._ModifiedIsBoundary(t-1)){return true}if(e>0){const i=t+e;if(this._ModifiedIsBoundary(i-1)||this._ModifiedIsBoundary(i)){return true}}return false}_boundaryScore(t,e,i,n){const s=this._OriginalRegionIsBoundary(t,e)?1:0;const r=this._ModifiedRegionIsBoundary(i,n)?1:0;return s+r}ConcatenateChanges(t,e){const i=[];if(t.length===0||e.length===0){return e.length>0?e:t}else if(this.ChangesOverlap(t[t.length-1],e[0],i)){const n=new Array(t.length+e.length-1);BP.Copy(t,0,n,0,t.length-1);n[t.length-1]=i[0];BP.Copy(e,1,n,t.length,e.length-1);return n}else{const i=new Array(t.length+e.length);BP.Copy(t,0,i,0,t.length);BP.Copy(e,0,i,t.length,e.length);return i}}ChangesOverlap(t,e,i){NP.Assert(t.originalStart<=e.originalStart,"Left change is not less than or equal to right change");NP.Assert(t.modifiedStart<=e.modifiedStart,"Left change is not less than or equal to right change");if(t.originalStart+t.originalLength>=e.originalStart||t.modifiedStart+t.modifiedLength>=e.modifiedStart){const n=t.originalStart;let s=t.originalLength;const r=t.modifiedStart;let o=t.modifiedLength;if(t.originalStart+t.originalLength>=e.originalStart){s=e.originalStart+e.originalLength-t.originalStart}if(t.modifiedStart+t.modifiedLength>=e.modifiedStart){o=e.modifiedStart+e.modifiedLength-t.modifiedStart}i[0]=new kP(n,s,r,o);return true}else{i[0]=null;return false}}ClipDiagonalBound(t,e,i,n){if(t>=0&&t255){return 255}return t|0}function zP(t){if(t<0){return 0}if(t>4294967295){return 4294967295}return t|0}class HP{constructor(t){this.values=t;this.prefixSum=new Uint32Array(t.length);this.prefixSumValidIndex=new Int32Array(1);this.prefixSumValidIndex[0]=-1}insertValues(t,e){t=zP(t);const i=this.values;const n=this.prefixSum;const s=e.length;if(s===0){return false}this.values=new Uint32Array(i.length+s);this.values.set(i.subarray(0,t),0);this.values.set(i.subarray(t),t+s);this.values.set(e,t);if(t-1=0){this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1))}return true}setValue(t,e){t=zP(t);e=zP(e);if(this.values[t]===e){return false}this.values[t]=e;if(t-1=i.length){return false}const s=i.length-t;if(e>=s){e=s}if(e===0){return false}this.values=new Uint32Array(i.length-e);this.values.set(i.subarray(0,t),0);this.values.set(i.subarray(t+e),t);this.prefixSum=new Uint32Array(this.values.length);if(t-1=0){this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1))}return true}getTotalSum(){if(this.values.length===0){return 0}return this._getPrefixSum(this.values.length-1)}getPrefixSum(t){if(t<0){return 0}t=zP(t);return this._getPrefixSum(t)}_getPrefixSum(t){if(t<=this.prefixSumValidIndex[0]){return this.prefixSum[t]}let e=this.prefixSumValidIndex[0]+1;if(e===0){this.prefixSum[0]=this.values[0];e++}if(t>=this.values.length){t=this.values.length-1}for(let i=e;i<=t;i++){this.prefixSum[i]=this.prefixSum[i-1]+this.values[i]}this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],t);return this.prefixSum[t]}getIndexOf(t){t=Math.floor(t);this.getTotalSum();let e=0;let i=this.values.length-1;let n=0;let s=0;let r=0;while(e<=i){n=e+(i-e)/2|0;s=this.prefixSum[n];r=s-this.values[n];if(t=s){e=n+1}else{break}}return new VP(n,t-r)}}class WP{constructor(t){this._values=t;this._isValid=false;this._validEndIndex=-1;this._prefixSum=[];this._indexBySum=[]}getTotalSum(){this._ensureValid();return this._indexBySum.length}getPrefixSum(t){this._ensureValid();if(t===0){return 0}return this._prefixSum[t-1]}getIndexOf(t){this._ensureValid();const e=this._indexBySum[t];const i=e>0?this._prefixSum[e-1]:0;return new VP(e,t-i)}removeValues(t,e){this._values.splice(t,e);this._invalidate(t)}insertValues(t,e){this._values=rE(this._values,t,e);this._invalidate(t)}_invalidate(t){this._isValid=false;this._validEndIndex=Math.min(this._validEndIndex,t-1)}_ensureValid(){if(this._isValid){return}for(let t=this._validEndIndex+1,e=this._values.length;t0?this._prefixSum[t-1]:0;this._prefixSum[t]=i+e;for(let n=0;n=0&&t<256){this._asciiMap[t]=i}else{this._map.set(t,i)}}get(t){if(t>=0&&t<256){return this._asciiMap[t]}else{return this._map.get(t)||this._defaultValue}}clear(){this._asciiMap.fill(this._defaultValue);this._map.clear()}}class KP{constructor(){this._actual=new qP(0)}add(t){this._actual.set(t,1)}has(t){return this._actual.get(t)===1}clear(){return this._actual.clear()}}class GP{constructor(t,e,i){const n=new Uint8Array(t*e);for(let s=0,r=t*e;se){e=r}if(s>i){i=s}if(o>i){i=o}}e++;i++;const n=new GP(i,e,0);for(let e=0,i=t.length;e=this._maxCharCode){return 0}return this._states.get(t,e)}}let JP=null;function QP(){if(JP===null){JP=new ZP([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])}return JP}let YP=null;function XP(){if(YP===null){YP=new qP(0);const t=" \t<>'\"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…";for(let e=0;en);if(n>0){const t=e.charCodeAt(n-1);const i=e.charCodeAt(r);if(t===40&&i===41||t===91&&i===93||t===123&&i===125){r--}}return{range:{startLineNumber:i,startColumn:n+1,endLineNumber:i,endColumn:r+2},url:e.substring(n,r+1)}}static computeLinks(t,e=QP()){const i=XP();const n=[];for(let s=1,r=t.getLineCount();s<=r;s++){const r=t.getLineContent(s);const o=r.length;let c=0;let h=0;let l=0;let a=1;let u=false;let d=false;let f=false;let g=false;while(c=0){n+=i?+1:-1;if(n<0){n=t.length-1}else{n%=t.length}return t[n]}return null}}ij.INSTANCE=new ij;class nj extends qP{constructor(t){super(0);for(let e=0,i=t.length;e{if(!e.hasOwnProperty(i)){e[i]=t(i)}return e[i]}}const rj=sj((t=>new nj(t)));const oj=999;class cj{constructor(t,e,i,n){this.searchString=t;this.isRegex=e;this.matchCase=i;this.wordSeparators=n}parseSearchRequest(){if(this.searchString===""){return null}let t;if(this.isRegex){t=hj(this.searchString)}else{t=this.searchString.indexOf("\n")>=0}let e=null;try{e=jF(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:false,multiline:t,global:true,unicode:true})}catch(t){return null}if(!e){return null}let i=!this.isRegex&&!t;if(i&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()){i=this.matchCase}return new OI(e,this.wordSeparators?rj(this.wordSeparators):null,i?this.searchString:null)}}function hj(t){if(!t||t.length===0){return false}for(let e=0,i=t.length;e=i){break}const n=t.charCodeAt(e);if(n===110||n===114||n===87){return true}}}return false}function lj(t,e,i){if(!i){return new MI(t,null)}const n=[];for(let t=0,i=e.length;t>0);if(e[s]>=t){n=s-1}else{if(e[s+1]>=t){i=s;n=s}else{i=s+1}}}return i+1}}class uj{static findMatches(t,e,i,n,s){const r=e.parseSearchRequest();if(!r){return[]}if(r.regex.multiline){return this._doFindMatchesMultiline(t,i,new pj(r.wordSeparators,r.regex),n,s)}return this._doFindMatchesLineByLine(t,i,r,n,s)}static _getMultilineMatchRange(t,e,i,n,s,r){let o;let c=0;if(n){c=n.findLineFeedCountBeforeOffset(s);o=e+s+c}else{o=e+s}let h;if(n){const t=n.findLineFeedCountBeforeOffset(s+r.length);const e=t-c;h=o+r.length+e}else{h=o+r.length}const l=t.getPositionAt(o);const a=t.getPositionAt(h);return new mO(l.lineNumber,l.column,a.lineNumber,a.column)}static _doFindMatchesMultiline(t,e,i,n,s){const r=t.getOffsetAt(e.getStartPosition());const o=t.getValueInRange(e,1);const c=t.getEOL()==="\r\n"?new aj(o):null;const h=[];let l=0;let a;i.reset(0);while(a=i.next(o)){h[l++]=lj(this._getMultilineMatchRange(t,r,o,c,a.index,a[0]),a,n);if(l>=s){return h}}return h}static _doFindMatchesLineByLine(t,e,i,n,s){const r=[];let o=0;if(e.startLineNumber===e.endLineNumber){const c=t.getLineContent(e.startLineNumber).substring(e.startColumn-1,e.endColumn-1);o=this._findMatchesInLine(i,c,e.startLineNumber,e.startColumn-1,o,r,n,s);return r}const c=t.getLineContent(e.startLineNumber).substring(e.startColumn-1);o=this._findMatchesInLine(i,c,e.startLineNumber,e.startColumn-1,o,r,n,s);for(let c=e.startLineNumber+1;c=c){return s}}}return s}const l=new pj(t.wordSeparators,t.regex);let a;l.reset(0);do{a=l.next(e);if(a){r[s++]=lj(new mO(i,a.index+1+n,i,a.index+1+a[0].length+n),a,o);if(s>=c){return s}}}while(a);return s}static findNextMatch(t,e,i,n){const s=e.parseSearchRequest();if(!s){return null}const r=new pj(s.wordSeparators,s.regex);if(s.regex.multiline){return this._doFindNextMatchMultiline(t,i,r,n)}return this._doFindNextMatchLineByLine(t,i,r,n)}static _doFindNextMatchMultiline(t,e,i,n){const s=new pO(e.lineNumber,1);const r=t.getOffsetAt(s);const o=t.getLineCount();const c=t.getValueInRange(new mO(s.lineNumber,s.column,o,t.getLineMaxColumn(o)),1);const h=t.getEOL()==="\r\n"?new aj(c):null;i.reset(e.column-1);const l=i.next(c);if(l){return lj(this._getMultilineMatchRange(t,r,c,h,l.index,l[0]),l,n)}if(e.lineNumber!==1||e.column!==1){return this._doFindNextMatchMultiline(t,new pO(1,1),i,n)}return null}static _doFindNextMatchLineByLine(t,e,i,n){const s=t.getLineCount();const r=e.lineNumber;const o=t.getLineContent(r);const c=this._findFirstMatchInLine(i,o,r,e.column,n);if(c){return c}for(let e=1;e<=s;e++){const o=(r+e-1)%s;const c=t.getLineContent(o+1);const h=this._findFirstMatchInLine(i,c,o+1,1,n);if(h){return h}}return null}static _findFirstMatchInLine(t,e,i,n,s){t.reset(n-1);const r=t.next(e);if(r){return lj(new mO(i,r.index+1,i,r.index+1+r[0].length),r,s)}return null}static findPreviousMatch(t,e,i,n){const s=e.parseSearchRequest();if(!s){return null}const r=new pj(s.wordSeparators,s.regex);if(s.regex.multiline){return this._doFindPreviousMatchMultiline(t,i,r,n)}return this._doFindPreviousMatchLineByLine(t,i,r,n)}static _doFindPreviousMatchMultiline(t,e,i,n){const s=this._doFindMatchesMultiline(t,new mO(1,1,e.lineNumber,e.column),i,n,10*oj);if(s.length>0){return s[s.length-1]}const r=t.getLineCount();if(e.lineNumber!==r||e.column!==t.getLineMaxColumn(r)){return this._doFindPreviousMatchMultiline(t,new pO(r,t.getLineMaxColumn(r)),i,n)}return null}static _doFindPreviousMatchLineByLine(t,e,i,n){const s=t.getLineCount();const r=e.lineNumber;const o=t.getLineContent(r).substring(0,e.column-1);const c=this._findLastMatchInLine(i,o,r,n);if(c){return c}for(let e=1;e<=s;e++){const o=(s+r-e-1)%s;const c=t.getLineContent(o+1);const h=this._findLastMatchInLine(i,c,o+1,n);if(h){return h}}return null}static _findLastMatchInLine(t,e,i,n){let s=null;let r;t.reset(0);while(r=t.next(e)){s=lj(new mO(i,r.index+1,i,r.index+1+r[0].length),r,n)}return s}}function dj(t,e,i,n,s){if(n===0){return true}const r=e.charCodeAt(n-1);if(t.get(r)!==0){return true}if(r===13||r===10){return true}if(s>0){const i=e.charCodeAt(n);if(t.get(i)!==0){return true}}return false}function fj(t,e,i,n,s){if(n+s===i){return true}const r=e.charCodeAt(n+s);if(t.get(r)!==0){return true}if(r===13||r===10){return true}if(s>0){const i=e.charCodeAt(n+s-1);if(t.get(i)!==0){return true}}return false}function gj(t,e,i,n,s){return dj(t,e,i,n,s)&&fj(t,e,i,n,s)}class pj{constructor(t,e){this._wordSeparators=t;this._searchRegex=e;this._prevMatchStartIndex=-1;this._prevMatchLength=0}reset(t){this._searchRegex.lastIndex=t;this._prevMatchStartIndex=-1;this._prevMatchLength=0}next(t){const e=t.length;let i;do{if(this._prevMatchStartIndex+this._prevMatchLength===e){return null}i=this._searchRegex.exec(t);if(!i){return null}const n=i.index;const s=i[0].length;if(n===this._prevMatchStartIndex&&s===this._prevMatchLength){if(s===0){if(oT(t,e,this._searchRegex.lastIndex)>65535){this._searchRegex.lastIndex+=2}else{this._searchRegex.lastIndex+=1}continue}return null}this._prevMatchStartIndex=n;this._prevMatchLength=s;if(!this._wordSeparators||gj(this._wordSeparators,t,e,n,s)){return i}}while(i);return null}}class mj{static computeUnicodeHighlights(t,e,i){const n=i?i.startLineNumber:1;const s=i?i.endLineNumber:t.getLineCount();const r=new bj(e);const o=r.getCandidateCodePoints();let c;if(o==="allNonBasicAscii"){c=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g")}else{c=new RegExp(`${wj(Array.from(o))}`,"g")}const h=new pj(null,c);const l=[];let a=false;let u;let d=0;let f=0;let g=0;t:for(let e=n,i=s;e<=i;e++){const i=t.getLineContent(e);const n=i.length;h.reset(0);do{u=h.next(i);if(u){let t=u.index;let s=u.index+u[0].length;if(t>0){const e=i.charCodeAt(t-1);if(nT(e)){t--}}if(s+1=i){a=true;break t}l.push(new mO(e,t+1,e,s+1))}}}while(u)}return{ranges:l,hasMore:a,ambiguousCharacterCount:d,invisibleCharacterCount:f,nonBasicAsciiCharacterCount:g}}static computeUnicodeHighlightReason(t,e){const i=new bj(e);const n=i.shouldHighlightNonBasicASCII(t,null);switch(n){case 0:return null;case 2:return{kind:1};case 3:{const n=t.codePointAt(0);const s=i.ambiguousCharacters.getPrimaryConfusable(n);const r=TT.getLocales().filter((t=>!TT.getInstance(new Set([...e.allowedLocales,t])).isAmbiguous(n)));return{kind:0,confusableWith:String.fromCodePoint(s),notAmbiguousInLocales:r}}case 1:return{kind:2}}}}function wj(t,e){const i=`[${TF(t.map((t=>String.fromCodePoint(t))).join(""))}]`;return i}class bj{constructor(t){this.options=t;this.allowedCodePoints=new Set(t.allowedCodePoints);this.ambiguousCharacters=TT.getInstance(new Set(t.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII){return"allNonBasicAscii"}const t=new Set;if(this.options.invisibleCharacters){for(const e of RT.codePoints){if(!vj(String.fromCodePoint(e))){t.add(e)}}}if(this.options.ambiguousCharacters){for(const e of this.ambiguousCharacters.getConfusableCodePoints()){t.add(e)}}for(const e of this.allowedCodePoints){t.delete(e)}return t}shouldHighlightNonBasicASCII(t,e){const i=t.codePointAt(0);if(this.allowedCodePoints.has(i)){return 0}if(this.options.nonBasicASCII){return 1}let n=false;let s=false;if(e){for(const t of e){const e=t.codePointAt(0);const i=wT(t);n=n||i;if(!i&&!this.ambiguousCharacters.isAmbiguous(e)&&!RT.isInvisibleCharacter(e)){s=true}}}if(!n&&s){return 0}if(this.options.invisibleCharacters){if(!vj(t)&&RT.isInvisibleCharacter(i)){return 2}}if(this.options.ambiguousCharacters){if(this.ambiguousCharacters.isAmbiguous(i)){return 3}}return 0}}function vj(t){return t===" "||t==="\n"||t==="\t"}class yj{constructor(t,e){this.changes=t;this.hitTimeout=e}}class kj{constructor(t,e,i){this.originalRange=t;this.modifiedRange=e;this.innerChanges=i}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}}class xj{constructor(t,e){this.originalRange=t;this.modifiedRange=e}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}}class Cj{static joinMany(t){if(t.length===0){return[]}let e=t[0];for(let i=1;i=o.startLineNumber){r=new Cj(r.startLineNumber,Math.max(r.endLineNumberExclusive,o.endLineNumberExclusive))}else{i.push(r);r=o}}}if(r!==null){i.push(r)}return i}constructor(t,e){if(t>e){throw new xL(`startLineNumber ${t} cannot be after endLineNumberExclusive ${e}`)}this.startLineNumber=t;this.endLineNumberExclusive=e}contains(t){return this.startLineNumber<=t&&tnew xj(new mO(t.originalStartLineNumber,t.originalStartColumn,t.originalEndLineNumber,t.originalEndColumn),new mO(t.modifiedStartLineNumber,t.modifiedStartColumn,t.modifiedEndLineNumber,t.modifiedEndColumn)))));if(c){if(c.modifiedRange.endLineNumberExclusive===s.modifiedRange.startLineNumber||c.originalRange.endLineNumberExclusive===s.originalRange.startLineNumber){s=new kj(c.originalRange.join(s.originalRange),c.modifiedRange.join(s.modifiedRange),c.innerChanges&&s.innerChanges?c.innerChanges.concat(s.innerChanges):undefined);o.pop()}}o.push(s);c=s}xR((()=>CR(o,((t,e)=>e.originalRange.startLineNumber-t.originalRange.endLineNumberExclusive===e.modifiedRange.startLineNumber-t.modifiedRange.endLineNumberExclusive&&t.originalRange.endLineNumberExclusive(t===10?"\\n":String.fromCharCode(t))+`-(${this._lineNumbers[e]},${this._columns[e]})`)).join(", ")+"]"}_assertIndex(t,e){if(t<0||t>=e.length){throw new Error(`Illegal index`)}}getElements(){return this._charCodes}getStartLineNumber(t){if(t>0&&t===this._lineNumbers.length){return this.getEndLineNumber(t-1)}this._assertIndex(t,this._lineNumbers);return this._lineNumbers[t]}getEndLineNumber(t){if(t===-1){return this.getStartLineNumber(t+1)}this._assertIndex(t,this._lineNumbers);if(this._charCodes[t]===10){return this._lineNumbers[t]+1}return this._lineNumbers[t]}getStartColumn(t){if(t>0&&t===this._columns.length){return this.getEndColumn(t-1)}this._assertIndex(t,this._columns);return this._columns[t]}getEndColumn(t){if(t===-1){return this.getStartColumn(t+1)}this._assertIndex(t,this._columns);if(this._charCodes[t]===10){return 1}return this._columns[t]+1}}class Lj{constructor(t,e,i,n,s,r,o,c){this.originalStartLineNumber=t;this.originalStartColumn=e;this.originalEndLineNumber=i;this.originalEndColumn=n;this.modifiedStartLineNumber=s;this.modifiedStartColumn=r;this.modifiedEndLineNumber=o;this.modifiedEndColumn=c}static createFromDiffChange(t,e,i){const n=e.getStartLineNumber(t.originalStart);const s=e.getStartColumn(t.originalStart);const r=e.getEndLineNumber(t.originalStart+t.originalLength-1);const o=e.getEndColumn(t.originalStart+t.originalLength-1);const c=i.getStartLineNumber(t.modifiedStart);const h=i.getStartColumn(t.modifiedStart);const l=i.getEndLineNumber(t.modifiedStart+t.modifiedLength-1);const a=i.getEndColumn(t.modifiedStart+t.modifiedLength-1);return new Lj(n,s,r,o,c,h,l,a)}}function _j(t){if(t.length<=1){return t}const e=[t[0]];let i=e[0];for(let n=1,s=t.length;n0&&e.originalLength<20&&e.modifiedLength>0&&e.modifiedLength<20&&s()){const r=i.createCharSequence(t,e.originalStart,e.originalStart+e.originalLength-1);const c=n.createCharSequence(t,e.modifiedStart,e.modifiedStart+e.modifiedLength-1);if(r.getElements().length>0&&c.getElements().length>0){let t=Aj(r,c,s,true).changes;if(o){t=_j(t)}u=[];for(let e=0,i=t.length;e1&&o>1){const n=t.charCodeAt(i-2);const s=e.charCodeAt(o-2);if(n!==s){break}i--;o--}if(i>1||o>1){this._pushTrimWhitespaceCharChange(n,s+1,1,i,r+1,1,o)}}{let i=Rj(t,1);let o=Rj(e,1);const c=t.length+1;const h=e.length+1;while(itrue}const e=Date.now();return()=>Date.now()-ee){return undefined}return new Nj(t,e)}constructor(t,e){this.start=t;this.endExclusive=e;if(t>e){throw new xL(`Invalid range: ${this.toString()}`)}}get isEmpty(){return this.start===this.endExclusive}delta(t){return new Nj(this.start+t,this.endExclusive+t)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(t){return this.start===t.start&&this.endExclusive===t.endExclusive}containsRange(t){return this.start<=t.start&&t.endExclusive<=this.endExclusive}join(t){return new Nj(Math.min(this.start,t.start),Math.max(this.endExclusive,t.endExclusive))}intersect(t){const e=Math.max(this.start,t.start);const i=Math.min(this.endExclusive,t.endExclusive);if(e<=i){return new Nj(e,i)}return undefined}}class Bj{static trivial(t,e){return new Bj([new Pj(new Nj(0,t.length),new Nj(0,e.length))],false)}static trivialTimedOut(t,e){return new Bj([new Pj(new Nj(0,t.length),new Nj(0,e.length))],true)}constructor(t,e){this.diffs=t;this.hitTimeout=e}}class Pj{constructor(t,e){this.seq1Range=t;this.seq2Range=e}reverse(){return new Pj(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(t){return new Pj(this.seq1Range.join(t.seq1Range),this.seq2Range.join(t.seq2Range))}}class jj{isValid(){return true}}jj.instance=new jj;class $j{constructor(t){this.timeout=t;this.startTime=Date.now();this.valid=true;if(t<=0){throw new xL("timeout must be positive")}}isValid(){const t=Date.now()-this.startTime0&&h>0&&r.get(c-1,h-1)===3){u+=o.get(c-1,h-1)}u+=n?n(c,h):1}else{u=-1}const d=Math.max(l,a,u);if(d===u){const t=c>0&&h>0?o.get(c-1,h-1):0;o.set(c,h,t+1);r.set(c,h,3)}else if(d===l){o.set(c,h,0);r.set(c,h,1)}else if(d===a){o.set(c,h,0);r.set(c,h,2)}s.set(c,h,d)}}const c=[];let h=t.length;let l=e.length;function a(t,e){if(t+1!==h||e+1!==l){c.push(new Pj(new Nj(t+1,h),new Nj(e+1,l)))}h=t;l=e}let u=t.length-1;let d=e.length-1;while(u>=0&&d>=0){if(r.get(u,d)===3){a(u,d);u--;d--}else{if(r.get(u,d)===1){u--}else{d--}}}a(-1,-1);c.reverse();return new Bj(c,false)}}function Wj(t,e,i){let n=i;n=Uj(t,e,n);n=qj(t,e,n);return n}function Vj(t,e,i){const n=[];for(const t of i){const e=n[n.length-1];if(!e){n.push(t);continue}if(t.seq1Range.start-e.seq1Range.endExclusive<=2||t.seq2Range.start-e.seq2Range.endExclusive<=2){n[n.length-1]=new Pj(e.seq1Range.join(t.seq1Range),e.seq2Range.join(t.seq2Range))}else{n.push(t)}}return n}function Uj(t,e,i){const n=[];if(i.length>0){n.push(i[0])}for(let t=1;t0?i[n-1].seq2Range.endExclusive:-1;const o=n+10?i[n-1].seq1Range.endExclusive:-1;const o=n+1s&&i.getElement(t.seq2Range.start-o)===i.getElement(t.seq2Range.endExclusive-o)&&ol){l=c;h=n}}if(h!==0){return new Pj(t.seq1Range.delta(h),t.seq2Range.delta(h))}return t}class Gj{compute(t,e,i=jj.instance){if(t.length===0||e.length===0){return Bj.trivial(t,e)}function n(i,n){while(i=this.negativeArr.length){const t=this.negativeArr;this.negativeArr=new Int32Array(t.length*2);this.negativeArr.set(t)}this.negativeArr[t]=e}else{if(t>=this.positiveArr.length){const t=this.positiveArr;this.positiveArr=new Int32Array(t.length*2);this.positiveArr.set(t)}this.positiveArr[t]=e}}}class Qj{constructor(){this.positiveArr=[];this.negativeArr=[]}get(t){if(t<0){t=-t-1;return this.negativeArr[t]}else{return this.positiveArr[t]}}set(t,e){if(t<0){t=-t-1;this.negativeArr[t]=e}else{this.positiveArr[t]=e}}}class Yj{constructor(){this.dynamicProgrammingDiffing=new Hj;this.myersDiffingAlgorithm=new Gj}computeDiff(t,e,i){const n=i.maxComputationTimeMs===0?jj.instance:new $j(i.maxComputationTimeMs);const s=!i.ignoreTrimWhitespace;const r=new Map;function o(t){let e=r.get(t);if(e===undefined){e=r.size;r.set(t,e)}return e}const c=t.map((t=>o(t.trim())));const h=e.map((t=>o(t.trim())));const l=new s$(c,t);const a=new s$(h,e);const u=(()=>{if(l.length+a.length<1500){return this.dynamicProgrammingDiffing.compute(l,a,n,((i,n)=>t[i]===e[n]?e[n].length===0?.1:1+Math.log(1+e[n].length):.99))}return this.myersDiffingAlgorithm.compute(l,a)})();let d=u.diffs;let f=u.hitTimeout;d=Wj(l,a,d);const g=[];const p=i=>{if(!s){return}for(let r=0;ri.seq1Range.start-m===i.seq2Range.start-w));const r=i.seq1Range.start-m;p(r);m=i.seq1Range.endExclusive;w=i.seq2Range.endExclusive;const o=this.refineDiff(t,e,i,n,s);if(o.hitTimeout){f=true}for(const t of o.mappings){g.push(t)}}p(t.length-m);const b=e$(g,t,e);return new yj(b,f)}refineDiff(t,e,i,n,s){const r=new o$(t,i.seq1Range,s);const o=new o$(e,i.seq2Range,s);const c=r.length+o.length<500?this.dynamicProgrammingDiffing.compute(r,o,n):this.myersDiffingAlgorithm.compute(r,o,n);let h=c.diffs;h=Wj(r,o,h);h=Xj(r,o,h);h=Vj(r,o,h);const l=h.map((t=>new xj(r.translateRange(t.seq1Range),o.translateRange(t.seq2Range))));return{mappings:l,hitTimeout:c.hitTimeout}}}function Xj(t,e,i){const n=[];let s=undefined;function r(){if(!s){return}const t=s.s1Range.length-s.deleted;if(Math.max(s.deleted,s.added)+(s.count-1)>t){n.push(new Pj(s.s1Range,s.s2Range))}s=undefined}for(const h of i){function o(t,e){var i,n,o,c;if(!s||!s.s1Range.containsRange(t)||!s.s2Range.containsRange(e)){if(s&&!(s.s1Range.endExclusive0||e.length>0){const n=t[0];const s=e[0];let r;if(n&&(!s||n.seq1Range.start0&&i[i.length-1].seq1Range.endExclusive>=r.seq1Range.start){i[i.length-1]=i[i.length-1].join(r)}else{i.push(r)}}return i}function e$(t,e,i){const n=[];for(const s of n$(t.map((t=>i$(t,e,i))),((t,e)=>t.originalRange.overlapOrTouch(e.originalRange)||t.modifiedRange.overlapOrTouch(e.modifiedRange)))){const t=s[0];const e=s[s.length-1];n.push(new kj(t.originalRange.join(e.originalRange),t.modifiedRange.join(e.modifiedRange),s.map((t=>t.innerChanges[0]))))}xR((()=>CR(n,((t,e)=>e.originalRange.startLineNumber-t.originalRange.endLineNumberExclusive===e.modifiedRange.startLineNumber-t.modifiedRange.endLineNumberExclusive&&t.originalRange.endLineNumberExclusive=i[t.modifiedRange.startLineNumber-1].length&&t.originalRange.startColumn-1>=e[t.originalRange.startLineNumber-1].length){n=1}if(t.modifiedRange.endColumn===1&&t.originalRange.endColumn===1&&t.originalRange.startLineNumber+n<=t.originalRange.endLineNumber&&t.modifiedRange.startLineNumber+n<=t.modifiedRange.endLineNumber){s=-1}const r=new Cj(t.originalRange.startLineNumber+n,t.originalRange.endLineNumber+1+s);const o=new Cj(t.modifiedRange.startLineNumber+n,t.modifiedRange.endLineNumber+1+s);return new kj(r,o,[t])}function*n$(t,e){let i;let n;for(const s of t){if(n!==undefined&&e(n,s)){i.push(s)}else{if(i){yield i}i=[s]}n=s}if(i){yield i}}class s${constructor(t,e){this.trimmedHash=t;this.lines=e}getElement(t){return this.trimmedHash[t]}get length(){return this.trimmedHash.length}getBoundaryScore(t){const e=t===0?0:r$(this.lines[t-1]);const i=t===this.lines.length?0:r$(this.lines[t]);return 1e3-(e+i)}}function r$(t){let e=0;while(e0&&e.endExclusive>=t.length){e=new Nj(e.start-1,e.endExclusive);n=true}this.lineRange=e;for(let e=this.lineRange.start;eString.fromCharCode(t))).join("")}getElement(t){return this.elements[t]}get length(){return this.elements.length}getBoundaryScore(t){const e=a$(t>0?this.elements[t-1]:-1);const i=a$(tt){i=n}else{e=n+1}}const n=e===0?0:this.firstCharOffsetByLineMinusOne[e-1];return new pO(this.lineRange.start+e+1,t-n+1+this.offsetByLine[e])}translateRange(t){return mO.fromPositions(this.translateOffset(t.start),this.translateOffset(t.endExclusive))}findWordContaining(t){if(t<0||t>=this.elements.length){return undefined}if(!c$(this.elements[t])){return undefined}let e=t;while(e>0&&c$(this.elements[e-1])){e--}let i=t;while(i=97&&t<=122||t>=65&&t<=90||t>=48&&t<=57}const h$={[0]:0,[1]:0,[2]:0,[3]:10,[4]:2,[5]:3,[6]:10,[7]:10};function l$(t){return h$[t]}function a$(t){if(t===10){return 7}else if(t===13){return 6}else if(u$(t)){return 5}else if(t>=97&&t<=122){return 0}else if(t>=65&&t<=90){return 1}else if(t>=48&&t<=57){return 2}else if(t===-1){return 3}else{return 4}}function u$(t){return t===32||t===9}const d$={smart:new Dj,experimental:new Yj};var f$=undefined&&undefined.__awaiter||function(t,e,i,n){function s(t){return t instanceof i?t:new i((function(e){e(t)}))}return new(i||(i=Promise))((function(i,r){function o(t){try{h(n.next(t))}catch(t){r(t)}}function c(t){try{h(n["throw"](t))}catch(t){r(t)}}function h(t){t.done?i(t.value):s(t.value).then(o,c)}h((n=n.apply(t,e||[])).next())}))};class g$ extends UP{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(t){return this._lines[t-1]}getWordAtPosition(t,e){const i=jA(t.column,BA(e),this._lines[t.lineNumber-1],0);if(i){return new mO(t.lineNumber,i.startColumn,t.lineNumber,i.endColumn)}return null}words(t){const e=this._lines;const i=this._wordenize.bind(this);let n=0;let s="";let r=0;let o=[];return{*[Symbol.iterator](){while(true){if(rthis._lines.length){e=this._lines.length;i=this._lines[e-1].length+1;n=true}else{const t=this._lines[e-1].length+1;if(i<1){i=1;n=true}else if(i>t){i=t;n=true}}if(!n){return t}else{return{lineNumber:e,column:i}}}}class p${constructor(t,e){this._host=t;this._models=Object.create(null);this._foreignModuleFactory=e;this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(t){return this._models[t]}_getModels(){const t=[];Object.keys(this._models).forEach((e=>t.push(this._models[e])));return t}acceptNewModel(t){this._models[t.url]=new g$(sO.parse(t.url),t.lines,t.EOL,t.versionId)}acceptModelChanged(t,e){if(!this._models[t]){return}const i=this._models[t];i.onEvents(e)}acceptRemovedModel(t){if(!this._models[t]){return}delete this._models[t]}computeUnicodeHighlights(t,e,i){return f$(this,void 0,void 0,(function*(){const n=this._getModel(t);if(!n){return{ranges:[],hasMore:false,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}return mj.computeUnicodeHighlights(n,e,i)}))}computeDiff(t,e,i,n){return f$(this,void 0,void 0,(function*(){const s=this._getModel(t);const r=this._getModel(e);if(!s||!r){return null}return p$.computeDiff(s,r,i,n)}))}static computeDiff(t,e,i,n){const s=n==="experimental"?d$.experimental:d$.smart;const r=t.getLinesContent();const o=e.getLinesContent();const c=s.computeDiff(r,o,i);const h=c.changes.length>0?false:this._modelsAreIdentical(t,e);return{identical:h,quitEarly:c.hitTimeout,changes:c.changes.map((t=>{var e;return[t.originalRange.startLineNumber,t.originalRange.endLineNumberExclusive,t.modifiedRange.startLineNumber,t.modifiedRange.endLineNumberExclusive,(e=t.innerChanges)===null||e===void 0?void 0:e.map((t=>[t.originalRange.startLineNumber,t.originalRange.startColumn,t.originalRange.endLineNumber,t.originalRange.endColumn,t.modifiedRange.startLineNumber,t.modifiedRange.startColumn,t.modifiedRange.endLineNumber,t.modifiedRange.endColumn]))]}))}}static _modelsAreIdentical(t,e){const i=t.getLineCount();const n=e.getLineCount();if(i!==n){return false}for(let n=1;n<=i;n++){const i=t.getLineContent(n);const s=e.getLineContent(n);if(i!==s){return false}}return true}computeMoreMinimalEdits(t,e,i){return f$(this,void 0,void 0,(function*(){const n=this._getModel(t);if(!n){return e}const s=[];let r=undefined;e=e.slice(0).sort(((t,e)=>{if(t.range&&e.range){return mO.compareRangesUsingStarts(t.range,e.range)}const i=t.range?0:1;const n=e.range?0:1;return i-n}));for(let{range:t,text:o,eol:c}of e){if(typeof c==="number"){r=c}if(mO.isEmpty(t)&&!o){continue}const e=n.getValueInRange(t);o=o.replace(/\r\n|\n|\r/g,n.eol);if(e===o){continue}if(Math.max(o.length,e.length)>p$._diffLimit){s.push({range:t,text:o});continue}const h=IP(e,o,i);const l=n.offsetAt(mO.lift(t).getStartPosition());for(const t of h){const e=n.positionAt(l+t.originalStart);const i=n.positionAt(l+t.originalStart+t.originalLength);const r={text:o.substr(t.modifiedStart,t.modifiedLength),range:{startLineNumber:e.lineNumber,startColumn:e.column,endLineNumber:i.lineNumber,endColumn:i.column}};if(n.getValueInRange(r.range)!==r.text){s.push(r)}}}if(typeof r==="number"){s.push({eol:r,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}})}return s}))}computeLinks(t){return f$(this,void 0,void 0,(function*(){const e=this._getModel(t);if(!e){return null}return ej(e)}))}textualSuggest(t,e,i,n){return f$(this,void 0,void 0,(function*(){const s=new PL(true);const r=new RegExp(i,n);const o=new Set;t:for(const i of t){const t=this._getModel(i);if(!t){continue}for(const i of t.words(r)){if(i===e||!isNaN(Number(i))){continue}o.add(i);if(o.size>p$._suggestionsLimit){break t}}}return{words:Array.from(o),duration:s.elapsed()}}))}computeWordRanges(t,e,i,n){return f$(this,void 0,void 0,(function*(){const s=this._getModel(t);if(!s){return Object.create(null)}const r=new RegExp(i,n);const o=Object.create(null);for(let t=e.startLineNumber;tthis._host.fhr(t,e);const s=UE(i,n);const r={host:s,getMirrorModels:()=>this._getModels()};if(this._foreignModuleFactory){this._foreignModule=this._foreignModuleFactory(r,e);return Promise.resolve(VE(this._foreignModule))}return Promise.reject(new Error(`Unexpected usage`))}fmr(t,e){if(!this._foreignModule||typeof this._foreignModule[t]!=="function"){return Promise.reject(new Error("Missing requestHandler or method: "+t))}try{return Promise.resolve(this._foreignModule[t].apply(this._foreignModule,e))}catch(t){return Promise.reject(t)}}}p$._diffLimit=1e5;p$._suggestionsLimit=1e4;if(typeof importScripts==="function"){globalThis.monaco=SF()}const m$=bR("textResourceConfigurationService");const w$=bR("textResourcePropertiesService");const b$=bR("logService");var v$;(function(t){t[t["Off"]=0]="Off";t[t["Trace"]=1]="Trace";t[t["Debug"]=2]="Debug";t[t["Info"]=3]="Info";t[t["Warning"]=4]="Warning";t[t["Error"]=5]="Error"})(v$||(v$={}));const y$=v$.Info;class k$ extends OL{constructor(){super(...arguments);this.level=y$;this._onDidChangeLogLevel=this._register(new UL);this.onDidChangeLogLevel=this._onDidChangeLogLevel.event}setLevel(t){if(this.level!==t){this.level=t;this._onDidChangeLogLevel.fire(this.level)}}getLevel(){return this.level}checkLogLevel(t){return this.level!==v$.Off&&this.level<=t}}class x$ extends k${constructor(t=y$,e=true){super();this.useColors=e;this.setLevel(t)}trace(t,...e){if(this.checkLogLevel(v$.Trace)){if(this.useColors){console.log("%cTRACE","color: #888",t,...e)}else{console.log(t,...e)}}}debug(t,...e){if(this.checkLogLevel(v$.Debug)){if(this.useColors){console.log("%cDEBUG","background: #eee; color: #888",t,...e)}else{console.log(t,...e)}}}info(t,...e){if(this.checkLogLevel(v$.Info)){if(this.useColors){console.log("%c INFO","color: #33f",t,...e)}else{console.log(t,...e)}}}error(t,...e){if(this.checkLogLevel(v$.Error)){if(this.useColors){console.log("%c ERR","color: #f33",t,...e)}else{console.error(t,...e)}}}dispose(){}}class C$ extends k${constructor(t){super();this.loggers=t;if(t.length){this.setLevel(t[0].getLevel())}}setLevel(t){for(const e of this.loggers){e.setLevel(t)}super.setLevel(t)}trace(t,...e){for(const i of this.loggers){i.trace(t,...e)}}debug(t,...e){for(const i of this.loggers){i.debug(t,...e)}}info(t,...e){for(const i of this.loggers){i.info(t,...e)}}error(t,...e){for(const i of this.loggers){i.error(t,...e)}}dispose(){for(const t of this.loggers){t.dispose()}}}function S$(t){switch(t){case v$.Trace:return"trace";case v$.Debug:return"debug";case v$.Info:return"info";case v$.Warning:return"warn";case v$.Error:return"error";case v$.Off:return"off"}}new aI("logLevel",S$(v$.Info));const D$=bR("ILanguageFeaturesService");var A$=undefined&&undefined.__decorate||function(t,e,i,n){var s=arguments.length,r=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,i):n,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(t,e,i,n);else for(var c=t.length-1;c>=0;c--)if(o=t[c])r=(s<3?o(r):s>3?o(e,i,r):o(e,i))||r;return s>3&&r&&Object.defineProperty(e,i,r),r};var E$=undefined&&undefined.__param||function(t,e){return function(i,n){e(i,n,t)}};var M$=undefined&&undefined.__awaiter||function(t,e,i,n){function s(t){return t instanceof i?t:new i((function(e){e(t)}))}return new(i||(i=Promise))((function(i,r){function o(t){try{h(n.next(t))}catch(t){r(t)}}function c(t){try{h(n["throw"](t))}catch(t){r(t)}}function h(t){t.done?i(t.value):s(t.value).then(o,c)}h((n=n.apply(t,e||[])).next())}))};const L$=60*1e3;const _$=5*60*1e3;function O$(t,e){const i=t.getModel(e);if(!i){return false}if(i.isTooLargeForSyncing()){return false}return true}let F$=class t extends OL{constructor(t,e,i,n,s){super();this._modelService=t;this._workerManager=this._register(new R$(this._modelService,n));this._logService=i;this._register(s.linkProvider.register({language:"*",hasAccessToAllModels:true},{provideLinks:(t,e)=>{if(!O$(this._modelService,t.uri)){return Promise.resolve({links:[]})}return this._workerManager.withWorker().then((e=>e.computeLinks(t.uri))).then((t=>t&&{links:t}))}}));this._register(s.completionProvider.register("*",new T$(this._workerManager,e,this._modelService,n)))}dispose(){super.dispose()}canComputeUnicodeHighlights(t){return O$(this._modelService,t)}computedUnicodeHighlights(t,e,i){return this._workerManager.withWorker().then((n=>n.computedUnicodeHighlights(t,e,i)))}computeDiff(t,e,i,n){return M$(this,void 0,void 0,(function*(){const s=yield this._workerManager.withWorker().then((s=>s.computeDiff(t,e,i,n)));if(!s){return null}const r={identical:s.identical,quitEarly:s.quitEarly,changes:s.changes.map((t=>{var e;return new kj(new Cj(t[0],t[1]),new Cj(t[2],t[3]),(e=t[4])===null||e===void 0?void 0:e.map((t=>new xj(new mO(t[0],t[1],t[2],t[3]),new mO(t[4],t[5],t[6],t[7])))))}))};return r}))}computeMoreMinimalEdits(t,e,i=false){if(XA(e)){if(!O$(this._modelService,t)){return Promise.resolve(e)}const n=PL.create(true);const s=this._workerManager.withWorker().then((n=>n.computeMoreMinimalEdits(t,e,i)));s.finally((()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",t.toString(true),n.elapsed())));return Promise.race([s,WB(1e3).then((()=>e))])}else{return Promise.resolve(undefined)}}canNavigateValueSet(t){return O$(this._modelService,t)}navigateValueSet(t,e,i){return this._workerManager.withWorker().then((n=>n.navigateValueSet(t,e,i)))}canComputeWordRanges(t){return O$(this._modelService,t)}computeWordRanges(t,e){return this._workerManager.withWorker().then((i=>i.computeWordRanges(t,e)))}};F$=A$([E$(0,OB),E$(1,m$),E$(2,b$),E$(3,gB),E$(4,D$)],F$);class T${constructor(t,e,i,n){this.languageConfigurationService=n;this._debugDisplayName="wordbasedCompletions";this._workerManager=t;this._configurationService=e;this._modelService=i}provideCompletionItems(t,e){return M$(this,void 0,void 0,(function*(){const i=this._configurationService.getValue(t.uri,e,"editor");if(!i.wordBasedSuggestions){return undefined}const n=[];if(i.wordBasedSuggestionsMode==="currentDocument"){if(O$(this._modelService,t.uri)){n.push(t.uri)}}else{for(const e of this._modelService.getModels()){if(!O$(this._modelService,e.uri)){continue}if(e===t){n.unshift(e.uri)}else if(i.wordBasedSuggestionsMode==="allDocuments"||e.getLanguageId()===t.getLanguageId()){n.push(e.uri)}}}if(n.length===0){return undefined}const s=this.languageConfigurationService.getLanguageConfiguration(t.getLanguageId()).getWordDefinition();const r=t.getWordAtPosition(e);const o=!r?mO.fromPositions(e):new mO(e.lineNumber,r.startColumn,e.lineNumber,r.endColumn);const c=o.setEndPosition(e.lineNumber,e.column);const h=yield this._workerManager.withWorker();const l=yield h.textualSuggest(n,r===null||r===void 0?void 0:r.word,s);if(!l){return undefined}return{duration:l.duration,suggestions:l.words.map((t=>({kind:18,label:t,insertText:t,range:{insert:c,replace:o}})))}}))}}class R$ extends OL{constructor(t,e){super();this.languageConfigurationService=e;this._modelService=t;this._editorWorkerClient=null;this._lastWorkerUsedTime=(new Date).getTime();const i=this._register(new KB);i.cancelAndSet((()=>this._checkStopIdleWorker()),Math.round(_$/2));this._register(this._modelService.onModelRemoved((t=>this._checkStopEmptyWorker())))}dispose(){if(this._editorWorkerClient){this._editorWorkerClient.dispose();this._editorWorkerClient=null}super.dispose()}_checkStopEmptyWorker(){if(!this._editorWorkerClient){return}const t=this._modelService.getModels();if(t.length===0){this._editorWorkerClient.dispose();this._editorWorkerClient=null}}_checkStopIdleWorker(){if(!this._editorWorkerClient){return}const t=(new Date).getTime()-this._lastWorkerUsedTime;if(t>_$){this._editorWorkerClient.dispose();this._editorWorkerClient=null}}withWorker(){this._lastWorkerUsedTime=(new Date).getTime();if(!this._editorWorkerClient){this._editorWorkerClient=new P$(this._modelService,false,"editorWorkerService",this.languageConfigurationService)}return Promise.resolve(this._editorWorkerClient)}}class I$ extends OL{constructor(t,e,i){super();this._syncedModels=Object.create(null);this._syncedModelsLastUsedTime=Object.create(null);this._proxy=t;this._modelService=e;if(!i){const t=new KB;t.cancelAndSet((()=>this._checkStopModelSync()),Math.round(L$/2));this._register(t)}}dispose(){for(const t in this._syncedModels){EL(this._syncedModels[t])}this._syncedModels=Object.create(null);this._syncedModelsLastUsedTime=Object.create(null);super.dispose()}ensureSyncedResources(t,e){for(const i of t){const t=i.toString();if(!this._syncedModels[t]){this._beginModelSync(i,e)}if(this._syncedModels[t]){this._syncedModelsLastUsedTime[t]=(new Date).getTime()}}}_checkStopModelSync(){const t=(new Date).getTime();const e=[];for(const i in this._syncedModelsLastUsedTime){const n=t-this._syncedModelsLastUsedTime[i];if(n>L$){e.push(i)}}for(const t of e){this._stopModelSync(t)}}_beginModelSync(t,e){const i=this._modelService.getModel(t);if(!i){return}if(!e&&i.isTooLargeForSyncing()){return}const n=t.toString();this._proxy.acceptNewModel({url:i.uri.toString(),lines:i.getLinesContent(),EOL:i.getEOL(),versionId:i.getVersionId()});const s=new _L;s.add(i.onDidChangeContent((t=>{this._proxy.acceptModelChanged(n.toString(),t)})));s.add(i.onWillDispose((()=>{this._stopModelSync(n)})));s.add(LL((()=>{this._proxy.acceptRemovedModel(n)})));this._syncedModels[n]=s}_stopModelSync(t){const e=this._syncedModels[t];delete this._syncedModels[t];delete this._syncedModelsLastUsedTime[t];EL(e)}}class N${constructor(t){this._instance=t;this._proxyObj=Promise.resolve(this._instance)}dispose(){this._instance.dispose()}getProxyObject(){return this._proxyObj}}class B${constructor(t){this._workerClient=t}fhr(t,e){return this._workerClient.fhr(t,e)}}class P$ extends OL{constructor(t,e,i,n){super();this.languageConfigurationService=n;this._disposed=false;this._modelService=t;this._keepIdleModels=e;this._workerFactory=new yP(i);this._worker=null;this._modelManager=null}fhr(t,e){throw new Error(`Not implemented!`)}_getOrCreateWorker(){if(!this._worker){try{this._worker=this._register(new uP(this._workerFactory,"vs/editor/common/services/editorSimpleWorker",new B$(this)))}catch(t){sP(t);this._worker=new N$(new p$(new B$(this),null))}}return this._worker}_getProxy(){return this._getOrCreateWorker().getProxyObject().then(undefined,(t=>{sP(t);this._worker=new N$(new p$(new B$(this),null));return this._getOrCreateWorker().getProxyObject()}))}_getOrCreateModelManager(t){if(!this._modelManager){this._modelManager=this._register(new I$(t,this._modelService,this._keepIdleModels))}return this._modelManager}_withSyncedResources(t,e=false){return M$(this,void 0,void 0,(function*(){if(this._disposed){return Promise.reject(wL())}return this._getProxy().then((i=>{this._getOrCreateModelManager(i).ensureSyncedResources(t,e);return i}))}))}computedUnicodeHighlights(t,e,i){return this._withSyncedResources([t]).then((n=>n.computeUnicodeHighlights(t.toString(),e,i)))}computeDiff(t,e,i,n){return this._withSyncedResources([t,e],true).then((s=>s.computeDiff(t.toString(),e.toString(),i,n)))}computeMoreMinimalEdits(t,e,i){return this._withSyncedResources([t]).then((n=>n.computeMoreMinimalEdits(t.toString(),e,i)))}computeLinks(t){return this._withSyncedResources([t]).then((e=>e.computeLinks(t.toString())))}textualSuggest(t,e,i){return M$(this,void 0,void 0,(function*(){const n=yield this._withSyncedResources(t);const s=i.source;const r=zF(i);return n.textualSuggest(t.map((t=>t.toString())),e,s,r)}))}computeWordRanges(t,e){return this._withSyncedResources([t]).then((i=>{const n=this._modelService.getModel(t);if(!n){return Promise.resolve(null)}const s=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId()).getWordDefinition();const r=s.source;const o=zF(s);return i.computeWordRanges(t.toString(),e,r,o)}))}navigateValueSet(t,e,i){return this._withSyncedResources([t]).then((n=>{const s=this._modelService.getModel(t);if(!s){return null}const r=this.languageConfigurationService.getLanguageConfiguration(s.getLanguageId()).getWordDefinition();const o=r.source;const c=zF(r);return n.navigateValueSet(t.toString(),e,i,o,c)}))}dispose(){super.dispose();this._disposed=true}}function j$(t,e,i){return new $$(t,e,i)}class $$ extends P${constructor(t,e,i){super(t,i.keepIdleModels||false,i.label,e);this._foreignModuleId=i.moduleId;this._foreignModuleCreateData=i.createData||null;this._foreignModuleHost=i.host||null;this._foreignProxy=null}fhr(t,e){if(!this._foreignModuleHost||typeof this._foreignModuleHost[t]!=="function"){return Promise.reject(new Error("Missing method "+t+" or missing main thread foreign host."))}try{return Promise.resolve(this._foreignModuleHost[t].apply(this._foreignModuleHost,e))}catch(t){return Promise.reject(t)}}_getForeignProxy(){if(!this._foreignProxy){this._foreignProxy=this._getProxy().then((t=>{const e=this._foreignModuleHost?VE(this._foreignModuleHost):[];return t.loadForeignModule(this._foreignModuleId,this._foreignModuleCreateData,e).then((e=>{this._foreignModuleCreateData=null;const i=(e,i)=>t.fmr(e,i);const n=(t,e)=>function(){const i=Array.prototype.slice.call(arguments,0);return e(t,i)};const s={};for(const t of e){s[t]=n(t,i)}return s}))}))}return this._foreignProxy}getProxy(){return this._getForeignProxy()}withSyncedResources(t){return this._withSyncedResources(t).then((t=>this.getProxy()))}}class z${static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static getClassNameFromMetadata(t){const e=this.getForeground(t);let i="mtk"+e;const n=this.getFontStyle(t);if(n&1){i+=" mtki"}if(n&2){i+=" mtkb"}if(n&4){i+=" mtku"}if(n&8){i+=" mtks"}return i}static getInlineStyleFromMetadata(t,e){const i=this.getForeground(t);const n=this.getFontStyle(t);let s=`color: ${e[i]};`;if(n&1){s+="font-style: italic;"}if(n&2){s+="font-weight: bold;"}let r="";if(n&4){r+=" underline"}if(n&8){r+=" line-through"}if(r){s+=`text-decoration:${r};`}return s}static getPresentationFromMetadata(t){const e=this.getForeground(t);const i=this.getFontStyle(t);return{foreground:e,italic:Boolean(i&1),bold:Boolean(i&2),underline:Boolean(i&4),strikethrough:Boolean(i&8)}}}class H${static createEmpty(t,e){const i=H$.defaultTokenMetadata;const n=new Uint32Array(2);n[0]=t.length;n[1]=i;return new H$(n,t,e)}constructor(t,e,i){this._lineTokensBrand=undefined;this._tokens=t;this._tokensCount=this._tokens.length>>>1;this._text=e;this._languageIdCodec=i}equals(t){if(t instanceof H$){return this.slicedEquals(t,0,this._tokensCount)}return false}slicedEquals(t,e,i){if(this._text!==t._text){return false}if(this._tokensCount!==t._tokensCount){return false}const n=e<<1;const s=n+(i<<1);for(let e=n;e0){return this._tokens[t-1<<1]}return 0}getMetadata(t){const e=this._tokens[(t<<1)+1];return e}getLanguageId(t){const e=this._tokens[(t<<1)+1];const i=z$.getLanguageId(e);return this._languageIdCodec.decodeLanguageId(i)}getStandardTokenType(t){const e=this._tokens[(t<<1)+1];return z$.getTokenType(e)}getForeground(t){const e=this._tokens[(t<<1)+1];return z$.getForeground(e)}getClassName(t){const e=this._tokens[(t<<1)+1];return z$.getClassNameFromMetadata(e)}getInlineStyle(t,e){const i=this._tokens[(t<<1)+1];return z$.getInlineStyleFromMetadata(i,e)}getPresentation(t){const e=this._tokens[(t<<1)+1];return z$.getPresentationFromMetadata(e)}getEndOffset(t){return this._tokens[t<<1]}findTokenIndexAtOffset(t){return H$.findIndexInTokensArray(this._tokens,t)}inflate(){return this}sliceAndInflate(t,e,i){return new W$(this,t,e,i)}static convertToEndOffset(t,e){const i=t.length>>>1;const n=i-1;for(let e=0;e>>1)-1;while(ie){n=s}}return i}withInserted(t){if(t.length===0){return this}let e=0;let i=0;let n="";const s=new Array;let r=0;while(true){const o=er){n+=this._text.substring(r,c.offset);const t=this._tokens[(e<<1)+1];s.push(n.length,t);r=c.offset}n+=c.text;s.push(n.length,c.tokenMetadata);i++}else{break}}return new H$(new Uint32Array(s),n,this._languageIdCodec)}}H$.defaultTokenMetadata=(0<<11|1<<15|2<<24)>>>0;class W${constructor(t,e,i,n){this._source=t;this._startOffset=e;this._endOffset=i;this._deltaOffset=n;this._firstTokenIndex=t.findTokenIndexAtOffset(e);this._tokensCount=0;for(let e=this._firstTokenIndex,n=t.getCount();e=i){break}this._tokensCount++}}getMetadata(t){return this._source.getMetadata(this._firstTokenIndex+t)}getLanguageId(t){return this._source.getLanguageId(this._firstTokenIndex+t)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(t){if(t instanceof W$){return this._startOffset===t._startOffset&&this._endOffset===t._endOffset&&this._deltaOffset===t._deltaOffset&&this._source.slicedEquals(t._source,this._firstTokenIndex,this._tokensCount)}return false}getCount(){return this._tokensCount}getForeground(t){return this._source.getForeground(this._firstTokenIndex+t)}getEndOffset(t){const e=this._source.getEndOffset(this._firstTokenIndex+t);return Math.min(this._endOffset,e)-this._startOffset+this._deltaOffset}getClassName(t){return this._source.getClassName(this._firstTokenIndex+t)}getInlineStyle(t,e){return this._source.getInlineStyle(this._firstTokenIndex+t,e)}getPresentation(t){return this._source.getPresentation(this._firstTokenIndex+t)}findTokenIndexAtOffset(t){return this._source.findTokenIndexAtOffset(t+this._startOffset-this._deltaOffset)-this._firstTokenIndex}}class V${constructor(t,e,i,n){this.startColumn=t;this.endColumn=e;this.className=i;this.type=n;this._lineDecorationBrand=undefined}static _equals(t,e){return t.startColumn===e.startColumn&&t.endColumn===e.endColumn&&t.className===e.className&&t.type===e.type}static equalsArr(t,e){const i=t.length;const n=e.length;if(i!==n){return false}for(let n=0;n=s){continue}o[c++]=new V$(Math.max(1,e.startColumn-n+1),Math.min(r+1,e.endColumn-n+1),e.className,e.type)}return o}static filter(t,e,i,n){if(t.length===0){return[]}const s=[];let r=0;for(let o=0,c=t.length;oe){continue}if(h.isEmpty()&&(c.type===0||c.type===3)){continue}const l=h.startLineNumber===e?h.startColumn:i;const a=h.endLineNumber===e?h.endColumn:n;s[r++]=new V$(l,a,c.inlineClassName,c.type)}return s}static _typeCompare(t,e){const i=[2,0,1,3];return i[t]-i[e]}static compare(t,e){if(t.startColumn!==e.startColumn){return t.startColumn-e.startColumn}if(t.endColumn!==e.endColumn){return t.endColumn-e.endColumn}const i=V$._typeCompare(t.type,e.type);if(i!==0){return i}if(t.className!==e.className){return t.className0&&this.stopOffsets[0]0&&e=t){this.stopOffsets.splice(n,0,t);this.classNames.splice(n,0,e);this.metadata.splice(n,0,i);break}}}this.count++;return}}class K${static normalize(t,e){if(e.length===0){return[]}const i=[];const n=new q$;let s=0;for(let r=0,o=e.length;r1){const e=t.charCodeAt(c-2);if(nT(e)){c--}}if(h>1){const e=t.charCodeAt(h-2);if(nT(e)){h--}}const u=c-1;const d=h-2;s=n.consumeLowerThan(u,s,i);if(n.count===0){s=u}n.insert(d,l,a)}n.consumeLowerThan(1073741824,s,i);return i}}class G${constructor(t,e,i,n){this.endIndex=t;this.type=e;this.metadata=i;this.containsRTL=n;this._linePartBrand=undefined}isWhitespace(){return this.metadata&1?true:false}isPseudoAfter(){return this.metadata&4?true:false}}class Z${constructor(t,e){this.startOffset=t;this.endOffset=e}equals(t){return this.startOffset===t.startOffset&&this.endOffset===t.endOffset}}class J${constructor(t,e,i,n,s,r,o,c,h,l,a,u,d,f,g,p,m,w,b){this.useMonospaceOptimizations=t;this.canUseHalfwidthRightwardsArrow=e;this.lineContent=i;this.continuesWithWrappedLine=n;this.isBasicASCII=s;this.containsRTL=r;this.fauxIndentLength=o;this.lineTokens=c;this.lineDecorations=h.sort(V$.compare);this.tabSize=l;this.startVisibleColumn=a;this.spaceWidth=u;this.stopRenderingLineAfter=g;this.renderWhitespace=p==="all"?4:p==="boundary"?1:p==="selection"?2:p==="trailing"?3:0;this.renderControlCharacters=m;this.fontLigatures=w;this.selectionsOnLine=b&&b.sort(((t,e)=>t.startOffset>>16}static getCharIndex(t){return(t&65535)>>>0}constructor(t,e){this.length=t;this._data=new Uint32Array(this.length);this._horizontalOffset=new Uint32Array(this.length)}setColumnInfo(t,e,i,n){const s=(e<<16|i<<0)>>>0;this._data[t-1]=s;this._horizontalOffset[t-1]=n}getHorizontalOffset(t){if(this._horizontalOffset.length===0){return 0}return this._horizontalOffset[t-1]}charOffsetToPartData(t){if(this.length===0){return 0}if(t<0){return this._data[0]}if(t>=this.length){return this._data[this.length-1]}return this._data[t]}getDomPosition(t){const e=this.charOffsetToPartData(t-1);const i=Y$.getPartIndex(e);const n=Y$.getCharIndex(e);return new Q$(i,n)}getColumn(t,e){const i=this.partDataToCharOffset(t.partIndex,e,t.charIndex);return i+1}partDataToCharOffset(t,e,i){if(this.length===0){return 0}const n=(t<<16|i<<0)>>>0;let s=0;let r=this.length-1;while(s+1>>1;const e=this._data[t];if(e===n){return t}else if(e>n){r=t}else{s=t}}if(s===r){return s}const o=this._data[s];const c=this._data[r];if(o===n){return s}if(c===n){return r}const h=Y$.getPartIndex(o);const l=Y$.getCharIndex(o);const a=Y$.getPartIndex(c);let u;if(h!==a){u=e}else{u=Y$.getCharIndex(c)}const d=i-l;const f=u-i;if(d<=f){return s}return r}}class X${constructor(t,e,i){this._renderLineOutputBrand=undefined;this.characterMapping=t;this.containsRTL=e;this.containsForeignElements=i}}function tz(t,e){if(t.lineContent.length===0){if(t.lineDecorations.length>0){e.appendString(``);let i=0;let n=0;let s=0;for(const r of t.lineDecorations){if(r.type===1||r.type===2){e.appendString(``);if(r.type===1){s|=1;i++}if(r.type===2){s|=2;n++}}}e.appendString(``);const r=new Y$(1,i+n);r.setColumnInfo(1,i,0,0);return new X$(r,false,s)}e.appendString("");return new X$(new Y$(0,0),false,0)}return uz(sz(t),e)}class ez{constructor(t,e,i,n){this.characterMapping=t;this.html=e;this.containsRTL=i;this.containsForeignElements=n}}function iz(t){const e=new rN(1e4);const i=tz(t,e);return new ez(i.characterMapping,e.build(),i.containsRTL,i.containsForeignElements)}class nz{constructor(t,e,i,n,s,r,o,c,h,l,a,u,d,f,g,p){this.fontIsMonospace=t;this.canUseHalfwidthRightwardsArrow=e;this.lineContent=i;this.len=n;this.isOverflowing=s;this.overflowingCharCount=r;this.parts=o;this.containsForeignElements=c;this.fauxIndentLength=h;this.tabSize=l;this.startVisibleColumn=a;this.containsRTL=u;this.spaceWidth=d;this.renderSpaceCharCode=f;this.renderWhitespace=g;this.renderControlCharacters=p}}function sz(t){const e=t.lineContent;let i;let n;let s;if(t.stopRenderingLineAfter!==-1&&t.stopRenderingLineAfter0){for(let e=0,i=t.lineDecorations.length;e0){r[o++]=new G$(n,"",0,false)}let c=n;for(let h=0,l=i.getCount();h=s){const i=e?pT(t.substring(c,s)):false;r[o++]=new G$(s,a,0,i);break}const u=e?pT(t.substring(c,l)):false;r[o++]=new G$(l,a,0,u);c=l}return r}function oz(t,e,i){let n=0;const s=[];let r=0;if(i){for(let i=0,o=e.length;i=50){s[r++]=new G$(l+1,e,i,h);a=l+1;l=-1}}if(a!==c){s[r++]=new G$(c,e,i,h)}}else{s[r++]=o}n=c}}else{for(let t=0,i=e.length;t50){const t=i.type;const e=i.metadata;const h=i.containsRTL;const l=Math.ceil(c/50);for(let i=1;i=8234&&t<=8238||t>=8294&&t<=8297||t>=8206&&t<=8207||t===1564){return true}return false}function hz(t,e){const i=[];let n=new G$(0,"",0,false);let s=0;for(const r of e){const e=r.endIndex;for(;sn.endIndex){n=new G$(s,r.type,r.metadata,r.containsRTL);i.push(n)}n=new G$(s+1,"mtkcontrol",r.metadata,false);i.push(n)}}if(s>n.endIndex){n=new G$(e,r.type,r.metadata,r.containsRTL);i.push(n)}}return i}function lz(t,e,i,n){const s=t.continuesWithWrappedLine;const r=t.fauxIndentLength;const o=t.tabSize;const c=t.startVisibleColumn;const h=t.useMonospaceOptimizations;const l=t.selectionsOnLine;const a=t.renderWhitespace===1;const u=t.renderWhitespace===3;const d=t.renderSpaceWidth!==t.spaceWidth;const f=[];let g=0;let p=0;let m=n[p].type;let w=n[p].containsRTL;let b=n[p].endIndex;const v=n.length;let y=false;let k=WF(e);let x;if(k===-1){y=true;k=i;x=i}else{x=UF(e)}let C=false;let S=0;let D=l&&l[S];let A=c%o;for(let t=r;t=D.endOffset){S++;D=l&&l[S]}let c;if(tx){c=true}else if(s===9){c=true}else if(s===32){if(a){if(C){c=true}else{const n=t+1t}if(c&&u){c=y||t>x}if(c&&w){if(t>=k&&t<=x){c=false}}if(C){if(!c||!h&&A>=o){if(d){const e=g>0?f[g-1].endIndex:r;for(let i=e+1;i<=t;i++){f[g++]=new G$(i,"mtkw",1,false)}}else{f[g++]=new G$(t,"mtkw",1,false)}A=A%o}}else{if(t===b||c&&t>r){f[g++]=new G$(t,m,0,w);A=A%o}}if(s===9){A=o}else if(yT(s)){A+=2}else{A++}C=c;while(t===b){p++;if(p0?e.charCodeAt(i-1):0;const n=i>1?e.charCodeAt(i-2):0;const s=t===32&&(n!==32&&n!==9);if(!s){E=true}}else{E=true}}if(E){if(d){const t=g>0?f[g-1].endIndex:r;for(let e=t+1;e<=i;e++){f[g++]=new G$(e,"mtkw",1,false)}}else{f[g++]=new G$(i,"mtkw",1,false)}}else{f[g++]=new G$(i,m,0,w)}return f}function az(t,e,i,n){n.sort(V$.compare);const s=K$.normalize(t,n);const r=s.length;let o=0;const c=[];let h=0;let l=0;for(let t=0,e=i.length;tl){l=t.startOffset;c[h++]=new G$(l,a,u,d)}if(t.endOffset+1<=n){l=t.endOffset+1;c[h++]=new G$(l,a+" "+t.className,u|t.metadata,d);o++}else{l=n;c[h++]=new G$(l,a+" "+t.className,u|t.metadata,d);break}}if(n>l){l=n;c[h++]=new G$(l,a,u,d)}}const a=i[i.length-1].endIndex;if(o')}else{e.appendString("")}for(let t=0,c=l.length;t=a){e+=s}}}if(A){e.appendString(' style="width:');e.appendString(String(g*i));e.appendString('px"')}e.appendASCIICharCode(62);for(;y1){e.appendCharCode(8594)}else{e.appendCharCode(65515)}for(let t=2;t<=o;t++){e.appendCharCode(160)}}else{s=2;o=1;e.appendCharCode(p);e.appendCharCode(8204)}x+=s;C+=o;if(y>=a){k+=o}}}else{e.appendASCIICharCode(62);for(;y=a){k+=s}}}if(E){S++}else{S=0}if(y>=o&&!v&&c.isPseudoAfter()){v=true;b.setColumnInfo(y+1,t,x,C)}e.appendString("")}if(!v){b.setColumnInfo(o+1,l.length-1,x,C)}if(c){e.appendString('');e.appendString(KD("showMore","Show more ({0})",fz(h)));e.appendString("")}e.appendString("");return new X$(b,f,s)}function dz(t){return t.toString(16).toUpperCase().padStart(4,"0")}function fz(t){if(t<1024){return KD("overflow.chars","{0} chars",t)}if(t<1024*1024){return`${(t/1024).toFixed(1)} KB`}return`${(t/1024/1024).toFixed(1)} MB`}class gz{constructor(t,e,i,n){this._viewportBrand=undefined;this.top=t|0;this.left=e|0;this.width=i|0;this.height=n|0}}class pz{constructor(t,e){this.tabSize=t;this.data=e}}class mz{constructor(t,e,i,n,s,r,o){this._viewLineDataBrand=undefined;this.content=t;this.continuesWithWrappedLine=e;this.minColumn=i;this.maxColumn=n;this.startVisibleColumn=s;this.tokens=r;this.inlineDecorations=o}}class wz{constructor(t,e,i,n,s,r,o,c,h,l){this.minColumn=t;this.maxColumn=e;this.content=i;this.continuesWithWrappedLine=n;this.isBasicASCII=wz.isBasicASCII(i,r);this.containsRTL=wz.containsRTL(i,this.isBasicASCII,s);this.tokens=o;this.inlineDecorations=c;this.tabSize=h;this.startVisibleColumn=l}static isBasicASCII(t,e){if(e){return wT(t)}return true}static containsRTL(t,e,i){if(!e&&i){return pT(t)}return false}}class bz{constructor(t,e,i){this.range=t;this.inlineClassName=e;this.type=i}}class vz{constructor(t,e,i,n){this.startOffset=t;this.endOffset=e;this.inlineClassName=i;this.inlineClassNameAffectsLetterSpacing=n}toInlineDecoration(t){return new bz(new mO(t,this.startOffset+1,t,this.endOffset+1),this.inlineClassName,this.inlineClassNameAffectsLetterSpacing?3:0)}}class yz{constructor(t,e){this._viewModelDecorationBrand=undefined;this.range=t;this.options=e}}class kz{constructor(t,e,i){this.color=t;this.zIndex=e;this.data=i}static cmp(t,e){if(t.zIndex===e.zIndex){if(t.colore.color){return 1}return 0}return t.zIndex-e.zIndex}}function xz(t){return Array.isArray(t)}function Cz(t){return!xz(t)}function Sz(t){return typeof t==="string"}function Dz(t){return!Sz(t)}function Az(t){return t?false:true}function Ez(t,e){return t.ignoreCase&&e?e.toLowerCase():e}function Mz(t){return t.replace(/[&<>'"_]/g,"-")}function Lz(t,e){console.log(`${t.languageId}: ${e}`)}function _z(t,e){return new Error(`${t.languageId}: ${e}`)}function Oz(t,e,i,n,s){const r=/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g;let o=null;return e.replace(r,(function(e,r,c,h,l,a,u,d,f){if(!Az(c)){return"$"}if(!Az(h)){return Ez(t,i)}if(!Az(l)&&l0){const e=t.tokenizer[i];if(e){return e}const n=i.lastIndexOf(".");if(n<0){i=null}else{i=i.substr(0,n)}}return null}function Tz(t,e){let i=e;while(i&&i.length>0){const e=t.stateNames[i];if(e){return true}const n=i.lastIndexOf(".");if(n<0){i=null}else{i=i.substr(0,n)}}return false}var Rz=undefined&&undefined.__decorate||function(t,e,i,n){var s=arguments.length,r=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,i):n,o;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(t,e,i,n);else for(var c=t.length-1;c>=0;c--)if(o=t[c])r=(s<3?o(r):s>3?o(e,i,r):o(e,i))||r;return s>3&&r&&Object.defineProperty(e,i,r),r};var Iz=undefined&&undefined.__param||function(t,e){return function(i,n){e(i,n,t)}};const Nz=5;class Bz{static create(t,e){return this._INSTANCE.create(t,e)}constructor(t){this._maxCacheDepth=t;this._entries=Object.create(null)}create(t,e){if(t!==null&&t.depth>=this._maxCacheDepth){return new Pz(t,e)}let i=Pz.getStackElementId(t);if(i.length>0){i+="|"}i+=e;let n=this._entries[i];if(n){return n}n=new Pz(t,e);this._entries[i]=n;return n}}Bz._INSTANCE=new Bz(Nz);class Pz{constructor(t,e){this.parent=t;this.state=e;this.depth=(this.parent?this.parent.depth:0)+1}static getStackElementId(t){let e="";while(t!==null){if(e.length>0){e+="|"}e+=t.state;t=t.parent}return e}static _equals(t,e){while(t!==null&&e!==null){if(t===e){return true}if(t.state!==e.state){return false}t=t.parent;e=e.parent}if(t===null&&e===null){return true}return false}equals(t){return Pz._equals(this,t)}push(t){return Bz.create(this,t)}pop(){return this.parent}popall(){let t=this;while(t.parent){t=t.parent}return t}switchTo(t){return Bz.create(this.parent,t)}}class jz{constructor(t,e){this.languageId=t;this.state=e}equals(t){return this.languageId===t.languageId&&this.state.equals(t.state)}clone(){const t=this.state.clone();if(t===this.state){return this}return new jz(this.languageId,this.state)}}class $z{static create(t,e){return this._INSTANCE.create(t,e)}constructor(t){this._maxCacheDepth=t;this._entries=Object.create(null)}create(t,e){if(e!==null){return new zz(t,e)}if(t!==null&&t.depth>=this._maxCacheDepth){return new zz(t,e)}const i=Pz.getStackElementId(t);let n=this._entries[i];if(n){return n}n=new zz(t,null);this._entries[i]=n;return n}}$z._INSTANCE=new $z(Nz);class zz{constructor(t,e){this.stack=t;this.embeddedLanguageData=e}clone(){const t=this.embeddedLanguageData?this.embeddedLanguageData.clone():null;if(t===this.embeddedLanguageData){return this}return $z.create(this.stack,this.embeddedLanguageData)}equals(t){if(!(t instanceof zz)){return false}if(!this.stack.equals(t.stack)){return false}if(this.embeddedLanguageData===null&&t.embeddedLanguageData===null){return true}if(this.embeddedLanguageData===null||t.embeddedLanguageData===null){return false}return this.embeddedLanguageData.equals(t.embeddedLanguageData)}}class Hz{constructor(){this._tokens=[];this._languageId=null;this._lastTokenType=null;this._lastTokenLanguage=null}enterLanguage(t){this._languageId=t}emit(t,e){if(this._lastTokenType===e&&this._lastTokenLanguage===this._languageId){return}this._lastTokenType=e;this._lastTokenLanguage=this._languageId;this._tokens.push(new DO(t,e,this._languageId))}nestedLanguageTokenize(t,e,i,n){const s=i.languageId;const r=i.state;const o=PO.get(s);if(!o){this.enterLanguage(s);this.emit(n,"");return r}const c=o.tokenize(t,e,r);if(n!==0){for(const t of c.tokens){this._tokens.push(new DO(t.offset+n,t.type,t.language))}}else{this._tokens=this._tokens.concat(c.tokens)}this._lastTokenType=null;this._lastTokenLanguage=null;this._languageId=null;return c.endState}finalize(t){return new AO(this._tokens,t)}}class Wz{constructor(t,e){this._languageService=t;this._theme=e;this._prependTokens=null;this._tokens=[];this._currentLanguageId=0;this._lastTokenMetadata=0}enterLanguage(t){this._currentLanguageId=this._languageService.languageIdCodec.encodeLanguageId(t)}emit(t,e){const i=this._theme.match(this._currentLanguageId,e)|1024;if(this._lastTokenMetadata===i){return}this._lastTokenMetadata=i;this._tokens.push(t);this._tokens.push(i)}static _merge(t,e,i){const n=t!==null?t.length:0;const s=e.length;const r=i!==null?i.length:0;if(n===0&&s===0&&r===0){return new Uint32Array(0)}if(n===0&&s===0){return i}if(s===0&&r===0){return t}const o=new Uint32Array(n+s+r);if(t!==null){o.set(t)}for(let t=0;t{if(r){return}let e=false;for(let i=0,n=t.changedLanguages.length;i{if(t.affectsConfiguration("editor.maxTokenizationLineLength")){this._maxTokenizationLineLength=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:this._languageId})}}))}dispose(){this._tokenizationRegistryListener.dispose()}getLoadStatus(){const e=[];for(const i in this._embeddedLanguages){const n=PO.get(i);if(n){if(n instanceof t){const t=n.getLoadStatus();if(t.loaded===false){e.push(t.promise)}}continue}if(!PO.isResolved(i)){e.push(PO.getOrCreate(i))}}if(e.length===0){return{loaded:true}}return{loaded:false,promise:Promise.all(e).then((t=>undefined))}}getInitialState(){const t=Bz.create(null,this._lexer.start);return $z.create(t,null)}tokenize(t,e,i){if(t.length>=this._maxTokenizationLineLength){return LB(this._languageId,i)}const n=new Hz;const s=this._tokenize(t,e,i,n);return n.finalize(s)}tokenizeEncoded(t,e,i){if(t.length>=this._maxTokenizationLineLength){return _B(this._languageService.languageIdCodec.encodeLanguageId(this._languageId),i)}const n=new Wz(this._languageService,this._standaloneThemeService.getColorTheme().tokenTheme);const s=this._tokenize(t,e,i,n);return n.finalize(s)}_tokenize(t,e,i,n){if(i.embeddedLanguageData){return this._nestedTokenize(t,e,i,0,n)}else{return this._myTokenize(t,e,i,0,n)}}_findLeavingNestedLanguageOffset(t,e){let i=this._lexer.tokenizer[e.stack.state];if(!i){i=Fz(this._lexer,e.stack.state);if(!i){throw _z(this._lexer,"tokenizer state is not defined: "+e.stack.state)}}let n=-1;let s=false;for(const e of i){if(!Dz(e.action)||e.action.nextEmbedded!=="@pop"){continue}s=true;let i=e.regex;const r=e.regex.source;if(r.substr(0,4)==="^(?:"&&r.substr(r.length-1,1)===")"){const t=(i.ignoreCase?"i":"")+(i.unicode?"u":"");i=new RegExp(r.substr(4,r.length-5),t)}const o=t.search(i);if(o===-1||o!==0&&e.matchOnlyAtLineStart){continue}if(n===-1||o0){s.nestedLanguageTokenize(o,false,i.embeddedLanguageData,n)}const c=t.substring(r);return this._myTokenize(c,e,i,n+r,s)}_safeRuleName(t){if(t){return t.name}return"(unknown)"}_myTokenize(t,e,i,n,s){s.enterLanguage(this._languageId);const r=t.length;const o=e&&this._lexer.includeLF?t+"\n":t;const c=o.length;let h=i.embeddedLanguageData;let l=i.stack;let a=0;let u=null;let d=true;while(d||a=c){break}d=false;let t=this._lexer.tokenizer[p];if(!t){t=Fz(this._lexer,p);if(!t){throw _z(this._lexer,"tokenizer state is not defined: "+p)}}const e=o.substr(a);for(const i of t){if(a===0||!i.matchOnlyAtLineStart){m=e.match(i.regex);if(m){w=m[0];b=i.action;break}}}}if(!m){m=[""];w=""}if(!b){if(a=this._lexer.maxStack){throw _z(this._lexer,"maximum tokenizer stack size reached: ["+l.state+","+l.parent.state+",...]")}else{l=l.push(p)}}else if(b.next==="@pop"){if(l.depth<=1){throw _z(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(v))}else{l=l.pop()}}else if(b.next==="@popall"){l=l.popall()}else{let t=Oz(this._lexer,b.next,w,m,p);if(t[0]==="@"){t=t.substr(1)}if(!Fz(this._lexer,t)){throw _z(this._lexer,"trying to set a next state '"+t+"' that is undefined in rule: "+this._safeRuleName(v))}else{l=l.push(t)}}}if(b.log&&typeof b.log==="string"){Lz(this._lexer,this._lexer.languageId+": "+Oz(this._lexer,b.log,w,m,p))}}if(k===null){throw _z(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(v))}const x=i=>{const r=this._languageService.getLanguageIdByLanguageName(i)||this._languageService.getLanguageIdByMimeType(i)||i;const o=this._getNestedEmbeddedLanguageData(r);if(a0){throw _z(this._lexer,"groups cannot be nested: "+this._safeRuleName(v))}if(m.length!==k.length+1){throw _z(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(v))}let t=0;for(let e=1;et});class Zz{static colorizeElement(t,e,i,n){n=n||{};const s=n.theme||"vs";const r=n.mimeType||i.getAttribute("lang")||i.getAttribute("data-lang");if(!r){console.error("Mode not detected");return Promise.resolve()}const o=e.getLanguageIdByMimeType(r)||r;t.setTheme(s);const c=i.firstChild?i.firstChild.nodeValue:"";i.className+=" "+s;const h=t=>{var e;const n=(e=Gz===null||Gz===void 0?void 0:Gz.createHTML(t))!==null&&e!==void 0?e:t;i.innerHTML=n};return this.colorize(e,c||"",o,n).then(h,(t=>console.error(t)))}static colorize(t,e,i,n){return qz(this,void 0,void 0,(function*(){const s=t.languageIdCodec;let r=4;if(n&&typeof n.tabSize==="number"){r=n.tabSize}if(CT(e)){e=e.substr(1)}const o=HF(e);if(!t.isRegisteredLanguageId(i)){return Qz(o,r,s)}const c=yield PO.getOrCreate(i);if(c){return Jz(o,r,c,s)}return Qz(o,r,s)}))}static colorizeLine(t,e,i,n,s=4){const r=wz.isBasicASCII(t,e);const o=wz.containsRTL(t,r,i);const c=iz(new J$(false,true,t,false,r,o,0,n,[],s,0,0,0,0,-1,"none",false,false,null));return c.html}static colorizeModelLine(t,e,i=4){const n=t.getLineContent(e);t.tokenization.forceTokenization(e);const s=t.tokenization.getLineTokens(e);const r=s.inflate();return this.colorizeLine(n,t.mightContainNonBasicASCII(),t.mightContainRTL(),r,i)}}function Jz(t,e,i,n){return new Promise(((s,r)=>{const o=()=>{const c=Yz(t,e,i,n);if(i instanceof Vz){const t=i.getLoadStatus();if(t.loaded===false){t.promise.then(o,r);return}}s(c)};o()}))}function Qz(t,e,i){let n=[];const s=(0<<11|1<<15|2<<24)>>>0;const r=new Uint32Array(2);r[0]=0;r[1]=s;for(let s=0,o=t.length;s")}return n.join("")}function Yz(t,e,i,n){let s=[];let r=i.getInitialState();for(let o=0,c=t.length;o");r=h.endState}return s.join("")}const Xz={clipboard:{writeText:gA||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:gA||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},keyboard:(()=>{if(gA||QT()){return 0}if(navigator.keyboard||qT){return 1}return 2})(),touch:"ontouchstart"in window||navigator.maxTouchPoints>0,pointerEvents:window.PointerEvent&&("ontouchstart"in window||window.navigator.maxTouchPoints>0||navigator.maxTouchPoints>0)};function tH(t,e){if(typeof t==="number"){if(t===0){return null}const i=(t&65535)>>>0;const n=(t&4294901760)>>>16;if(n!==0){return new nH([eH(i,e),eH(n,e)])}return new nH([eH(i,e)])}else{const i=[];for(let n=0;n1?i-1:0),s=1;s/gm);var nW=SH(/^data-[\-\w.\u00B7-\uFFFF]/);var sW=SH(/^aria-[\-\w]+$/);var rW=SH(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i);var oW=SH(/^(?:\w+script|data):/i);var cW=SH(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g);var hW=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol==="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function lW(t){if(Array.isArray(t)){for(var e=0,i=Array(t.length);e0&&arguments[0]!==undefined?arguments[0]:aW();var e=function t(e){return dW(e)};e.version="2.3.1";e.removed=[];if(!t||!t.document||t.document.nodeType!==9){e.isSupported=false;return e}var i=t.document;var n=t.document;var s=t.DocumentFragment,r=t.HTMLTemplateElement,o=t.Node,c=t.Element,h=t.NodeFilter,l=t.NamedNodeMap,a=l===undefined?t.NamedNodeMap||t.MozNamedAttrMap:l,u=t.Text,d=t.Comment,f=t.DOMParser,g=t.trustedTypes;var p=c.prototype;var m=WH(p,"cloneNode");var w=WH(p,"nextSibling");var b=WH(p,"childNodes");var v=WH(p,"parentNode");if(typeof r==="function"){var y=n.createElement("template");if(y.content&&y.content.ownerDocument){n=y.content.ownerDocument}}var k=uW(g,i);var x=k&&tt?k.createHTML(""):"";var C=n,S=C.implementation,D=C.createNodeIterator,A=C.createDocumentFragment,E=C.getElementsByTagName;var M=i.importNode;var L={};try{L=HH(n).documentMode?n.documentMode:{}}catch(t){}var _={};e.isSupported=typeof v==="function"&&S&&typeof S.createHTMLDocument!=="undefined"&&L!==9;var O=eW,F=iW,T=nW,R=sW,I=oW,N=cW;var B=rW;var P=null;var j=zH({},[].concat(lW(VH),lW(UH),lW(qH),lW(GH),lW(JH)));var $=null;var z=zH({},[].concat(lW(QH),lW(YH),lW(XH),lW(tW)));var H=null;var W=null;var V=true;var U=true;var q=false;var K=false;var G=false;var Z=false;var J=false;var Q=false;var Y=false;var X=true;var tt=false;var et=true;var it=true;var nt=false;var st={};var rt=null;var ot=zH({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);var ct=null;var ht=zH({},["audio","video","img","source","image","track"]);var lt=null;var at=zH({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]);var ut="http://www.w3.org/1998/Math/MathML";var dt="http://www.w3.org/2000/svg";var ft="http://www.w3.org/1999/xhtml";var gt=ft;var pt=false;var mt=null;var wt=n.createElement("form");var bt=function t(e){if(mt&&mt===e){return}if(!e||(typeof e==="undefined"?"undefined":hW(e))!=="object"){e={}}e=HH(e);P="ALLOWED_TAGS"in e?zH({},e.ALLOWED_TAGS):j;$="ALLOWED_ATTR"in e?zH({},e.ALLOWED_ATTR):z;lt="ADD_URI_SAFE_ATTR"in e?zH(HH(at),e.ADD_URI_SAFE_ATTR):at;ct="ADD_DATA_URI_TAGS"in e?zH(HH(ht),e.ADD_DATA_URI_TAGS):ht;rt="FORBID_CONTENTS"in e?zH({},e.FORBID_CONTENTS):ot;H="FORBID_TAGS"in e?zH({},e.FORBID_TAGS):{};W="FORBID_ATTR"in e?zH({},e.FORBID_ATTR):{};st="USE_PROFILES"in e?e.USE_PROFILES:false;V=e.ALLOW_ARIA_ATTR!==false;U=e.ALLOW_DATA_ATTR!==false;q=e.ALLOW_UNKNOWN_PROTOCOLS||false;K=e.SAFE_FOR_TEMPLATES||false;G=e.WHOLE_DOCUMENT||false;Q=e.RETURN_DOM||false;Y=e.RETURN_DOM_FRAGMENT||false;X=e.RETURN_DOM_IMPORT!==false;tt=e.RETURN_TRUSTED_TYPE||false;J=e.FORCE_BODY||false;et=e.SANITIZE_DOM!==false;it=e.KEEP_CONTENT!==false;nt=e.IN_PLACE||false;B=e.ALLOWED_URI_REGEXP||B;gt=e.NAMESPACE||ft;if(K){U=false}if(Y){Q=true}if(st){P=zH({},[].concat(lW(JH)));$=[];if(st.html===true){zH(P,VH);zH($,QH)}if(st.svg===true){zH(P,UH);zH($,YH);zH($,tW)}if(st.svgFilters===true){zH(P,qH);zH($,YH);zH($,tW)}if(st.mathMl===true){zH(P,GH);zH($,XH);zH($,tW)}}if(e.ADD_TAGS){if(P===j){P=HH(P)}zH(P,e.ADD_TAGS)}if(e.ADD_ATTR){if($===z){$=HH($)}zH($,e.ADD_ATTR)}if(e.ADD_URI_SAFE_ATTR){zH(lt,e.ADD_URI_SAFE_ATTR)}if(e.FORBID_CONTENTS){if(rt===ot){rt=HH(rt)}zH(rt,e.FORBID_CONTENTS)}if(it){P["#text"]=true}if(G){zH(P,["html","head","body"])}if(P.table){zH(P,["tbody"]);delete H.tbody}if(CH){CH(e)}mt=e};var vt=zH({},["mi","mo","mn","ms","mtext"]);var yt=zH({},["foreignobject","desc","title","annotation-xml"]);var kt=zH({},UH);zH(kt,qH);zH(kt,KH);var xt=zH({},GH);zH(xt,ZH);var Ct=function t(e){var i=v(e);if(!i||!i.tagName){i={namespaceURI:ft,tagName:"template"}}var n=FH(e.tagName);var s=FH(i.tagName);if(e.namespaceURI===dt){if(i.namespaceURI===ft){return n==="svg"}if(i.namespaceURI===ut){return n==="svg"&&(s==="annotation-xml"||vt[s])}return Boolean(kt[n])}if(e.namespaceURI===ut){if(i.namespaceURI===ft){return n==="math"}if(i.namespaceURI===dt){return n==="math"&&yt[s]}return Boolean(xt[n])}if(e.namespaceURI===ft){if(i.namespaceURI===dt&&!yt[s]){return false}if(i.namespaceURI===ut&&!vt[s]){return false}var r=zH({},["title","style","font","a","script"]);return!xt[n]&&(r[n]||!kt[n])}return false};var St=function t(i){OH(e.removed,{element:i});try{i.parentNode.removeChild(i)}catch(t){try{i.outerHTML=x}catch(t){i.remove()}}};var Dt=function t(i,n){try{OH(e.removed,{attribute:n.getAttributeNode(i),from:n})}catch(t){OH(e.removed,{attribute:null,from:n})}n.removeAttribute(i);if(i==="is"&&!$[i]){if(Q||Y){try{St(n)}catch(t){}}else{try{n.setAttribute(i,"")}catch(t){}}}};var At=function t(e){var i=void 0;var s=void 0;if(J){e=""+e}else{var r=TH(e,/^[\r\n\t ]+/);s=r&&r[0]}var o=k?k.createHTML(e):e;if(gt===ft){try{i=(new f).parseFromString(o,"text/html")}catch(t){}}if(!i||!i.documentElement){i=S.createDocument(gt,"template",null);try{i.documentElement.innerHTML=pt?"":o}catch(t){}}var c=i.body||i.documentElement;if(e&&s){c.insertBefore(n.createTextNode(s),c.childNodes[0]||null)}if(gt===ft){return E.call(i,G?"html":"body")[0]}return G?i.documentElement:c};var Et=function t(e){return D.call(e.ownerDocument||e,e,h.SHOW_ELEMENT|h.SHOW_COMMENT|h.SHOW_TEXT,null,false)};var Mt=function t(e){if(e instanceof u||e instanceof d){return false}if(typeof e.nodeName!=="string"||typeof e.textContent!=="string"||typeof e.removeChild!=="function"||!(e.attributes instanceof a)||typeof e.removeAttribute!=="function"||typeof e.setAttribute!=="function"||typeof e.namespaceURI!=="string"||typeof e.insertBefore!=="function"){return true}return false};var Lt=function t(e){return(typeof o==="undefined"?"undefined":hW(o))==="object"?e instanceof o:e&&(typeof e==="undefined"?"undefined":hW(e))==="object"&&typeof e.nodeType==="number"&&typeof e.nodeName==="string"};var _t=function t(i,n,s){if(!_[i]){return}LH(_[i],(function(t){t.call(e,n,s,mt)}))};var Ot=function t(i){var n=void 0;_t("beforeSanitizeElements",i,null);if(Mt(i)){St(i);return true}if(TH(i.nodeName,/[\u0080-\uFFFF]/)){St(i);return true}var s=FH(i.nodeName);_t("uponSanitizeElement",i,{tagName:s,allowedTags:P});if(!Lt(i.firstElementChild)&&(!Lt(i.content)||!Lt(i.content.firstElementChild))&&BH(/<[/\w]/g,i.innerHTML)&&BH(/<[/\w]/g,i.textContent)){St(i);return true}if(s==="select"&&BH(/