!function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=5)}([function(e,t,n){"use strict";(function(e,r){n.d(t,"d",(function(){return p})),n.d(t,"b",(function(){return v})),n.d(t,"c",(function(){return y})),n.d(t,"a",(function(){return b})),n.d(t,"e",(function(){return C}));let i=!1,o=!1,s=!1,a=!1,u=!1,l=!1,c=void 0,h="en",f=void 0,d=void 0;const m=void 0!==e&&void 0!==e.versions&&void 0!==e.versions.electron&&"renderer"===e.type;if("object"!=typeof navigator||m){if("object"==typeof e){i="win32"===e.platform,o="darwin"===e.platform,s="linux"===e.platform,c="en",h="en";const t=e.env.VSCODE_NLS_CONFIG;if(t)try{const e=JSON.parse(t),n=e.availableLanguages["*"];c=e.locale,h=n||"en",f=e._translationsConfigFile}catch(e){}a=!0}}else i=(d=navigator.userAgent).indexOf("Windows")>=0,o=d.indexOf("Macintosh")>=0,l=(d.indexOf("Macintosh")>=0||d.indexOf("iPad")>=0||d.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,s=d.indexOf("Linux")>=0,u=!0,h=c=navigator.language;let g=0;o?g=1:i?g=3:s&&(g=2);const p=i,v=o,y=u,b="object"==typeof self?self:"object"==typeof r?r:{},C=function(){if(b.setImmediate)return b.setImmediate.bind(b);if("function"==typeof b.postMessage&&!b.importScripts){let e=[];b.addEventListener("message",t=>{if(t.data&&t.data.vscodeSetImmediateId)for(let n=0,r=e.length;n{const r=++t;e.push({id:r,callback:n}),b.postMessage({vscodeSetImmediateId:r},"*")}}if(void 0!==e&&"function"==typeof e.nextTick)return e.nextTick.bind(e);const t=Promise.resolve();return e=>t.then(e)}()}).call(this,n(3),n(4))},function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return o})),n.d(t,"b",(function(){return s})),n.d(t,"c",(function(){return a}));var r=n(0);const i=void 0===e?{cwd:()=>"/",env:Object.create(null),get platform(){return r.d?"win32":r.b?"darwin":"linux"},nextTick:e=>Object(r.e)(e)}:e,o=i.cwd,s=i.env,a=i.platform}).call(this,n(3))},function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return m}));var r,i,o,s=(r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});if("object"==typeof e)o="win32"===e.platform;else if("object"==typeof navigator){var a=navigator.userAgent;o=a.indexOf("Windows")>=0}var u=/^\w[\w\d+.-]*$/,l=/^\//,c=/^\/\//;var h="",f="/",d=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,m=function(){function e(e,t,n,r,i,o){void 0===o&&(o=!1),"object"==typeof e?(this.scheme=e.scheme||h,this.authority=e.authority||h,this.path=e.path||h,this.query=e.query||h,this.fragment=e.fragment||h):(this.scheme=function(e,t){return e||t?e:"file"}(e,o),this.authority=t||h,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==f&&(t=f+t):t=f}return t}(this.scheme,n||h),this.query=r||h,this.fragment=i||h,function(e,t){if(!e.scheme&&t)throw new Error('[UriError]: Scheme is missing: {scheme: "", authority: "'+e.authority+'", path: "'+e.path+'", query: "'+e.query+'", fragment: "'+e.fragment+'"}');if(e.scheme&&!u.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!l.test(e.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(c.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,o))}return e.isUri=function(t){return t instanceof e||!!t&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"function"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)},Object.defineProperty(e.prototype,"fsPath",{get:function(){return C(this,!1)},enumerable:!0,configurable:!0}),e.prototype.with=function(e){if(!e)return this;var t=e.scheme,n=e.authority,r=e.path,i=e.query,o=e.fragment;return void 0===t?t=this.scheme:null===t&&(t=h),void 0===n?n=this.authority:null===n&&(n=h),void 0===r?r=this.path:null===r&&(r=h),void 0===i?i=this.query:null===i&&(i=h),void 0===o?o=this.fragment:null===o&&(o=h),t===this.scheme&&n===this.authority&&r===this.path&&i===this.query&&o===this.fragment?this:new p(t,n,r,i,o)},e.parse=function(e,t){void 0===t&&(t=!1);var n=d.exec(e);return n?new p(n[2]||h,E(n[4]||h),E(n[5]||h),E(n[7]||h),E(n[9]||h),t):new p(h,h,h,h,h)},e.file=function(e){var t=h;if(o&&(e=e.replace(/\\/g,f)),e[0]===f&&e[1]===f){var n=e.indexOf(f,2);-1===n?(t=e.substring(2),e=f):(t=e.substring(2,n),e=e.substring(n)||f)}return new p("file",t,e,h,h)},e.from=function(e){return new p(e.scheme,e.authority,e.path,e.query,e.fragment)},e.prototype.toString=function(e){return void 0===e&&(e=!1),_(this,e)},e.prototype.toJSON=function(){return this},e.revive=function(t){if(t){if(t instanceof e)return t;var n=new p(t);return n._formatted=t.external,n._fsPath=t._sep===g?t.fsPath:null,n}return t},e}(),g=o?1:void 0,p=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._formatted=null,t._fsPath=null,t}return s(t,e),Object.defineProperty(t.prototype,"fsPath",{get:function(){return this._fsPath||(this._fsPath=C(this,!1)),this._fsPath},enumerable:!0,configurable:!0}),t.prototype.toString=function(e){return void 0===e&&(e=!1),e?_(this,!0):(this._formatted||(this._formatted=_(this,!1)),this._formatted)},t.prototype.toJSON=function(){var e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=g),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e},t}(m),v=((i={})[58]="%3A",i[47]="%2F",i[63]="%3F",i[35]="%23",i[91]="%5B",i[93]="%5D",i[64]="%40",i[33]="%21",i[36]="%24",i[38]="%26",i[39]="%27",i[40]="%28",i[41]="%29",i[42]="%2A",i[43]="%2B",i[44]="%2C",i[59]="%3B",i[61]="%3D",i[32]="%20",i);function y(e,t){for(var n=void 0,r=-1,i=0;i=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o)-1!==r&&(n+=encodeURIComponent(e.substring(r,i)),r=-1),void 0!==n&&(n+=e.charAt(i));else{void 0===n&&(n=e.substr(0,i));var s=v[o];void 0!==s?(-1!==r&&(n+=encodeURIComponent(e.substring(r,i)),r=-1),n+=s):-1===r&&(r=i)}}return-1!==r&&(n+=encodeURIComponent(e.substring(r))),void 0!==n?n:e}function b(e){for(var t=void 0,n=0;n1&&"file"===e.scheme?"//"+e.authority+e.path:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?t?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,o&&(n=n.replace(/\//g,"\\")),n}function _(e,t){var n=t?b:y,r="",i=e.scheme,o=e.authority,s=e.path,a=e.query,u=e.fragment;if(i&&(r+=i,r+=":"),(o||"file"===i)&&(r+=f,r+=f),o){var l=o.indexOf("@");if(-1!==l){var c=o.substr(0,l);o=o.substr(l+1),-1===(l=c.indexOf(":"))?r+=n(c,!1):(r+=n(c.substr(0,l),!1),r+=":",r+=n(c.substr(l+1),!1)),r+="@"}-1===(l=(o=o.toLowerCase()).indexOf(":"))?r+=n(o,!1):(r+=n(o.substr(0,l),!1),r+=o.substr(l))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2))(h=s.charCodeAt(1))>=65&&h<=90&&(s="/"+String.fromCharCode(h+32)+":"+s.substr(3));else if(s.length>=2&&58===s.charCodeAt(1)){var h;(h=s.charCodeAt(0))>=65&&h<=90&&(s=String.fromCharCode(h+32)+":"+s.substr(2))}r+=n(s,!0)}return a&&(r+="?",r+=n(a,!1)),u&&(r+="#",r+=t?u:y(u,!1)),r}var S=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function E(e){return e.match(S)?e.replace(S,(function(e){return function e(t){try{return decodeURIComponent(t)}catch(n){return t.length>3?t.substr(0,3)+e(t.substr(3)):t}}(e)})):e}}).call(this,n(3))},function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function a(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:s}catch(e){r=s}}();var u,l=[],c=!1,h=-1;function f(){c&&u&&(c=!1,u.length?l=u.concat(l):h=-1,l.length&&d())}function d(){if(!c){var e=a(f);c=!0;for(var t=l.length;t;){for(u=l,l=[];++h1)for(var n=1;n{if(e.stack)throw new Error(e.message+"\n\n"+e.stack);throw e},0)}}emit(e){this.listeners.forEach(t=>{t(e)})}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}};function i(e){a(e)||r.onUnexpectedError(e)}function o(e){if(e instanceof Error){let{name:t,message:n}=e;return{$isError:!0,name:t,message:n,stack:e.stacktrace||e.stack}}return e}const s="Canceled";function a(e){return e instanceof Error&&e.name===s&&e.message===s}var u;!function(e){e.is=function(e){return e&&"object"==typeof e&&"function"==typeof e[Symbol.iterator]};const t=Object.freeze([]);e.empty=function(){return t},e.single=function*(e){yield e},e.from=function(e){return e||t},e.first=function(e){return e[Symbol.iterator]().next().value},e.some=function(e,t){for(const n of e)if(t(n))return!0;return!1},e.filter=function*(e,t){for(const n of e)t(n)&&(yield n)},e.map=function*(e,t){for(const n of e)yield t(n)},e.concat=function*(...e){for(const t of e)for(const e of t)yield e},e.consume=function(t,n=Number.POSITIVE_INFINITY){const r=[];if(0===n)return[r,t];const i=t[Symbol.iterator]();for(let t=0;ti}]}}(u||(u={}));const l=!1,c="__is_disposable_tracked__";function h(e){if(l&&e&&e!==p.None)try{e[c]=!0}catch(e){}}function f(e){if(!l)return e;const t=new Error("Potentially leaked disposable").stack;return setTimeout(()=>{e[c]||console.log(t)},3e3),e}class d extends Error{constructor(e){super(`Encounter errors while disposing of store. Errors: [${e.join(", ")}]`),this.errors=e}}function m(e){if(u.is(e)){let t=[];for(const n of e)if(n){h(n);try{n.dispose()}catch(e){t.push(e)}}if(1===t.length)throw t[0];if(t.length>1)throw new d(t);return Array.isArray(e)?[]:e}if(e)return h(e),e.dispose(),e}class g{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(h(this),this._isDisposed=!0,this.clear())}clear(){try{m(this._toDispose.values())}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return h(e),this._isDisposed?g.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):this._toDispose.add(e),e}}g.DISABLE_DISPOSED_WARNING=!1;class p{constructor(){this._store=new g,f(this)}dispose(){h(this),this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}}p.None=Object.freeze({dispose(){}});var v=n(0);function y(e){const t=[];for(const n of function(e){let t=[],n=Object.getPrototypeOf(e);for(;Object.prototype!==n;)t=t.concat(Object.getOwnPropertyNames(n)),n=Object.getPrototypeOf(n);return t}(e))"function"==typeof e[n]&&t.push(n);return t}function b(e,t){const n=e=>(function(){const n=Array.prototype.slice.call(arguments,0);return t(e,n)});let r={};for(const t of e)r[t]=n(t);return r}const C="$initialize";class _{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null)}setWorkerId(e){this._workerId=e}sendMessage(e,t){let n=String(++this._lastSentReq);return new Promise((r,i)=>{this._pendingReplies[n]={resolve:r,reject:i},this._send({vsWorker:this._workerId,req:n,method:e,args:t})})}handleMessage(e){e&&e.vsWorker&&(-1!==this._workerId&&e.vsWorker!==this._workerId||this._handleMessage(e))}_handleMessage(e){if(e.seq){let t=e;if(!this._pendingReplies[t.seq])return void console.warn("Got reply to unknown seq");let n=this._pendingReplies[t.seq];if(delete this._pendingReplies[t.seq],t.err){let e=t.err;return t.err.$isError&&((e=new Error).name=t.err.name,e.message=t.err.message,e.stack=t.err.stack),void n.reject(e)}return void n.resolve(t.res)}let t=e,n=t.req;this._handler.handleMessage(t.method,t.args).then(e=>{this._send({vsWorker:this._workerId,seq:n,res:e,err:void 0})},e=>{e.detail instanceof Error&&(e.detail=o(e.detail)),this._send({vsWorker:this._workerId,seq:n,res:void 0,err:o(e)})})}_send(e){let t=[];if(e.req){const n=e;for(let e=0;e{e(t,n)},handleMessage:(e,t)=>this._handleMessage(e,t)})}onmessage(e){this._protocol.handleMessage(e)}_handleMessage(e,t){if(e===C)return this.initialize(t[0],t[1],t[2],t[3]);if(!this._requestHandler||"function"!=typeof this._requestHandler[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._requestHandler[e].apply(this._requestHandler,t))}catch(e){return Promise.reject(e)}}initialize(e,t,n,r){this._protocol.setWorkerId(e);const i=b(r,(e,t)=>this._protocol.sendMessage(e,t));return this._requestHandlerFactory?(this._requestHandler=this._requestHandlerFactory(i),Promise.resolve(y(this._requestHandler))):(t&&(void 0!==t.baseUrl&&delete t.baseUrl,void 0!==t.paths&&void 0!==t.paths.vs&&delete t.paths.vs,t.catchError=!0,self.require.config(t)),new Promise((e,t)=>{self.require([n],n=>{this._requestHandler=n.create(i),this._requestHandler?e(y(this._requestHandler)):t(new Error("No RequestHandler!"))},t)}))}}function E(e,t){return function e(t,n,r,i,o){if(i<=r)return;const s=r+(i-r)/2|0;if(e(t,n,r,s,o),e(t,n,s+1,i,o),n(t[s],t[s+1])<=0)return;!function(e,t,n,r,i,o){let s=n,a=r+1;for(let t=n;t<=i;t++)o[t]=e[t];for(let u=n;u<=i;u++)s>r?e[u]=o[a++]:a>i?e[u]=o[s++]:t(o[a],o[s])<0?e[u]=o[a++]:e[u]=o[s++]}(t,n,r,s,i,o)}(e,t,0,e.length-1,[]),e}class A{constructor(e,t,n,r){this.originalStart=e,this.originalLength=t,this.modifiedStart=n,this.modifiedLength=r}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}function x(e){return 55296<=e&&e<=56319}function N(e){return 56320<=e&&e<=57343}function w(e,t){return t-56320+(e-55296<<10)+65536}String.fromCharCode(65279);class L{constructor(){this._data=JSON.parse("[0,0,0,51592,51592,11,44424,44424,11,72251,72254,5,7150,7150,7,48008,48008,11,55176,55176,11,128420,128420,14,3276,3277,5,9979,9980,14,46216,46216,11,49800,49800,11,53384,53384,11,70726,70726,5,122915,122916,5,129320,129327,14,2558,2558,5,5906,5908,5,9762,9763,14,43360,43388,8,45320,45320,11,47112,47112,11,48904,48904,11,50696,50696,11,52488,52488,11,54280,54280,11,70082,70083,1,71350,71350,7,73111,73111,5,127892,127893,14,128726,128727,14,129473,129474,14,2027,2035,5,2901,2902,5,3784,3789,5,6754,6754,5,8418,8420,5,9877,9877,14,11088,11088,14,44008,44008,5,44872,44872,11,45768,45768,11,46664,46664,11,47560,47560,11,48456,48456,11,49352,49352,11,50248,50248,11,51144,51144,11,52040,52040,11,52936,52936,11,53832,53832,11,54728,54728,11,69811,69814,5,70459,70460,5,71096,71099,7,71998,71998,5,72874,72880,5,119149,119149,7,127374,127374,14,128335,128335,14,128482,128482,14,128765,128767,14,129399,129400,14,129680,129685,14,1476,1477,5,2377,2380,7,2759,2760,5,3137,3140,7,3458,3459,7,4153,4154,5,6432,6434,5,6978,6978,5,7675,7679,5,9723,9726,14,9823,9823,14,9919,9923,14,10035,10036,14,42736,42737,5,43596,43596,5,44200,44200,11,44648,44648,11,45096,45096,11,45544,45544,11,45992,45992,11,46440,46440,11,46888,46888,11,47336,47336,11,47784,47784,11,48232,48232,11,48680,48680,11,49128,49128,11,49576,49576,11,50024,50024,11,50472,50472,11,50920,50920,11,51368,51368,11,51816,51816,11,52264,52264,11,52712,52712,11,53160,53160,11,53608,53608,11,54056,54056,11,54504,54504,11,54952,54952,11,68108,68111,5,69933,69940,5,70197,70197,7,70498,70499,7,70845,70845,5,71229,71229,5,71727,71735,5,72154,72155,5,72344,72345,5,73023,73029,5,94095,94098,5,121403,121452,5,126981,127182,14,127538,127546,14,127990,127990,14,128391,128391,14,128445,128449,14,128500,128505,14,128752,128752,14,129160,129167,14,129356,129356,14,129432,129442,14,129648,129651,14,129751,131069,14,173,173,4,1757,1757,1,2274,2274,1,2494,2494,5,2641,2641,5,2876,2876,5,3014,3016,7,3262,3262,7,3393,3396,5,3570,3571,7,3968,3972,5,4228,4228,7,6086,6086,5,6679,6680,5,6912,6915,5,7080,7081,5,7380,7392,5,8252,8252,14,9096,9096,14,9748,9749,14,9784,9786,14,9833,9850,14,9890,9894,14,9938,9938,14,9999,9999,14,10085,10087,14,12349,12349,14,43136,43137,7,43454,43456,7,43755,43755,7,44088,44088,11,44312,44312,11,44536,44536,11,44760,44760,11,44984,44984,11,45208,45208,11,45432,45432,11,45656,45656,11,45880,45880,11,46104,46104,11,46328,46328,11,46552,46552,11,46776,46776,11,47000,47000,11,47224,47224,11,47448,47448,11,47672,47672,11,47896,47896,11,48120,48120,11,48344,48344,11,48568,48568,11,48792,48792,11,49016,49016,11,49240,49240,11,49464,49464,11,49688,49688,11,49912,49912,11,50136,50136,11,50360,50360,11,50584,50584,11,50808,50808,11,51032,51032,11,51256,51256,11,51480,51480,11,51704,51704,11,51928,51928,11,52152,52152,11,52376,52376,11,52600,52600,11,52824,52824,11,53048,53048,11,53272,53272,11,53496,53496,11,53720,53720,11,53944,53944,11,54168,54168,11,54392,54392,11,54616,54616,11,54840,54840,11,55064,55064,11,65438,65439,5,69633,69633,5,69837,69837,1,70018,70018,7,70188,70190,7,70368,70370,7,70465,70468,7,70712,70719,5,70835,70840,5,70850,70851,5,71132,71133,5,71340,71340,7,71458,71461,5,71985,71989,7,72002,72002,7,72193,72202,5,72281,72283,5,72766,72766,7,72885,72886,5,73104,73105,5,92912,92916,5,113824,113827,4,119173,119179,5,121505,121519,5,125136,125142,5,127279,127279,14,127489,127490,14,127570,127743,14,127900,127901,14,128254,128254,14,128369,128370,14,128400,128400,14,128425,128432,14,128468,128475,14,128489,128494,14,128715,128720,14,128745,128745,14,128759,128760,14,129004,129023,14,129296,129304,14,129340,129342,14,129388,129392,14,129404,129407,14,129454,129455,14,129485,129487,14,129659,129663,14,129719,129727,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2363,2363,7,2402,2403,5,2507,2508,7,2622,2624,7,2691,2691,7,2786,2787,5,2881,2884,5,3006,3006,5,3072,3072,5,3170,3171,5,3267,3268,7,3330,3331,7,3406,3406,1,3538,3540,5,3655,3662,5,3897,3897,5,4038,4038,5,4184,4185,5,4352,4447,8,6068,6069,5,6155,6157,5,6448,6449,7,6742,6742,5,6783,6783,5,6966,6970,5,7042,7042,7,7143,7143,7,7212,7219,5,7412,7412,5,8206,8207,4,8294,8303,4,8596,8601,14,9410,9410,14,9742,9742,14,9757,9757,14,9770,9770,14,9794,9794,14,9828,9828,14,9855,9855,14,9882,9882,14,9900,9903,14,9929,9933,14,9963,9967,14,9987,9988,14,10006,10006,14,10062,10062,14,10175,10175,14,11744,11775,5,42607,42607,5,43043,43044,7,43263,43263,5,43444,43445,7,43569,43570,5,43698,43700,5,43766,43766,5,44032,44032,11,44144,44144,11,44256,44256,11,44368,44368,11,44480,44480,11,44592,44592,11,44704,44704,11,44816,44816,11,44928,44928,11,45040,45040,11,45152,45152,11,45264,45264,11,45376,45376,11,45488,45488,11,45600,45600,11,45712,45712,11,45824,45824,11,45936,45936,11,46048,46048,11,46160,46160,11,46272,46272,11,46384,46384,11,46496,46496,11,46608,46608,11,46720,46720,11,46832,46832,11,46944,46944,11,47056,47056,11,47168,47168,11,47280,47280,11,47392,47392,11,47504,47504,11,47616,47616,11,47728,47728,11,47840,47840,11,47952,47952,11,48064,48064,11,48176,48176,11,48288,48288,11,48400,48400,11,48512,48512,11,48624,48624,11,48736,48736,11,48848,48848,11,48960,48960,11,49072,49072,11,49184,49184,11,49296,49296,11,49408,49408,11,49520,49520,11,49632,49632,11,49744,49744,11,49856,49856,11,49968,49968,11,50080,50080,11,50192,50192,11,50304,50304,11,50416,50416,11,50528,50528,11,50640,50640,11,50752,50752,11,50864,50864,11,50976,50976,11,51088,51088,11,51200,51200,11,51312,51312,11,51424,51424,11,51536,51536,11,51648,51648,11,51760,51760,11,51872,51872,11,51984,51984,11,52096,52096,11,52208,52208,11,52320,52320,11,52432,52432,11,52544,52544,11,52656,52656,11,52768,52768,11,52880,52880,11,52992,52992,11,53104,53104,11,53216,53216,11,53328,53328,11,53440,53440,11,53552,53552,11,53664,53664,11,53776,53776,11,53888,53888,11,54000,54000,11,54112,54112,11,54224,54224,11,54336,54336,11,54448,54448,11,54560,54560,11,54672,54672,11,54784,54784,11,54896,54896,11,55008,55008,11,55120,55120,11,64286,64286,5,66272,66272,5,68900,68903,5,69762,69762,7,69817,69818,5,69927,69931,5,70003,70003,5,70070,70078,5,70094,70094,7,70194,70195,7,70206,70206,5,70400,70401,5,70463,70463,7,70475,70477,7,70512,70516,5,70722,70724,5,70832,70832,5,70842,70842,5,70847,70848,5,71088,71089,7,71102,71102,7,71219,71226,5,71231,71232,5,71342,71343,7,71453,71455,5,71463,71467,5,71737,71738,5,71995,71996,5,72000,72000,7,72145,72147,7,72160,72160,5,72249,72249,7,72273,72278,5,72330,72342,5,72752,72758,5,72850,72871,5,72882,72883,5,73018,73018,5,73031,73031,5,73109,73109,5,73461,73462,7,94031,94031,5,94192,94193,7,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,126976,126979,14,127184,127231,14,127344,127345,14,127405,127461,14,127514,127514,14,127561,127567,14,127778,127779,14,127896,127896,14,127985,127986,14,127995,127999,5,128326,128328,14,128360,128366,14,128378,128378,14,128394,128397,14,128405,128406,14,128422,128423,14,128435,128443,14,128453,128464,14,128479,128480,14,128484,128487,14,128496,128498,14,128640,128709,14,128723,128724,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129096,129103,14,129292,129292,14,129311,129311,14,129329,129330,14,129344,129349,14,129360,129374,14,129394,129394,14,129402,129402,14,129413,129425,14,129445,129450,14,129466,129471,14,129483,129483,14,129511,129535,14,129653,129655,14,129667,129670,14,129705,129711,14,129731,129743,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,2307,2307,7,2366,2368,7,2382,2383,7,2434,2435,7,2497,2500,5,2519,2519,5,2563,2563,7,2631,2632,5,2677,2677,5,2750,2752,7,2763,2764,7,2817,2817,5,2879,2879,5,2891,2892,7,2914,2915,5,3008,3008,5,3021,3021,5,3076,3076,5,3146,3149,5,3202,3203,7,3264,3265,7,3271,3272,7,3298,3299,5,3390,3390,5,3402,3404,7,3426,3427,5,3535,3535,5,3544,3550,7,3635,3635,7,3763,3763,7,3893,3893,5,3953,3966,5,3981,3991,5,4145,4145,7,4157,4158,5,4209,4212,5,4237,4237,5,4520,4607,10,5970,5971,5,6071,6077,5,6089,6099,5,6277,6278,5,6439,6440,5,6451,6456,7,6683,6683,5,6744,6750,5,6765,6770,7,6846,6846,5,6964,6964,5,6972,6972,5,7019,7027,5,7074,7077,5,7083,7085,5,7146,7148,7,7154,7155,7,7222,7223,5,7394,7400,5,7416,7417,5,8204,8204,5,8233,8233,4,8288,8292,4,8413,8416,5,8482,8482,14,8986,8987,14,9193,9203,14,9654,9654,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9775,14,9792,9792,14,9800,9811,14,9825,9826,14,9831,9831,14,9852,9853,14,9872,9873,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9936,9936,14,9941,9960,14,9974,9974,14,9982,9985,14,9992,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10145,10145,14,11013,11015,14,11503,11505,5,12334,12335,5,12951,12951,14,42612,42621,5,43014,43014,5,43047,43047,7,43204,43205,5,43335,43345,5,43395,43395,7,43450,43451,7,43561,43566,5,43573,43574,5,43644,43644,5,43710,43711,5,43758,43759,7,44005,44005,5,44012,44012,7,44060,44060,11,44116,44116,11,44172,44172,11,44228,44228,11,44284,44284,11,44340,44340,11,44396,44396,11,44452,44452,11,44508,44508,11,44564,44564,11,44620,44620,11,44676,44676,11,44732,44732,11,44788,44788,11,44844,44844,11,44900,44900,11,44956,44956,11,45012,45012,11,45068,45068,11,45124,45124,11,45180,45180,11,45236,45236,11,45292,45292,11,45348,45348,11,45404,45404,11,45460,45460,11,45516,45516,11,45572,45572,11,45628,45628,11,45684,45684,11,45740,45740,11,45796,45796,11,45852,45852,11,45908,45908,11,45964,45964,11,46020,46020,11,46076,46076,11,46132,46132,11,46188,46188,11,46244,46244,11,46300,46300,11,46356,46356,11,46412,46412,11,46468,46468,11,46524,46524,11,46580,46580,11,46636,46636,11,46692,46692,11,46748,46748,11,46804,46804,11,46860,46860,11,46916,46916,11,46972,46972,11,47028,47028,11,47084,47084,11,47140,47140,11,47196,47196,11,47252,47252,11,47308,47308,11,47364,47364,11,47420,47420,11,47476,47476,11,47532,47532,11,47588,47588,11,47644,47644,11,47700,47700,11,47756,47756,11,47812,47812,11,47868,47868,11,47924,47924,11,47980,47980,11,48036,48036,11,48092,48092,11,48148,48148,11,48204,48204,11,48260,48260,11,48316,48316,11,48372,48372,11,48428,48428,11,48484,48484,11,48540,48540,11,48596,48596,11,48652,48652,11,48708,48708,11,48764,48764,11,48820,48820,11,48876,48876,11,48932,48932,11,48988,48988,11,49044,49044,11,49100,49100,11,49156,49156,11,49212,49212,11,49268,49268,11,49324,49324,11,49380,49380,11,49436,49436,11,49492,49492,11,49548,49548,11,49604,49604,11,49660,49660,11,49716,49716,11,49772,49772,11,49828,49828,11,49884,49884,11,49940,49940,11,49996,49996,11,50052,50052,11,50108,50108,11,50164,50164,11,50220,50220,11,50276,50276,11,50332,50332,11,50388,50388,11,50444,50444,11,50500,50500,11,50556,50556,11,50612,50612,11,50668,50668,11,50724,50724,11,50780,50780,11,50836,50836,11,50892,50892,11,50948,50948,11,51004,51004,11,51060,51060,11,51116,51116,11,51172,51172,11,51228,51228,11,51284,51284,11,51340,51340,11,51396,51396,11,51452,51452,11,51508,51508,11,51564,51564,11,51620,51620,11,51676,51676,11,51732,51732,11,51788,51788,11,51844,51844,11,51900,51900,11,51956,51956,11,52012,52012,11,52068,52068,11,52124,52124,11,52180,52180,11,52236,52236,11,52292,52292,11,52348,52348,11,52404,52404,11,52460,52460,11,52516,52516,11,52572,52572,11,52628,52628,11,52684,52684,11,52740,52740,11,52796,52796,11,52852,52852,11,52908,52908,11,52964,52964,11,53020,53020,11,53076,53076,11,53132,53132,11,53188,53188,11,53244,53244,11,53300,53300,11,53356,53356,11,53412,53412,11,53468,53468,11,53524,53524,11,53580,53580,11,53636,53636,11,53692,53692,11,53748,53748,11,53804,53804,11,53860,53860,11,53916,53916,11,53972,53972,11,54028,54028,11,54084,54084,11,54140,54140,11,54196,54196,11,54252,54252,11,54308,54308,11,54364,54364,11,54420,54420,11,54476,54476,11,54532,54532,11,54588,54588,11,54644,54644,11,54700,54700,11,54756,54756,11,54812,54812,11,54868,54868,11,54924,54924,11,54980,54980,11,55036,55036,11,55092,55092,11,55148,55148,11,55216,55238,9,65056,65071,5,65529,65531,4,68097,68099,5,68159,68159,5,69446,69456,5,69688,69702,5,69808,69810,7,69815,69816,7,69821,69821,1,69888,69890,5,69932,69932,7,69957,69958,7,70016,70017,5,70067,70069,7,70079,70080,7,70089,70092,5,70095,70095,5,70191,70193,5,70196,70196,5,70198,70199,5,70367,70367,5,70371,70378,5,70402,70403,7,70462,70462,5,70464,70464,5,70471,70472,7,70487,70487,5,70502,70508,5,70709,70711,7,70720,70721,7,70725,70725,7,70750,70750,5,70833,70834,7,70841,70841,7,70843,70844,7,70846,70846,7,70849,70849,7,71087,71087,5,71090,71093,5,71100,71101,5,71103,71104,5,71216,71218,7,71227,71228,7,71230,71230,7,71339,71339,5,71341,71341,5,71344,71349,5,71351,71351,5,71456,71457,7,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,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,123628,123631,5,125252,125258,5,126980,126980,14,127183,127183,14,127245,127247,14,127340,127343,14,127358,127359,14,127377,127386,14,127462,127487,6,127491,127503,14,127535,127535,14,127548,127551,14,127568,127569,14,127744,127777,14,127780,127891,14,127894,127895,14,127897,127899,14,127902,127984,14,127987,127989,14,127991,127994,14,128000,128253,14,128255,128317,14,128329,128334,14,128336,128359,14,128367,128368,14,128371,128377,14,128379,128390,14,128392,128393,14,128398,128399,14,128401,128404,14,128407,128419,14,128421,128421,14,128424,128424,14,128433,128434,14,128444,128444,14,128450,128452,14,128465,128467,14,128476,128478,14,128481,128481,14,128483,128483,14,128488,128488,14,128495,128495,14,128499,128499,14,128506,128591,14,128710,128714,14,128721,128722,14,128725,128725,14,128728,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,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,129664,129666,14,129671,129679,14,129686,129704,14,129712,129718,14,129728,129730,14,129744,129750,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,2259,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,3134,3136,5,3142,3144,5,3157,3158,5,3201,3201,5,3260,3260,5,3263,3263,5,3266,3266,5,3270,3270,5,3274,3275,7,3285,3286,5,3328,3329,5,3387,3388,5,3391,3392,7,3398,3400,7,3405,3405,5,3415,3415,5,3457,3457,5,3530,3530,5,3536,3537,7,3542,3542,5,3551,3551,5,3633,3633,5,3636,3642,5,3761,3761,5,3764,3772,5,3864,3865,5,3895,3895,5,3902,3903,7,3967,3967,7,3974,3975,5,3993,4028,5,4141,4144,5,4146,4151,5,4155,4156,7,4182,4183,7,4190,4192,5,4226,4226,5,4229,4230,5,4253,4253,5,4448,4519,9,4957,4959,5,5938,5940,5,6002,6003,5,6070,6070,7,6078,6085,7,6087,6088,7,6109,6109,5,6158,6158,4,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,6848,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,7673,5,8203,8203,4,8205,8205,13,8232,8232,4,8234,8238,4,8265,8265,14,8293,8293,4,8400,8412,5,8417,8417,5,8421,8432,5,8505,8505,14,8617,8618,14,9000,9000,14,9167,9167,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,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,9776,9783,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,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,9935,14,9937,9937,14,9939,9940,14,9961,9962,14,9968,9973,14,9975,9978,14,9981,9981,14,9986,9986,14,9989,9989,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,10084,14,10133,10135,14,10160,10160,14,10548,10549,14,11035,11036,14,11093,11093,14,11647,11647,5,12330,12333,5,12336,12336,14,12441,12442,5,12953,12953,14,42608,42610,5,42654,42655,5,43010,43010,5,43019,43019,5,43045,43046,5,43052,43052,5,43188,43203,7,43232,43249,5,43302,43309,5,43346,43347,7,43392,43394,5,43443,43443,5,43446,43449,5,43452,43453,5,43493,43493,5,43567,43568,7,43571,43572,7,43587,43587,5,43597,43597,7,43696,43696,5,43703,43704,5,43713,43713,5,43756,43757,5,43765,43765,7,44003,44004,7,44006,44007,7,44009,44010,7,44013,44013,5,44033,44059,12,44061,44087,12,44089,44115,12,44117,44143,12,44145,44171,12,44173,44199,12,44201,44227,12,44229,44255,12,44257,44283,12,44285,44311,12,44313,44339,12,44341,44367,12,44369,44395,12,44397,44423,12,44425,44451,12,44453,44479,12,44481,44507,12,44509,44535,12,44537,44563,12,44565,44591,12,44593,44619,12,44621,44647,12,44649,44675,12,44677,44703,12,44705,44731,12,44733,44759,12,44761,44787,12,44789,44815,12,44817,44843,12,44845,44871,12,44873,44899,12,44901,44927,12,44929,44955,12,44957,44983,12,44985,45011,12,45013,45039,12,45041,45067,12,45069,45095,12,45097,45123,12,45125,45151,12,45153,45179,12,45181,45207,12,45209,45235,12,45237,45263,12,45265,45291,12,45293,45319,12,45321,45347,12,45349,45375,12,45377,45403,12,45405,45431,12,45433,45459,12,45461,45487,12,45489,45515,12,45517,45543,12,45545,45571,12,45573,45599,12,45601,45627,12,45629,45655,12,45657,45683,12,45685,45711,12,45713,45739,12,45741,45767,12,45769,45795,12,45797,45823,12,45825,45851,12,45853,45879,12,45881,45907,12,45909,45935,12,45937,45963,12,45965,45991,12,45993,46019,12,46021,46047,12,46049,46075,12,46077,46103,12,46105,46131,12,46133,46159,12,46161,46187,12,46189,46215,12,46217,46243,12,46245,46271,12,46273,46299,12,46301,46327,12,46329,46355,12,46357,46383,12,46385,46411,12,46413,46439,12,46441,46467,12,46469,46495,12,46497,46523,12,46525,46551,12,46553,46579,12,46581,46607,12,46609,46635,12,46637,46663,12,46665,46691,12,46693,46719,12,46721,46747,12,46749,46775,12,46777,46803,12,46805,46831,12,46833,46859,12,46861,46887,12,46889,46915,12,46917,46943,12,46945,46971,12,46973,46999,12,47001,47027,12,47029,47055,12,47057,47083,12,47085,47111,12,47113,47139,12,47141,47167,12,47169,47195,12,47197,47223,12,47225,47251,12,47253,47279,12,47281,47307,12,47309,47335,12,47337,47363,12,47365,47391,12,47393,47419,12,47421,47447,12,47449,47475,12,47477,47503,12,47505,47531,12,47533,47559,12,47561,47587,12,47589,47615,12,47617,47643,12,47645,47671,12,47673,47699,12,47701,47727,12,47729,47755,12,47757,47783,12,47785,47811,12,47813,47839,12,47841,47867,12,47869,47895,12,47897,47923,12,47925,47951,12,47953,47979,12,47981,48007,12,48009,48035,12,48037,48063,12,48065,48091,12,48093,48119,12,48121,48147,12,48149,48175,12,48177,48203,12,48205,48231,12,48233,48259,12,48261,48287,12,48289,48315,12,48317,48343,12,48345,48371,12,48373,48399,12,48401,48427,12,48429,48455,12,48457,48483,12,48485,48511,12,48513,48539,12,48541,48567,12,48569,48595,12,48597,48623,12,48625,48651,12,48653,48679,12,48681,48707,12,48709,48735,12,48737,48763,12,48765,48791,12,48793,48819,12,48821,48847,12,48849,48875,12,48877,48903,12,48905,48931,12,48933,48959,12,48961,48987,12,48989,49015,12,49017,49043,12,49045,49071,12,49073,49099,12,49101,49127,12,49129,49155,12,49157,49183,12,49185,49211,12,49213,49239,12,49241,49267,12,49269,49295,12,49297,49323,12,49325,49351,12,49353,49379,12,49381,49407,12,49409,49435,12,49437,49463,12,49465,49491,12,49493,49519,12,49521,49547,12,49549,49575,12,49577,49603,12,49605,49631,12,49633,49659,12,49661,49687,12,49689,49715,12,49717,49743,12,49745,49771,12,49773,49799,12,49801,49827,12,49829,49855,12,49857,49883,12,49885,49911,12,49913,49939,12,49941,49967,12,49969,49995,12,49997,50023,12,50025,50051,12,50053,50079,12,50081,50107,12,50109,50135,12,50137,50163,12,50165,50191,12,50193,50219,12,50221,50247,12,50249,50275,12,50277,50303,12,50305,50331,12,50333,50359,12,50361,50387,12,50389,50415,12,50417,50443,12,50445,50471,12,50473,50499,12,50501,50527,12,50529,50555,12,50557,50583,12,50585,50611,12,50613,50639,12,50641,50667,12,50669,50695,12,50697,50723,12,50725,50751,12,50753,50779,12,50781,50807,12,50809,50835,12,50837,50863,12,50865,50891,12,50893,50919,12,50921,50947,12,50949,50975,12,50977,51003,12,51005,51031,12,51033,51059,12,51061,51087,12,51089,51115,12,51117,51143,12,51145,51171,12,51173,51199,12,51201,51227,12,51229,51255,12,51257,51283,12,51285,51311,12,51313,51339,12,51341,51367,12,51369,51395,12,51397,51423,12,51425,51451,12,51453,51479,12,51481,51507,12,51509,51535,12,51537,51563,12,51565,51591,12,51593,51619,12,51621,51647,12,51649,51675,12,51677,51703,12,51705,51731,12,51733,51759,12,51761,51787,12,51789,51815,12,51817,51843,12,51845,51871,12,51873,51899,12,51901,51927,12,51929,51955,12,51957,51983,12,51985,52011,12,52013,52039,12,52041,52067,12,52069,52095,12,52097,52123,12,52125,52151,12,52153,52179,12,52181,52207,12,52209,52235,12,52237,52263,12,52265,52291,12,52293,52319,12,52321,52347,12,52349,52375,12,52377,52403,12,52405,52431,12,52433,52459,12,52461,52487,12,52489,52515,12,52517,52543,12,52545,52571,12,52573,52599,12,52601,52627,12,52629,52655,12,52657,52683,12,52685,52711,12,52713,52739,12,52741,52767,12,52769,52795,12,52797,52823,12,52825,52851,12,52853,52879,12,52881,52907,12,52909,52935,12,52937,52963,12,52965,52991,12,52993,53019,12,53021,53047,12,53049,53075,12,53077,53103,12,53105,53131,12,53133,53159,12,53161,53187,12,53189,53215,12,53217,53243,12,53245,53271,12,53273,53299,12,53301,53327,12,53329,53355,12,53357,53383,12,53385,53411,12,53413,53439,12,53441,53467,12,53469,53495,12,53497,53523,12,53525,53551,12,53553,53579,12,53581,53607,12,53609,53635,12,53637,53663,12,53665,53691,12,53693,53719,12,53721,53747,12,53749,53775,12,53777,53803,12,53805,53831,12,53833,53859,12,53861,53887,12,53889,53915,12,53917,53943,12,53945,53971,12,53973,53999,12,54001,54027,12,54029,54055,12,54057,54083,12,54085,54111,12,54113,54139,12,54141,54167,12,54169,54195,12,54197,54223,12,54225,54251,12,54253,54279,12,54281,54307,12,54309,54335,12,54337,54363,12,54365,54391,12,54393,54419,12,54421,54447,12,54449,54475,12,54477,54503,12,54505,54531,12,54533,54559,12,54561,54587,12,54589,54615,12,54617,54643,12,54645,54671,12,54673,54699,12,54701,54727,12,54729,54755,12,54757,54783,12,54785,54811,12,54813,54839,12,54841,54867,12,54869,54895,12,54897,54923,12,54925,54951,12,54953,54979,12,54981,55007,12,55009,55035,12,55037,55063,12,55065,55091,12,55093,55119,12,55121,55147,12,55149,55175,12,55177,55203,12,55243,55291,10,65024,65039,5,65279,65279,4,65520,65528,4,66045,66045,5,66422,66426,5,68101,68102,5,68152,68154,5,68325,68326,5,69291,69292,5,69632,69632,7,69634,69634,7,69759,69761,5]")}static getInstance(){return L._INSTANCE||(L._INSTANCE=new L),L._INSTANCE}getGraphemeBreakType(e){if(e<32)return 10===e?3:13===e?2:4;if(e<127)return 0;const t=this._data,n=t.length/3;let r=1;for(;r<=n;)if(et[3*r+1]))return t[3*r+2];r=2*r+1}return 0}}function T(e,t){return(t<<5)-t+e|0}function k(e,t){t=T(149417,t);for(let n=0,r=e.length;n>>r)>>>0}function I(e,t=0,n=e.byteLength,r=0){for(let i=0;i>>0).toString(16),t/4)}L._INSTANCE=null;class P{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const t=e.length;if(0===t)return;const n=this._buff;let r,i,o=this._buffLen,s=this._leftoverHighSurrogate;for(0!==s?(r=s,i=-1,s=0):(r=e.charCodeAt(0),i=0);;){let a=r;if(x(r)){if(!(i+1>>6,e[t++]=128|(63&n)>>>0):n<65536?(e[t++]=224|(61440&n)>>>12,e[t++]=128|(4032&n)>>>6,e[t++]=128|(63&n)>>>0):(e[t++]=240|(1835008&n)>>>18,e[t++]=128|(258048&n)>>>12,e[t++]=128|(4032&n)>>>6,e[t++]=128|(63&n)>>>0),t>=64&&(this._step(),t-=64,this._totalLen+=64,e[0]=e[64],e[1]=e[65],e[2]=e[66]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),M(this._h0)+M(this._h1)+M(this._h2)+M(this._h3)+M(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,I(this._buff,this._buffLen),this._buffLen>56&&(this._step(),I(this._buff));const e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){const e=P._bigBlock32,t=this._buffDV;for(let n=0;n<64;n+=4)e.setUint32(n,t.getUint32(n,!1),!1);for(let t=64;t<320;t+=4)e.setUint32(t,O(e.getUint32(t-12,!1)^e.getUint32(t-32,!1)^e.getUint32(t-56,!1)^e.getUint32(t-64,!1),1),!1);let n,r,i,o=this._h0,s=this._h1,a=this._h2,u=this._h3,l=this._h4;for(let t=0;t<80;t++)t<20?(n=s&a|~s&u,r=1518500249):t<40?(n=s^a^u,r=1859775393):t<60?(n=s&a|s&u|a&u,r=2400959708):(n=s^a^u,r=3395469782),i=O(o,5)+n+l+r+e.getUint32(4*t,!1)&4294967295,l=u,u=a,a=O(s,30),s=o,o=i;this._h0=this._h0+o&4294967295,this._h1=this._h1+s&4294967295,this._h2=this._h2+a&4294967295,this._h3=this._h3+u&4294967295,this._h4=this._h4+l&4294967295}}P._bigBlock32=new DataView(new ArrayBuffer(320));class R{constructor(e){this.source=e}getElements(){const e=this.source,t=new Int32Array(e.length);for(let n=0,r=e.length;n0||this.m_modifiedCount>0)&&this.m_changes.push(new A(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(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++}AddModifiedElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class V{constructor(e,t,n=null){this.ContinueProcessingPredicate=n;const[r,i,o]=V._getElements(e),[s,a,u]=V._getElements(t);this._hasStrings=o&&u,this._originalStringElements=r,this._originalElementsOrHash=i,this._modifiedStringElements=s,this._modifiedElementsOrHash=a,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&"string"==typeof e[0]}static _getElements(e){const t=e.getElements();if(V._isStringArray(t)){const e=new Int32Array(t.length);for(let n=0,r=t.length;n=e&&r>=n&&this.ElementsAreEqual(t,r);)t--,r--;if(e>t||n>r){let i;return n<=r?(F.Assert(e===t+1,"originalStart should only be one more than originalEnd"),i=[new A(e,0,n,r-n+1)]):e<=t?(F.Assert(n===r+1,"modifiedStart should only be one more than modifiedEnd"),i=[new A(e,t-e+1,n,0)]):(F.Assert(e===t+1,"originalStart should only be one more than originalEnd"),F.Assert(n===r+1,"modifiedStart should only be one more than modifiedEnd"),i=[]),i}const o=[0],s=[0],a=this.ComputeRecursionPoint(e,t,n,r,o,s,i),u=o[0],l=s[0];if(null!==a)return a;if(!i[0]){const o=this.ComputeDiffRecursive(e,u,n,l,i);let s=[];return s=i[0]?[new A(u+1,t-(u+1)+1,l+1,r-(l+1)+1)]:this.ComputeDiffRecursive(u+1,t,l+1,r,i),this.ConcatenateChanges(o,s)}return[new A(e,t-e+1,n,r-n+1)]}WALKTRACE(e,t,n,r,i,o,s,a,u,l,c,h,f,d,m,g,p,v){let y=null,b=null,C=new U,_=t,S=n,E=f[0]-g[0]-r,x=-1073741824,N=this.m_forwardHistory.length-1;do{const t=E+e;t===_||t=0&&(e=(u=this.m_forwardHistory[N])[0],_=1,S=u.length-1)}while(--N>=-1);if(y=C.getReverseChanges(),v[0]){let e=f[0]+1,t=g[0]+1;if(null!==y&&y.length>0){const n=y[y.length-1];e=Math.max(e,n.getOriginalEnd()),t=Math.max(t,n.getModifiedEnd())}b=[new A(e,h-e+1,t,m-t+1)]}else{C=new U,_=o,S=s,E=f[0]-g[0]-a,x=1073741824,N=p?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const e=E+i;e===_||e=l[e+1]?(d=(c=l[e+1]-1)-E-a,c>x&&C.MarkNextChange(),x=c+1,C.AddOriginalElement(c+1,d+1),E=e+1-i):(d=(c=l[e-1])-E-a,c>x&&C.MarkNextChange(),x=c,C.AddModifiedElement(c+1,d+1),E=e-1-i),N>=0&&(i=(l=this.m_reverseHistory[N])[0],_=1,S=l.length-1)}while(--N>=-1);b=C.getChanges()}return this.ConcatenateChanges(y,b)}ComputeRecursionPoint(e,t,n,r,i,o,s){let a=0,u=0,l=0,c=0,h=0,f=0;e--,n--,i[0]=0,o[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const d=t-e+(r-n),m=d+1,g=new Int32Array(m),p=new Int32Array(m),v=r-n,y=t-e,b=e-n,C=t-r,_=(y-v)%2==0;g[v]=e,p[y]=t,s[0]=!1;for(let S=1;S<=d/2+1;S++){let d=0,E=0;l=this.ClipDiagonalBound(v-S,S,v,m),c=this.ClipDiagonalBound(v+S,S,v,m);for(let e=l;e<=c;e+=2){u=(a=e===l||ed+E&&(d=a,E=u),!_&&Math.abs(e-y)<=S-1&&a>=p[e])return i[0]=a,o[0]=u,n<=p[e]&&S<=1448?this.WALKTRACE(v,l,c,b,y,h,f,C,g,p,a,t,i,u,r,o,_,s):null}const x=(d-e+(E-n)-S)/2;if(null!==this.ContinueProcessingPredicate&&!this.ContinueProcessingPredicate(d,x))return s[0]=!0,i[0]=d,o[0]=E,x>0&&S<=1448?this.WALKTRACE(v,l,c,b,y,h,f,C,g,p,a,t,i,u,r,o,_,s):(e++,n++,[new A(e,t-e+1,n,r-n+1)]);h=this.ClipDiagonalBound(y-S,S,y,m),f=this.ClipDiagonalBound(y+S,S,y,m);for(let d=h;d<=f;d+=2){u=(a=d===h||d=p[d+1]?p[d+1]-1:p[d-1])-(d-y)-C;const m=a;for(;a>e&&u>n&&this.ElementsAreEqual(a,u);)a--,u--;if(p[d]=a,_&&Math.abs(d-v)<=S&&a<=g[d])return i[0]=a,o[0]=u,m>=g[d]&&S<=1448?this.WALKTRACE(v,l,c,b,y,h,f,C,g,p,a,t,i,u,r,o,_,s):null}if(S<=1447){let e=new Int32Array(c-l+2);e[0]=v-l+1,j.Copy2(g,l,e,1,c-l+1),this.m_forwardHistory.push(e),(e=new Int32Array(f-h+2))[0]=y-h+1,j.Copy2(p,h,e,1,f-h+1),this.m_reverseHistory.push(e)}}return this.WALKTRACE(v,l,c,b,y,h,f,C,g,p,a,t,i,u,r,o,_,s)}PrettifyChanges(e){for(let t=0;t0,s=n.modifiedLength>0;for(;n.originalStart+n.originalLength=0;t--){const n=e[t];let r=0,i=0;if(t>0){const n=e[t-1];n.originalLength>0&&(r=n.originalStart+n.originalLength),n.modifiedLength>0&&(i=n.modifiedStart+n.modifiedLength)}const o=n.originalLength>0,s=n.modifiedLength>0;let a=0,u=this._boundaryScore(n.originalStart,n.originalLength,n.modifiedStart,n.modifiedLength);for(let e=1;;e++){const t=n.originalStart-e,l=n.modifiedStart-e;if(tu&&(u=c,a=e)}n.originalStart-=a,n.modifiedStart-=a}return e}_OriginalIsBoundary(e){return e<=0||e>=this._originalElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){const n=e+t;if(this._OriginalIsBoundary(n-1)||this._OriginalIsBoundary(n))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){const n=e+t;if(this._ModifiedIsBoundary(n-1)||this._ModifiedIsBoundary(n))return!0}return!1}_boundaryScore(e,t,n,r){return(this._OriginalRegionIsBoundary(e,t)?1:0)+(this._ModifiedRegionIsBoundary(n,r)?1:0)}ConcatenateChanges(e,t){let n=[];if(0===e.length||0===t.length)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],n)){const r=new Array(e.length+t.length-1);return j.Copy(e,0,r,0,e.length-1),r[e.length-1]=n[0],j.Copy(t,1,r,e.length,t.length-1),r}{const n=new Array(e.length+t.length);return j.Copy(e,0,n,0,e.length),j.Copy(t,0,n,e.length,t.length),n}}ChangesOverlap(e,t,n){if(F.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),F.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){const r=e.originalStart;let i=e.originalLength;const o=e.modifiedStart;let s=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(i=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(s=t.modifiedStart+t.modifiedLength-e.modifiedStart),n[0]=new A(r,i,o,s),!0}return n[0]=null,!1}ClipDiagonalBound(e,t,n,r){if(e>=0&&e=W&&e<=K||e>=q&&e<=B}function ee(e,t,n,r){let i="",o=0,s=-1,a=0,u=0;for(let l=0;l<=e.length;++l){if(l2){const e=i.lastIndexOf(n);-1===e?(i="",o=0):o=(i=i.slice(0,e)).length-1-i.lastIndexOf(n),s=l,a=0;continue}if(0!==i.length){i="",o=0,s=l,a=0;continue}}t&&(i+=i.length>0?`${n}..`:"..",o=2)}else i.length>0?i+=`${n}${e.slice(s+1,l)}`:i=e.slice(s+1,l),o=l-s-1;s=l,a=0}else u===H&&-1!==a?++a:a=-1}return i}function te(e,t){if(null===t||"object"!=typeof t)throw new z("pathObject","Object",t);const n=t.dir||t.root,r=t.base||`${t.name||""}${t.ext||""}`;return n?n===t.root?`${n}${r}`:`${n}${e}${r}`:r}const ne={resolve(...e){let t="",n="",r=!1;for(let i=e.length-1;i>=-1;i--){let o;if(i>=0){if(J(o=e[i],"path"),0===o.length)continue}else 0===t.length?o=$.a():(void 0===(o=$.b[`=${t}`]||$.a())||o.slice(0,2).toLowerCase()!==t.toLowerCase()&&o.charCodeAt(2)===G)&&(o=`${t}\\`);const s=o.length;let a=0,u="",l=!1;const c=o.charCodeAt(0);if(1===s)Q(c)&&(a=1,l=!0);else if(Q(c))if(l=!0,Q(o.charCodeAt(1))){let e=2,t=e;for(;e2&&Q(o.charCodeAt(2))&&(l=!0,a=3));if(u.length>0)if(t.length>0){if(u.toLowerCase()!==t.toLowerCase())continue}else t=u;if(r){if(t.length>0)break}else if(n=`${o.slice(a)}\\${n}`,r=l,l&&t.length>0)break}return n=ee(n,!r,"\\",Q),r?`${t}\\${n}`:`${t}${n}`||"."},normalize(e){J(e,"path");const t=e.length;if(0===t)return".";let n,r=0,i=!1;const o=e.charCodeAt(0);if(1===t)return Z(o)?"\\":e;if(Q(o))if(i=!0,Q(e.charCodeAt(1))){let i=2,o=i;for(;i2&&Q(e.charCodeAt(2))&&(i=!0,r=3));let s=r0&&Q(e.charCodeAt(t-1))&&(s+="\\"),void 0===n?i?`\\${s}`:s:i?`${n}\\${s}`:`${n}${s}`},isAbsolute(e){J(e,"path");const t=e.length;if(0===t)return!1;const n=e.charCodeAt(0);return Q(n)||t>2&&X(n)&&58===e.charCodeAt(1)&&Q(e.charCodeAt(2))},join(...e){if(0===e.length)return".";let t,n;for(let r=0;r0&&(void 0===t?t=n=i:t+=`\\${i}`)}if(void 0===t)return".";let r=!0,i=0;if("string"==typeof n&&Q(n.charCodeAt(0))){++i;const e=n.length;e>1&&Q(n.charCodeAt(1))&&(++i,e>2&&(Q(n.charCodeAt(2))?++i:r=!1))}if(r){for(;i=2&&(t=`\\${t.slice(i)}`)}return ne.normalize(t)},relative(e,t){if(J(e,"from"),J(t,"to"),e===t)return"";const n=ne.resolve(e),r=ne.resolve(t);if(n===r)return"";if((e=n.toLowerCase())===(t=r.toLowerCase()))return"";let i=0;for(;ii&&e.charCodeAt(o-1)===G;)o--;const s=o-i;let a=0;for(;aa&&t.charCodeAt(u-1)===G;)u--;const l=u-a,c=sc){if(t.charCodeAt(a+f)===G)return r.slice(a+f+1);if(2===f)return r.slice(a+f)}s>c&&(e.charCodeAt(i+f)===G?h=f:2===f&&(h=3)),-1===h&&(h=0)}let d="";for(f=i+h+1;f<=o;++f)f!==o&&e.charCodeAt(f)!==G||(d+=0===d.length?"..":"\\..");return a+=h,d.length>0?`${d}${r.slice(a,u)}`:(r.charCodeAt(a)===G&&++a,r.slice(a,u))},toNamespacedPath(e){if("string"!=typeof e)return e;if(0===e.length)return"";const t=ne.resolve(e);if(t.length<=2)return e;if(t.charCodeAt(0)===G){if(t.charCodeAt(1)===G){const e=t.charCodeAt(2);if(63!==e&&e!==H)return`\\\\?\\UNC\\${t.slice(2)}`}}else if(X(t.charCodeAt(0))&&58===t.charCodeAt(1)&&t.charCodeAt(2)===G)return`\\\\?\\${t}`;return e},dirname(e){J(e,"path");const t=e.length;if(0===t)return".";let n=-1,r=0;const i=e.charCodeAt(0);if(1===t)return Q(i)?e:".";if(Q(i)){if(n=r=1,Q(e.charCodeAt(1))){let i=2,o=i;for(;i2&&Q(e.charCodeAt(2))?3:2);let o=-1,s=!0;for(let n=t-1;n>=r;--n)if(Q(e.charCodeAt(n))){if(!s){o=n;break}}else s=!1;if(-1===o){if(-1===n)return".";o=n}return e.slice(0,o)},basename(e,t){void 0!==t&&J(t,"ext"),J(e,"path");let n,r=0,i=-1,o=!0;if(e.length>=2&&X(e.charCodeAt(0))&&58===e.charCodeAt(1)&&(r=2),void 0!==t&&t.length>0&&t.length<=e.length){if(t===e)return"";let s=t.length-1,a=-1;for(n=e.length-1;n>=r;--n){const u=e.charCodeAt(n);if(Q(u)){if(!o){r=n+1;break}}else-1===a&&(o=!1,a=n+1),s>=0&&(u===t.charCodeAt(s)?-1==--s&&(i=n):(s=-1,i=a))}return r===i?i=a:-1===i&&(i=e.length),e.slice(r,i)}for(n=e.length-1;n>=r;--n)if(Q(e.charCodeAt(n))){if(!o){r=n+1;break}}else-1===i&&(o=!1,i=n+1);return-1===i?"":e.slice(r,i)},extname(e){J(e,"path");let t=0,n=-1,r=0,i=-1,o=!0,s=0;e.length>=2&&58===e.charCodeAt(1)&&X(e.charCodeAt(0))&&(t=r=2);for(let a=e.length-1;a>=t;--a){const t=e.charCodeAt(a);if(Q(t)){if(!o){r=a+1;break}}else-1===i&&(o=!1,i=a+1),t===H?-1===n?n=a:1!==s&&(s=1):-1!==n&&(s=-1)}return-1===n||-1===i||0===s||1===s&&n===i-1&&n===r+1?"":e.slice(n,i)},format:te.bind(null,"\\"),parse(e){J(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;const n=e.length;let r=0,i=e.charCodeAt(0);if(1===n)return Q(i)?(t.root=t.dir=e,t):(t.base=t.name=e,t);if(Q(i)){if(r=1,Q(e.charCodeAt(1))){let t=2,i=t;for(;t0&&(t.root=e.slice(0,r));let o=-1,s=r,a=-1,u=!0,l=e.length-1,c=0;for(;l>=r;--l)if(Q(i=e.charCodeAt(l))){if(!u){s=l+1;break}}else-1===a&&(u=!1,a=l+1),i===H?-1===o?o=l:1!==c&&(c=1):-1!==o&&(c=-1);return-1!==a&&(-1===o||0===c||1===c&&o===a-1&&o===s+1?t.base=t.name=e.slice(s,a):(t.name=e.slice(s,o),t.base=e.slice(s,a),t.ext=e.slice(o,a))),t.dir=s>0&&s!==r?e.slice(0,s-1):t.root,t},sep:"\\",delimiter:";",win32:null,posix:null},re={resolve(...e){let t="",n=!1;for(let r=e.length-1;r>=-1&&!n;r--){const i=r>=0?e[r]:$.a();J(i,"path"),0!==i.length&&(t=`${i}/${t}`,n=i.charCodeAt(0)===Y)}return t=ee(t,!n,"/",Z),n?`/${t}`:t.length>0?t:"."},normalize(e){if(J(e,"path"),0===e.length)return".";const t=e.charCodeAt(0)===Y,n=e.charCodeAt(e.length-1)===Y;return 0===(e=ee(e,!t,"/",Z)).length?t?"/":n?"./":".":(n&&(e+="/"),t?`/${e}`:e)},isAbsolute:e=>(J(e,"path"),e.length>0&&e.charCodeAt(0)===Y),join(...e){if(0===e.length)return".";let t;for(let n=0;n0&&(void 0===t?t=r:t+=`/${r}`)}return void 0===t?".":re.normalize(t)},relative(e,t){if(J(e,"from"),J(t,"to"),e===t)return"";if((e=re.resolve(e))===(t=re.resolve(t)))return"";const n=e.length,r=n-1,i=t.length-1,o=ro){if(t.charCodeAt(1+a)===Y)return t.slice(1+a+1);if(0===a)return t.slice(1+a)}else r>o&&(e.charCodeAt(1+a)===Y?s=a:0===a&&(s=0));let u="";for(a=1+s+1;a<=n;++a)a!==n&&e.charCodeAt(a)!==Y||(u+=0===u.length?"..":"/..");return`${u}${t.slice(1+s)}`},toNamespacedPath:e=>e,dirname(e){if(J(e,"path"),0===e.length)return".";const t=e.charCodeAt(0)===Y;let n=-1,r=!0;for(let t=e.length-1;t>=1;--t)if(e.charCodeAt(t)===Y){if(!r){n=t;break}}else r=!1;return-1===n?t?"/":".":t&&1===n?"//":e.slice(0,n)},basename(e,t){void 0!==t&&J(t,"ext"),J(e,"path");let n,r=0,i=-1,o=!0;if(void 0!==t&&t.length>0&&t.length<=e.length){if(t===e)return"";let s=t.length-1,a=-1;for(n=e.length-1;n>=0;--n){const u=e.charCodeAt(n);if(u===Y){if(!o){r=n+1;break}}else-1===a&&(o=!1,a=n+1),s>=0&&(u===t.charCodeAt(s)?-1==--s&&(i=n):(s=-1,i=a))}return r===i?i=a:-1===i&&(i=e.length),e.slice(r,i)}for(n=e.length-1;n>=0;--n)if(e.charCodeAt(n)===Y){if(!o){r=n+1;break}}else-1===i&&(o=!1,i=n+1);return-1===i?"":e.slice(r,i)},extname(e){J(e,"path");let t=-1,n=0,r=-1,i=!0,o=0;for(let s=e.length-1;s>=0;--s){const a=e.charCodeAt(s);if(a!==Y)-1===r&&(i=!1,r=s+1),a===H?-1===t?t=s:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=s+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)},format:te.bind(null,"/"),parse(e){J(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;const n=e.charCodeAt(0)===Y;let r;n?(t.root="/",r=1):r=0;let i=-1,o=0,s=-1,a=!0,u=e.length-1,l=0;for(;u>=r;--u){const t=e.charCodeAt(u);if(t!==Y)-1===s&&(a=!1,s=u+1),t===H?-1===i?i=u:1!==l&&(l=1):-1!==i&&(l=-1);else if(!a){o=u+1;break}}if(-1!==s){const r=0===o&&n?1:o;-1===i||0===l||1===l&&i===s-1&&i===o+1?t.base=t.name=e.slice(r,s):(t.name=e.slice(r,i),t.base=e.slice(r,s),t.ext=e.slice(i,s))}return o>0?t.dir=e.slice(0,o-1):n&&(t.dir="/"),t},sep:"/",delimiter:":",win32:null,posix:null};re.win32=ne.win32=ne,re.posix=ne.posix=re;"win32"===$.c?ne.normalize:re.normalize,"win32"===$.c?ne.resolve:re.resolve,"win32"===$.c?ne.relative:re.relative,"win32"===$.c?ne.dirname:re.dirname,"win32"===$.c?ne.basename:re.basename,"win32"===$.c?ne.extname:re.extname,"win32"===$.c?ne.sep:re.sep;const ie=/^\w[\w\d+.-]*$/,oe=/^\//,se=/^\/\//;const ae="",ue="/",le=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class ce{constructor(e,t,n,r,i,o=!1){"object"==typeof e?(this.scheme=e.scheme||ae,this.authority=e.authority||ae,this.path=e.path||ae,this.query=e.query||ae,this.fragment=e.fragment||ae):(this.scheme=function(e,t){return e||t?e:"file"}(e,o),this.authority=t||ae,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==ue&&(t=ue+t):t=ue}return t}(this.scheme,n||ae),this.query=r||ae,this.fragment=i||ae,function(e,t){if(!e.scheme&&t)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!ie.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!oe.test(e.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(se.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,o))}static isUri(e){return e instanceof ce||!!e&&("string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"function"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString)}get fsPath(){return pe(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:n,path:r,query:i,fragment:o}=e;return void 0===t?t=this.scheme:null===t&&(t=ae),void 0===n?n=this.authority:null===n&&(n=ae),void 0===r?r=this.path:null===r&&(r=ae),void 0===i?i=this.query:null===i&&(i=ae),void 0===o?o=this.fragment:null===o&&(o=ae),t===this.scheme&&n===this.authority&&r===this.path&&i===this.query&&o===this.fragment?this:new fe(t,n,r,i,o)}static parse(e,t=!1){const n=le.exec(e);return n?new fe(n[2]||ae,be(n[4]||ae),be(n[5]||ae),be(n[7]||ae),be(n[9]||ae),t):new fe(ae,ae,ae,ae,ae)}static file(e){let t=ae;if(v.d&&(e=e.replace(/\\/g,ue)),e[0]===ue&&e[1]===ue){const n=e.indexOf(ue,2);-1===n?(t=e.substring(2),e=ue):(t=e.substring(2,n),e=e.substring(n)||ue)}return new fe("file",t,e,ae,ae)}static from(e){return new fe(e.scheme,e.authority,e.path,e.query,e.fragment)}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPaths on URI without path");let n;return n=v.d&&"file"===e.scheme?ce.file(ne.join(pe(e,!0),...t)).path:re.join(e.path,...t),e.with({path:n})}toString(e=!1){return ve(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof ce)return e;{const t=new fe(e);return t._formatted=e.external,t._fsPath=e._sep===he?e.fsPath:null,t}}return e}}const he=v.d?1:void 0;class fe extends ce{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=pe(this,!1)),this._fsPath}toString(e=!1){return e?ve(this,!0):(this._formatted||(this._formatted=ve(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=he),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const de={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 me(e,t){let n=void 0,r=-1;for(let i=0;i=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o)-1!==r&&(n+=encodeURIComponent(e.substring(r,i)),r=-1),void 0!==n&&(n+=e.charAt(i));else{void 0===n&&(n=e.substr(0,i));const t=de[o];void 0!==t?(-1!==r&&(n+=encodeURIComponent(e.substring(r,i)),r=-1),n+=t):-1===r&&(r=i)}}return-1!==r&&(n+=encodeURIComponent(e.substring(r))),void 0!==n?n:e}function ge(e){let t=void 0;for(let n=0;n1&&"file"===e.scheme?`//${e.authority}${e.path}`:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?t?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,v.d&&(n=n.replace(/\//g,"\\")),n}function ve(e,t){const n=t?ge:me;let r="",{scheme:i,authority:o,path:s,query:a,fragment:u}=e;if(i&&(r+=i,r+=":"),(o||"file"===i)&&(r+=ue,r+=ue),o){let e=o.indexOf("@");if(-1!==e){const t=o.substr(0,e);o=o.substr(e+1),-1===(e=t.indexOf(":"))?r+=n(t,!1):(r+=n(t.substr(0,e),!1),r+=":",r+=n(t.substr(e+1),!1)),r+="@"}-1===(e=(o=o.toLowerCase()).indexOf(":"))?r+=n(o,!1):(r+=n(o.substr(0,e),!1),r+=o.substr(e))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2)){const e=s.charCodeAt(1);e>=65&&e<=90&&(s=`/${String.fromCharCode(e+32)}:${s.substr(3)}`)}else if(s.length>=2&&58===s.charCodeAt(1)){const e=s.charCodeAt(0);e>=65&&e<=90&&(s=`${String.fromCharCode(e+32)}:${s.substr(2)}`)}r+=n(s,!0)}return a&&(r+="?",r+=n(a,!1)),u&&(r+="#",r+=t?u:me(u,!1)),r}const ye=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function be(e){return e.match(ye)?e.replace(ye,e=>(function e(t){try{return decodeURIComponent(t)}catch(n){return t.length>3?t.substr(0,3)+e(t.substr(3)):t}})(e)):e}class Ce{constructor(e,t){this.lineNumber=e,this.column=t}with(e=this.lineNumber,t=this.column){return e===this.lineNumber&&t===this.column?this:new Ce(e,t)}delta(e=0,t=0){return this.with(this.lineNumber+e,this.column+t)}equals(e){return Ce.equals(this,e)}static equals(e,t){return!e&&!t||!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return Ce.isBefore(this,e)}static isBefore(e,t){return e.lineNumbern||e===n&&t>r?(this.startLineNumber=n,this.startColumn=r,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=n,this.endColumn=r)}isEmpty(){return _e.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return _e.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumbere.endLineNumber)&&(!(t.lineNumber===e.startLineNumber&&t.columne.endColumn))}containsRange(e){return _e.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumne.endColumn)))}strictContainsRange(e){return _e.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn)&&!(t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)))}plusRange(e){return _e.plusRange(this,e)}static plusRange(e,t){let n,r,i,o;return t.startLineNumbere.endLineNumber?(i=t.endLineNumber,o=t.endColumn):t.endLineNumber===e.endLineNumber?(i=t.endLineNumber,o=Math.max(t.endColumn,e.endColumn)):(i=e.endLineNumber,o=e.endColumn),new _e(n,r,i,o)}intersectRanges(e){return _e.intersectRanges(this,e)}static intersectRanges(e,t){let n=e.startLineNumber,r=e.startColumn,i=e.endLineNumber,o=e.endColumn,s=t.startLineNumber,a=t.startColumn,u=t.endLineNumber,l=t.endColumn;return nu?(i=u,o=l):i===u&&(o=Math.min(o,l)),n>i?null:n===i&&r>o?null:new _e(n,r,i,o)}equalsRange(e){return _e.equalsRange(this,e)}static equalsRange(e,t){return!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return _e.getEndPosition(this)}static getEndPosition(e){return new Ce(e.endLineNumber,e.endColumn)}getStartPosition(){return _e.getStartPosition(this)}static getStartPosition(e){return new Ce(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new _e(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new _e(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return _e.collapseToStart(this)}static collapseToStart(e){return new _e(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}static fromPositions(e,t=e){return new _e(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new _e(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return e&&"number"==typeof e.startLineNumber&&"number"==typeof e.startColumn&&"number"==typeof e.endLineNumber&&"number"==typeof e.endColumn}static areIntersectingOrTouching(e,t){return!(e.endLineNumbere.startLineNumber}}const Se=3;function Ee(e,t,n,r){return new V(e,t,n).ComputeDiff(r)}class Ae{constructor(e){const t=[],n=[];for(let r=0,i=e.length;r0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&i()){const o=n.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),a=r.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);let u=Ee(o,a,i,!0).changes;s&&(u=function(e){if(e.length<=1)return e;const t=[e[0]];let n=t[0];for(let r=1,i=e.length;r1&&s>1;){if(e.charCodeAt(n-2)!==t.charCodeAt(s-2))break;n--,s--}(n>1||s>1)&&this._pushTrimWhitespaceCharChange(r,i+1,1,n,o+1,1,s)}{let n=ke(e,1),s=ke(t,1);const a=e.length+1,u=t.length+1;for(;n=0;n--){const t=e.charCodeAt(n);if(32!==t&&9!==t)return n}return-1}(e);return-1===n?t:n+2}function Oe(e){if(0===e)return()=>!0;const t=Date.now();return()=>Date.now()-t255?255:0|e}function Me(e){return e<0?0:e>4294967295?4294967295:0|e}class Pe{constructor(e,t){this.index=e,this.remainder=t}}class Re{constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=Me(e);const n=this.values,r=this.prefixSum,i=t.length;return 0!==i&&(this.values=new Uint32Array(n.length+i),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e),e+i),this.values.set(t,e),e-1=0&&this.prefixSum.set(r.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}changeValue(e,t){return e=Me(e),t=Me(t),this.values[e]!==t&&(this.values[e]=t,e-1=n.length)return!1;let i=n.length-e;return t>=i&&(t=i),0!==t&&(this.values=new Uint32Array(n.length-t),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1=0&&this.prefixSum.set(r.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalValue(){return 0===this.values.length?0:this._getAccumulatedValue(this.values.length-1)}getAccumulatedValue(e){return e<0?0:(e=Me(e),this._getAccumulatedValue(e))}_getAccumulatedValue(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;0===t&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let n=t;n<=e;n++)this.prefixSum[n]=this.prefixSum[n-1]+this.values[n];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalValue();let t=0,n=this.values.length-1,r=0,i=0,o=0;for(;t<=n;)if(r=t+(n-t)/2|0,e<(o=(i=this.prefixSum[r])-this.values[r]))n=r-1;else{if(!(e>=i))break;t=r+1}return new Pe(r,e-o)}}class De{constructor(e,t,n,r){this._uri=e,this._lines=t,this._eol=n,this._versionId=r,this._lineStarts=null,this._cachedTextValue=null}dispose(){this._lines.length=0}getText(){return null===this._cachedTextValue&&(this._cachedTextValue=this._lines.join(this._eol)),this._cachedTextValue}onEvents(e){e.eol&&e.eol!==this._eol&&(this._eol=e.eol,this._lineStarts=null);const t=e.changes;for(const e of t)this._acceptDeleteRange(e.range),this._acceptInsertText(new Ce(e.range.startLineNumber,e.range.startColumn),e.text);this._versionId=e.versionId,this._cachedTextValue=null}_ensureLineStarts(){if(!this._lineStarts){const e=this._eol.length,t=this._lines.length,n=new Uint32Array(t);for(let r=0;r/?";const je=function(e=""){let t="(-?\\d*\\.\\d\\w*)|([^";for(const n of Fe)e.indexOf(n)>=0||(t+="\\"+n);return t+="\\s]+)",new RegExp(t,"g")}();const Ue={maxLen:1e3,windowSize:15,timeBudget:150};function Ve(e,t,n,r){let i;for(;i=e.exec(t);){const t=i.index||0;if(t<=n&&e.lastIndex>=n)return i;if(r>0&&t>r)return null}return null}class $e{constructor(e){let t=Ie(e);this._defaultValue=t,this._asciiMap=$e._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){let t=new Uint8Array(256);for(let n=0;n<256;n++)t[n]=e;return t}set(e,t){let n=Ie(t);e>=0&&e<256?this._asciiMap[e]=n:this._map.set(e,n)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}}class We{constructor(e,t,n){const r=new Uint8Array(e*t);for(let i=0,o=e*t;it&&(t=o),i>n&&(n=i),s>n&&(n=s)}t++,n++;let r=new We(n,t,0);for(let t=0,n=e.length;t=this._maxCharCode?0:this._states.get(e,t)}}let Ke=null;let Be=null;class He{static _createLink(e,t,n,r,i){let o=i-1;do{const n=t.charCodeAt(o);if(2!==e.get(n))break;o--}while(o>r);if(r>0){const e=t.charCodeAt(r-1),n=t.charCodeAt(o);(40===e&&41===n||91===e&&93===n||123===e&&125===n)&&o--}return{range:{startLineNumber:n,startColumn:r+1,endLineNumber:n,endColumn:o+2},url:t.substring(r,o+1)}}static computeLinks(e,t=(null===Ke&&(Ke=new qe([[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]])),Ke)){const n=function(){if(null===Be){Be=new $e(0);const e=" \t<>'\"、。。、,.:;‘“〈《「『【〔([{「」}])〕】』」》〉”’`~…";for(let t=0;t=0?((r+=n?1:-1)<0?r=e.length-1:r%=e.length,e[r]):null}}Ye.INSTANCE=new Ye;class Ge{constructor(e){this.element=e,this.next=Ge.Undefined,this.prev=Ge.Undefined}}Ge.Undefined=new Ge(void 0);class ze{constructor(){this._first=Ge.Undefined,this._last=Ge.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Ge.Undefined}clear(){this._first=Ge.Undefined,this._last=Ge.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){const n=new Ge(e);if(this._first===Ge.Undefined)this._first=n,this._last=n;else if(t){const e=this._last;this._last=n,n.prev=e,e.next=n}else{const e=this._first;this._first=n,n.next=e,e.prev=n}this._size+=1;let r=!1;return()=>{r||(r=!0,this._remove(n))}}shift(){if(this._first!==Ge.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Ge.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Ge.Undefined&&e.next!==Ge.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Ge.Undefined&&e.next===Ge.Undefined?(this._first=Ge.Undefined,this._last=Ge.Undefined):e.next===Ge.Undefined?(this._last=this._last.prev,this._last.next=Ge.Undefined):e.prev===Ge.Undefined&&(this._first=this._first.next,this._first.prev=Ge.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Ge.Undefined;)yield e.element,e=e.next}toArray(){const e=[];for(let t=this._first;t!==Ge.Undefined;t=t.next)e.push(t.element);return e}}var Je;!function(e){function t(e){return(t,n=null,r)=>{let i,o=!1;return i=e(e=>{if(!o)return i?i.dispose():o=!0,t.call(n,e)},null,r),o&&i.dispose(),i}}function n(e,t){return s((n,r=null,i)=>e(e=>n.call(r,t(e)),null,i))}function r(e,t){return s((n,r=null,i)=>e(e=>{t(e),n.call(r,e)},null,i))}function i(e,t){return s((n,r=null,i)=>e(e=>t(e)&&n.call(r,e),null,i))}function o(e,t,r){let i=r;return n(e,e=>i=t(i,e))}function s(e){let t;const n=new Xe({onFirstListenerAdd(){t=e(n.fire,n)},onLastListenerRemove(){t.dispose()}});return n.event}function a(e,t,n=100,r=!1,i){let o,s=void 0,a=void 0,u=0;const l=new Xe({leakWarningThreshold:i,onFirstListenerAdd(){o=e(e=>{u++,s=t(s,e),r&&!a&&(l.fire(s),s=void 0),clearTimeout(a),a=setTimeout(()=>{const e=s;s=void 0,a=void 0,(!r||u>1)&&l.fire(e),u=0},n)})},onLastListenerRemove(){o.dispose()}});return l.event}function u(e){let t,n=!0;return i(e,e=>{const r=n||e!==t;return n=!1,t=e,r})}e.None=()=>p.None,e.once=t,e.map=n,e.forEach=r,e.filter=i,e.signal=function(e){return e},e.any=function(...e){return(t,n=null,r)=>(function(...e){return e.forEach(h),f({dispose:()=>m(e)})})(...e.map(e=>e(e=>t.call(n,e),null,r)))},e.reduce=o,e.snapshot=s,e.debounce=a,e.stopwatch=function(e){const r=(new Date).getTime();return n(t(e),e=>(new Date).getTime()-r)},e.latch=u,e.buffer=function(e,t=!1,n=[]){let r=n.slice(),i=e(e=>{r?r.push(e):s.fire(e)});const o=()=>{r&&r.forEach(e=>s.fire(e)),r=null},s=new Xe({onFirstListenerAdd(){i||(i=e(e=>s.fire(e)))},onFirstListenerDidAdd(){r&&(t?setTimeout(o):o())},onLastListenerRemove(){i&&i.dispose(),i=null}});return s.event};class l{constructor(e){this.event=e}map(e){return new l(n(this.event,e))}forEach(e){return new l(r(this.event,e))}filter(e){return new l(i(this.event,e))}reduce(e,t){return new l(o(this.event,e,t))}latch(){return new l(u(this.event))}debounce(e,t=100,n=!1,r){return new l(a(this.event,e,t,n,r))}on(e,t,n){return this.event(e,t,n)}once(e,n,r){return t(this.event)(e,n,r)}}e.chain=function(e){return new l(e)},e.fromNodeEventEmitter=function(e,t,n=(e=>e)){const r=(...e)=>i.fire(n(...e)),i=new Xe({onFirstListenerAdd:()=>e.on(t,r),onLastListenerRemove:()=>e.removeListener(t,r)});return i.event},e.fromDOMEventEmitter=function(e,t,n=(e=>e)){const r=(...e)=>i.fire(n(...e)),i=new Xe({onFirstListenerAdd:()=>e.addEventListener(t,r),onLastListenerRemove:()=>e.removeEventListener(t,r)});return i.event},e.fromPromise=function(e){const t=new Xe;let n=!1;return e.then(void 0,()=>null).then(()=>{n?t.fire(void 0):setTimeout(()=>t.fire(void 0),0)}),n=!0,t.event},e.toPromise=function(e){return new Promise(n=>t(e)(n))}}(Je||(Je={}));let Qe=-1;class Ze{constructor(e,t=Math.random().toString(18).slice(2,5)){this.customThreshold=e,this.name=t,this._warnCountdown=0}dispose(){this._stacks&&this._stacks.clear()}check(e){let t=Qe;if("number"==typeof this.customThreshold&&(t=this.customThreshold),t<=0||e{const e=this._stacks.get(n)||0;this._stacks.set(n,e-1)}}}class Xe{constructor(e){this._disposed=!1,this._options=e,this._leakageMon=Qe>0?new Ze(this._options&&this._options.leakWarningThreshold):void 0}get event(){return this._event||(this._event=(e,t,n)=>{this._listeners||(this._listeners=new ze);const r=this._listeners.isEmpty();r&&this._options&&this._options.onFirstListenerAdd&&this._options.onFirstListenerAdd(this);const i=this._listeners.push(t?[e,t]:e);let o,s;return r&&this._options&&this._options.onFirstListenerDidAdd&&this._options.onFirstListenerDidAdd(this),this._options&&this._options.onListenerDidAdd&&this._options.onListenerDidAdd(this,e,t),this._leakageMon&&(o=this._leakageMon.check(this._listeners.size)),s={dispose:()=>{if(o&&o(),s.dispose=Xe._noop,!this._disposed&&(i(),this._options&&this._options.onLastListenerRemove)){this._listeners&&!this._listeners.isEmpty()||this._options.onLastListenerRemove(this)}}},n instanceof g?n.add(s):Array.isArray(n)&&n.push(s),s}),this._event}fire(e){if(this._listeners){this._deliveryQueue||(this._deliveryQueue=new ze);for(let t of this._listeners)this._deliveryQueue.push([t,e]);for(;this._deliveryQueue.size>0;){const[e,t]=this._deliveryQueue.shift();try{"function"==typeof e?e.call(void 0,t):e[0].call(e[1],t)}catch(e){i(e)}}}}dispose(){this._listeners&&this._listeners.clear(),this._deliveryQueue&&this._deliveryQueue.clear(),this._leakageMon&&this._leakageMon.dispose(),this._disposed=!0}}Xe._noop=function(){};const et=Object.freeze((function(e,t){const n=setTimeout(e.bind(t),0);return{dispose(){clearTimeout(n)}}}));var tt,nt;(nt=tt||(tt={})).isCancellationToken=function(e){return e===nt.None||e===nt.Cancelled||e instanceof rt||!(!e||"object"!=typeof e)&&"boolean"==typeof e.isCancellationRequested&&"function"==typeof e.onCancellationRequested},nt.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Je.None}),nt.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:et});class rt{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?et:(this._emitter||(this._emitter=new Xe),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class it{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new rt),this._token}cancel(){this._token?this._token instanceof rt&&this._token.cancel():this._token=tt.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener&&this._parentListener.dispose(),this._token?this._token instanceof rt&&this._token.dispose():this._token=tt.None}}class ot{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}}const st=new ot,at=new ot,ut=new ot;var lt,ct,ht,ft,dt,mt,gt,pt,vt,yt,bt,Ct,_t,St,Et,At,xt,Nt,wt,Lt,Tt,kt,Ot,It,Mt,Pt,Rt,Dt,Ft,jt,Ut,Vt,$t,Wt;!function(){function e(e,t,n=t,r=n){st.define(e,t),at.define(e,n),ut.define(e,r)}e(0,"unknown"),e(1,"Backspace"),e(2,"Tab"),e(3,"Enter"),e(4,"Shift"),e(5,"Ctrl"),e(6,"Alt"),e(7,"PauseBreak"),e(8,"CapsLock"),e(9,"Escape"),e(10,"Space"),e(11,"PageUp"),e(12,"PageDown"),e(13,"End"),e(14,"Home"),e(15,"LeftArrow","Left"),e(16,"UpArrow","Up"),e(17,"RightArrow","Right"),e(18,"DownArrow","Down"),e(19,"Insert"),e(20,"Delete"),e(21,"0"),e(22,"1"),e(23,"2"),e(24,"3"),e(25,"4"),e(26,"5"),e(27,"6"),e(28,"7"),e(29,"8"),e(30,"9"),e(31,"A"),e(32,"B"),e(33,"C"),e(34,"D"),e(35,"E"),e(36,"F"),e(37,"G"),e(38,"H"),e(39,"I"),e(40,"J"),e(41,"K"),e(42,"L"),e(43,"M"),e(44,"N"),e(45,"O"),e(46,"P"),e(47,"Q"),e(48,"R"),e(49,"S"),e(50,"T"),e(51,"U"),e(52,"V"),e(53,"W"),e(54,"X"),e(55,"Y"),e(56,"Z"),e(57,"Meta"),e(58,"ContextMenu"),e(59,"F1"),e(60,"F2"),e(61,"F3"),e(62,"F4"),e(63,"F5"),e(64,"F6"),e(65,"F7"),e(66,"F8"),e(67,"F9"),e(68,"F10"),e(69,"F11"),e(70,"F12"),e(71,"F13"),e(72,"F14"),e(73,"F15"),e(74,"F16"),e(75,"F17"),e(76,"F18"),e(77,"F19"),e(78,"NumLock"),e(79,"ScrollLock"),e(80,";",";","OEM_1"),e(81,"=","=","OEM_PLUS"),e(82,",",",","OEM_COMMA"),e(83,"-","-","OEM_MINUS"),e(84,".",".","OEM_PERIOD"),e(85,"/","/","OEM_2"),e(86,"`","`","OEM_3"),e(110,"ABNT_C1"),e(111,"ABNT_C2"),e(87,"[","[","OEM_4"),e(88,"\\","\\","OEM_5"),e(89,"]","]","OEM_6"),e(90,"'","'","OEM_7"),e(91,"OEM_8"),e(92,"OEM_102"),e(93,"NumPad0"),e(94,"NumPad1"),e(95,"NumPad2"),e(96,"NumPad3"),e(97,"NumPad4"),e(98,"NumPad5"),e(99,"NumPad6"),e(100,"NumPad7"),e(101,"NumPad8"),e(102,"NumPad9"),e(103,"NumPad_Multiply"),e(104,"NumPad_Add"),e(105,"NumPad_Separator"),e(106,"NumPad_Subtract"),e(107,"NumPad_Decimal"),e(108,"NumPad_Divide")}(),function(e){e.toString=function(e){return st.keyCodeToStr(e)},e.fromString=function(e){return st.strToKeyCode(e)},e.toUserSettingsUS=function(e){return at.keyCodeToStr(e)},e.toUserSettingsGeneral=function(e){return ut.keyCodeToStr(e)},e.fromUserSettings=function(e){return at.strToKeyCode(e)||ut.strToKeyCode(e)}}(lt||(lt={}));class qt extends _e{constructor(e,t,n,r){super(e,t,n,r),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=n,this.positionColumn=r}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return qt.selectionsEqual(this,e)}static selectionsEqual(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(e,t){return 0===this.getDirection()?new qt(this.startLineNumber,this.startColumn,e,t):new qt(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new Ce(this.positionLineNumber,this.positionColumn)}setStartPosition(e,t){return 0===this.getDirection()?new qt(e,t,this.endLineNumber,this.endColumn):new qt(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new qt(e.lineNumber,e.column,t.lineNumber,t.column)}static liftSelection(e){return new qt(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)}static selectionsArrEqual(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(let n=0,r=e.length;n>>0)>>>0}(e,t)}}Bt.CtrlCmd=2048,Bt.Shift=1024,Bt.Alt=512,Bt.WinCtrl=256;var Ht=function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{u(r.next(e))}catch(e){o(e)}}function a(e){try{u(r.throw(e))}catch(e){o(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((r=r.apply(e,t||[])).next())}))};class Yt extends De{get uri(){return this._uri}get version(){return this._versionId}get eol(){return this._eol}getValue(){return this.getText()}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(e){return this._lines[e-1]}getWordAtPosition(e,t){let n=function e(t,n,r,i,o=Ue){if(r.length>o.maxLen){let s=t-o.maxLen/2;return s<0?(i+=t,s=0):i+=s,e(t,n,r=r.substring(s,t+o.maxLen/2),i,o)}Date.now();const s=t-1-i;let a=-1,u=null;for(let e=1;;e++){Date.now(),o.timeBudget;const t=s-o.windowSize*e;n.lastIndex=Math.max(0,t);const i=Ve(n,r,s,a);if(!i&&u)break;if(u=i,t<=0)break;a=t}if(u){let e={word:u[0],startColumn:i+1+u.index,endColumn:i+1+u.index+u[0].length};return n.lastIndex=0,e}return null}(e.column,function(e){let t=je;if(e&&e instanceof RegExp)if(e.global)t=e;else{let n="g";e.ignoreCase&&(n+="i"),e.multiline&&(n+="m"),e.unicode&&(n+="u"),t=new RegExp(e.source,n)}return t.lastIndex=0,t}(t),this._lines[e.lineNumber-1],0);return n?new _e(e.lineNumber,n.startColumn,e.lineNumber,n.endColumn):null}words(e){const t=this._lines,n=this._wordenize.bind(this);let r=0,i="",o=0,s=[];return{*[Symbol.iterator](){for(;;)if(othis._lines.length)t=this._lines.length,n=this._lines[t-1].length+1,r=!0;else{let e=this._lines[t-1].length+1;n<1?(n=1,r=!0):n>e&&(n=e,r=!0)}return r?{lineNumber:t,column:n}:e}}class Gt{constructor(e,t){this._host=e,this._models=Object.create(null),this._foreignModuleFactory=t,this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(e){return this._models[e]}_getModels(){let e=[];return Object.keys(this._models).forEach(t=>e.push(this._models[t])),e}acceptNewModel(e){this._models[e.url]=new Yt(ce.parse(e.url),e.lines,e.EOL,e.versionId)}acceptModelChanged(e,t){if(!this._models[e])return;this._models[e].onEvents(t)}acceptRemovedModel(e){this._models[e]&&delete this._models[e]}computeDiff(e,t,n,r){return Ht(this,void 0,void 0,(function*(){const i=this._getModel(e),o=this._getModel(t);if(!i||!o)return null;const s=i.getLinesContent(),a=o.getLinesContent(),u=new Le(s,a,{shouldComputeCharChanges:!0,shouldPostProcessCharChanges:!0,shouldIgnoreTrimWhitespace:n,shouldMakePrettyDiff:!0,maxComputationTime:r}).computeDiff(),l=!(u.changes.length>0)&&this._modelsAreIdentical(i,o);return{quitEarly:u.quitEarly,identical:l,changes:u.changes}}))}_modelsAreIdentical(e,t){const n=e.getLineCount();if(n!==t.getLineCount())return!1;for(let r=1;r<=n;r++){if(e.getLineContent(r)!==t.getLineContent(r))return!1}return!0}computeMoreMinimalEdits(e,t){return Ht(this,void 0,void 0,(function*(){const n=this._getModel(e);if(!n)return t;const r=[];let i=void 0;t=E(t,(e,t)=>{if(e.range&&t.range)return _e.compareRangesUsingStarts(e.range,t.range);return(e.range?0:1)-(t.range?0:1)});for(let{range:e,text:o,eol:s}of t){if("number"==typeof s&&(i=s),_e.isEmpty(e)&&!o)continue;const t=n.getValueInRange(e);if(t===(o=o.replace(/\r\n|\n|\r/g,n.eol)))continue;if(Math.max(o.length,t.length)>Gt._diffLimit){r.push({range:e,text:o});continue}const a=D(t,o,!1),u=n.offsetAt(_e.lift(e).getStartPosition());for(const e of a){const t=n.positionAt(u+e.originalStart),i=n.positionAt(u+e.originalStart+e.originalLength),s={text:o.substr(e.modifiedStart,e.modifiedLength),range:{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:i.lineNumber,endColumn:i.column}};n.getValueInRange(s.range)!==s.text&&r.push(s)}}return"number"==typeof i&&r.push({eol:i,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),r}))}computeLinks(e){return Ht(this,void 0,void 0,(function*(){let t=this._getModel(e);return t?function(e){return e&&"function"==typeof e.getLineCount&&"function"==typeof e.getLineContent?He.computeLinks(e):[]}(t):null}))}textualSuggest(e,t,n,r){return Ht(this,void 0,void 0,(function*(){const i=this._getModel(e);if(!i)return null;const o=[],s=new Set,a=new RegExp(n,r),u=i.getWordAtPosition(t,a);u&&s.add(i.getValueInRange(u));for(let e of i.words(a))if(!s.has(e)&&(s.add(e),isNaN(Number(e))&&(o.push(e),s.size>Gt._suggestionsLimit)))break;return o}))}computeWordRanges(e,t,n,r){return Ht(this,void 0,void 0,(function*(){let i=this._getModel(e);if(!i)return Object.create(null);const o=new RegExp(n,r),s=Object.create(null);for(let e=t.startLineNumber;ethis._host.fhr(e,t)),getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(r,t),Promise.resolve(y(this._foreignModule))):Promise.reject(new Error("Unexpected usage"))}fmr(e,t){if(!this._foreignModule||"function"!=typeof this._foreignModule[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(e){return Promise.reject(e)}}}Gt._diffLimit=1e5,Gt._suggestionsLimit=1e4,"function"==typeof importScripts&&(v.a.monaco={editor:void 0,languages:void 0,CancellationTokenSource:it,Emitter:Xe,KeyCode:At,KeyMod:Bt,Position:Ce,Range:_e,Selection:qt,SelectionDirection:Rt,MarkerSeverity:xt,MarkerTag:Nt,Uri:ce,Token:Kt});let zt=!1;function Jt(e){if(zt)return;zt=!0;const t=new S(e=>{self.postMessage(e)},t=>new Gt(t,e));self.onmessage=e=>{t.onmessage(e.data)}}function Qt(e,t){void 0===t&&(t=!1);var n=e.length,r=0,i="",o=0,s=16,a=0,u=0,l=0,c=0,h=0;function f(t,n){for(var i=0,o=0;i=48&&s<=57)o=16*o+s-48;else if(s>=65&&s<=70)o=16*o+s-65+10;else{if(!(s>=97&&s<=102))break;o=16*o+s-97+10}r++,i++}return i=n)return o=n,s=17;var t=e.charCodeAt(r);if(Zt(t)){do{r++,i+=String.fromCharCode(t),t=e.charCodeAt(r)}while(Zt(t));return s=15}if(Xt(t))return r++,i+=String.fromCharCode(t),13===t&&10===e.charCodeAt(r)&&(r++,i+="\n"),a++,l=r,s=14;switch(t){case 123:return r++,s=1;case 125:return r++,s=2;case 91:return r++,s=3;case 93:return r++,s=4;case 58:return r++,s=6;case 44:return r++,s=5;case 34:return r++,i=function(){for(var t="",i=r;;){if(r>=n){t+=e.substring(i,r),h=2;break}var o=e.charCodeAt(r);if(34===o){t+=e.substring(i,r),r++;break}if(92!==o){if(o>=0&&o<=31){if(Xt(o)){t+=e.substring(i,r),h=2;break}h=6}r++}else{if(t+=e.substring(i,r),++r>=n){h=2;break}switch(e.charCodeAt(r++)){case 34:t+='"';break;case 92:t+="\\";break;case 47:t+="/";break;case 98:t+="\b";break;case 102:t+="\f";break;case 110:t+="\n";break;case 114:t+="\r";break;case 116:t+="\t";break;case 117:var s=f(4,!0);s>=0?t+=String.fromCharCode(s):h=4;break;default:h=5}i=r}}return t}(),s=10;case 47:var d=r-1;if(47===e.charCodeAt(r+1)){for(r+=2;r=12&&e<=15);return e}:d,getToken:function(){return s},getTokenValue:function(){return i},getTokenOffset:function(){return o},getTokenLength:function(){return r-o},getTokenStartLine:function(){return u},getTokenStartCharacter:function(){return o-c},getTokenError:function(){return h}}}function Zt(e){return 32===e||9===e||11===e||12===e||160===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function Xt(e){return 10===e||13===e||8232===e||8233===e}function en(e){return e>=48&&e<=57}function tn(e,t,n){var r,i,o,s,a;if(t){for(s=t.offset,a=s+t.length,o=s;o>0&&!rn(e,o-1);)o--;for(var u=a;us&&e.substring(n,r)!==t&&v.push({offset:n,length:r-n,content:t})}var b=p();if(17!==b){var C=d.getTokenOffset()+o;y(nn(l,r),o,C)}for(;17!==b;){for(var _=d.getTokenOffset()+d.getTokenLength()+o,S=p(),E="";!h&&(12===S||13===S);){y(" ",_,d.getTokenOffset()+o),_=d.getTokenOffset()+d.getTokenLength()+o,E=12===S?g():"",S=p()}if(2===S)1!==b&&(f--,E=g());else if(4===S)3!==b&&(f--,E=g());else{switch(b){case 3:case 1:f++,E=g();break;case 5:case 12:E=g();break;case 13:E=h?g():" ";break;case 6:E=" ";break;case 10:if(6===S){E="";break}case 7:case 8:case 9:case 11:case 2:case 4:12===S||13===S?E=" ":5!==S&&17!==S&&(m=!0);break;case 16:m=!0}!h||12!==S&&13!==S||(E=g())}y(E,_,d.getTokenOffset()+o),b=S}return v}function nn(e,t){for(var n="",r=0;r0)for(var i=r.getToken();17!==i;){if(-1!==t.indexOf(i)){v();break}if(-1!==n.indexOf(i))break;i=v()}}function b(e){var t=r.getTokenValue();return e?h(t):a(t),v(),!0}function C(){switch(r.getToken()){case 3:return function(){l(),v();for(var e=!1;4!==r.getToken()&&17!==r.getToken();){if(5===r.getToken()){if(e||y(4,[],[]),f(","),v(),4===r.getToken()&&p)break}else e&&y(6,[],[]);C()||y(4,[],[4,5]),e=!0}return c(),4!==r.getToken()?y(8,[4],[]):v(),!0}();case 1:return function(){s(),v();for(var e=!1;2!==r.getToken()&&17!==r.getToken();){if(5===r.getToken()){if(e||y(4,[],[]),f(","),v(),2===r.getToken()&&p)break}else e&&y(6,[],[]);(10!==r.getToken()?(y(3,[],[2,5]),0):(b(!1),6===r.getToken()?(f(":"),v(),C()||y(4,[],[2,5])):y(5,[],[2,5]),1))||y(4,[],[2,5]),e=!0}return u(),2!==r.getToken()?y(7,[2],[]):v(),!0}();case 10:return b(!0);default:return function(){switch(r.getToken()){case 11:var e=0;try{"number"!=typeof(e=JSON.parse(r.getTokenValue()))&&(y(2),e=0)}catch(e){y(2)}h(e);break;case 7:h(null);break;case 8:h(!0);break;case 9:h(!1);break;default:return!1}return v(),!0}()}}return v(),17===r.getToken()?!!n.allowEmptyContent||(y(4,[],[]),!1):C()?(17!==r.getToken()&&y(9,[],[]),!0):(y(4,[],[]),!1)}self.onmessage=e=>{zt||Jt(null)},function(e){e.DEFAULT={allowTrailingComma:!1}}(on||(on={}));var an,un,ln,cn,hn,fn,dn,mn,gn,pn,vn,yn,bn,Cn,_n,Sn,En,An,xn,Nn,wn,Ln=Qt,Tn=function(e,t,n){void 0===t&&(t=[]),void 0===n&&(n=on.DEFAULT);var r=null,i=[],o=[];function s(e){Array.isArray(i)?i.push(e):null!==r&&(i[r]=e)}return sn(e,{onObjectBegin:function(){var e={};s(e),o.push(i),i=e,r=null},onObjectProperty:function(e){r=e},onObjectEnd:function(){i=o.pop()},onArrayBegin:function(){var e=[];s(e),o.push(i),i=e,r=null},onArrayEnd:function(){i=o.pop()},onLiteralValue:s,onError:function(e,n,r){t.push({error:e,offset:n,length:r})}},n),i[0]},kn=function e(t,n,r){if(void 0===r&&(r=!1),function(e,t,n){return void 0===n&&(n=!1),t>=e.offset&&t0&&(i.arguments=n),i},e.is=function(e){var t=e;return fr.defined(t)&&fr.string(t.title)&&fr.string(t.command)}}(_n||(_n={})),function(e){e.replace=function(e,t){return{range:e,newText:t}},e.insert=function(e,t){return{range:{start:e,end:e},newText:t}},e.del=function(e){return{range:e,newText:""}},e.is=function(e){var t=e;return fr.objectLiteral(t)&&fr.string(t.newText)&&un.is(t.range)}}(Sn||(Sn={})),function(e){e.create=function(e,t){return{textDocument:e,edits:t}},e.is=function(e){var t=e;return fr.defined(t)&&jn.is(t.textDocument)&&Array.isArray(t.edits)}}(En||(En={})),function(e){e.create=function(e,t){var n={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"create"===t.kind&&fr.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||fr.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||fr.boolean(t.options.ignoreIfExists)))}}(An||(An={})),function(e){e.create=function(e,t,n){var r={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(r.options=n),r},e.is=function(e){var t=e;return t&&"rename"===t.kind&&fr.string(t.oldUri)&&fr.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||fr.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||fr.boolean(t.options.ignoreIfExists)))}}(xn||(xn={})),function(e){e.create=function(e,t){var n={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(n.options=t),n},e.is=function(e){var t=e;return t&&"delete"===t.kind&&fr.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||fr.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||fr.boolean(t.options.ignoreIfNotExists)))}}(Nn||(Nn={})),function(e){e.is=function(e){var t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every((function(e){return fr.string(e.kind)?An.is(e)||xn.is(e)||Nn.is(e):En.is(e)})))}}(wn||(wn={}));var Fn,jn,Un,Vn,$n,Wn,qn,Kn,Bn,Hn,Yn,Gn,zn,Jn,Qn,Zn,Xn,er,tr,nr,rr,ir,or,sr,ar,ur,lr,cr=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(Sn.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(Sn.replace(e,t))},e.prototype.delete=function(e){this.edits.push(Sn.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}();!function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach((function(e){if(En.is(e)){var n=new cr(e.edits);t._textEditChanges[e.textDocument.uri]=n}})):e.changes&&Object.keys(e.changes).forEach((function(n){var r=new cr(e.changes[n]);t._textEditChanges[n]=r})))}Object.defineProperty(e.prototype,"edit",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(jn.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");var t=e;if(!(r=this._textEditChanges[t.uri])){var n={textDocument:t,edits:i=[]};this._workspaceEdit.documentChanges.push(n),r=new cr(i),this._textEditChanges[t.uri]=r}return r}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");var r;if(!(r=this._textEditChanges[e])){var i=[];this._workspaceEdit.changes[e]=i,r=new cr(i),this._textEditChanges[e]=r}return r},e.prototype.createFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(An.create(e,t))},e.prototype.renameFile=function(e,t,n){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(xn.create(e,t,n))},e.prototype.deleteFile=function(e,t){this.checkDocumentChanges(),this._workspaceEdit.documentChanges.push(Nn.create(e,t))},e.prototype.checkDocumentChanges=function(){if(!this._workspaceEdit||!this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.")}}();!function(e){e.create=function(e){return{uri:e}},e.is=function(e){var t=e;return fr.defined(t)&&fr.string(t.uri)}}(Fn||(Fn={})),function(e){e.create=function(e,t){return{uri:e,version:t}},e.is=function(e){var t=e;return fr.defined(t)&&fr.string(t.uri)&&(null===t.version||fr.number(t.version))}}(jn||(jn={})),function(e){e.create=function(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}},e.is=function(e){var t=e;return fr.defined(t)&&fr.string(t.uri)&&fr.string(t.languageId)&&fr.number(t.version)&&fr.string(t.text)}}(Un||(Un={})),function(e){e.PlainText="plaintext",e.Markdown="markdown"}(Vn||(Vn={})),function(e){e.is=function(t){var n=t;return n===e.PlainText||n===e.Markdown}}(Vn||(Vn={})),function(e){e.is=function(e){var t=e;return fr.objectLiteral(e)&&Vn.is(t.kind)&&fr.string(t.value)}}($n||($n={})),function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(Wn||(Wn={})),function(e){e.PlainText=1,e.Snippet=2}(qn||(qn={})),function(e){e.Deprecated=1}(Kn||(Kn={})),function(e){e.create=function(e){return{label:e}}}(Bn||(Bn={})),function(e){e.create=function(e,t){return{items:e||[],isIncomplete:!!t}}}(Hn||(Hn={})),function(e){e.fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},e.is=function(e){var t=e;return fr.string(t)||fr.objectLiteral(t)&&fr.string(t.language)&&fr.string(t.value)}}(Yn||(Yn={})),function(e){e.is=function(e){var t=e;return!!t&&fr.objectLiteral(t)&&($n.is(t.contents)||Yn.is(t.contents)||fr.typedArray(t.contents,Yn.is))&&(void 0===e.range||un.is(e.range))}}(Gn||(Gn={})),function(e){e.create=function(e,t){return t?{label:e,documentation:t}:{label:e}}}(zn||(zn={})),function(e){e.create=function(e,t){for(var n=[],r=2;r=0;o--){var s=r[o],a=e.offsetAt(s.range.start),u=e.offsetAt(s.range.end);if(!(u<=i))throw new Error("Overlapping edit");n=n.substring(0,a)+s.newText+n.substring(u,n.length),i=a}return n}}(hr||(hr={}));var fr,dr=function(){function e(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}return Object.defineProperty(e.prototype,"uri",{get:function(){return this._uri},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"languageId",{get:function(){return this._languageId},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"version",{get:function(){return this._version},enumerable:!0,configurable:!0}),e.prototype.getText=function(e){if(e){var t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content},e.prototype.update=function(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0},e.prototype.getLineOffsets=function(){if(void 0===this._lineOffsets){for(var e=[],t=this._content,n=!0,r=0;r0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),n=0,r=t.length;if(0===r)return an.create(0,e);for(;ne?r=i:n=i+1}var o=n-1;return an.create(o,e-t[o])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],r=e.line+1e?r=i:n=i+1}var o=n-1;return{line:o,character:e-t[o]}},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],r=e.line+1n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function Cr(e){var t=br(e.range);return t!==e.range?{newText:e.newText,range:t}:e}function _r(e,t){for(var n=[],r=2;rr&&i.push(n.substring(r,u)),a.newText.length&&i.push(a.newText),r=e.offsetAt(a.range.end)}return i.push(n.substr(r)),i.join("")}}(mr||(mr={})),function(e){e[e.Undefined=0]="Undefined",e[e.EnumValueMismatch=1]="EnumValueMismatch",e[e.UnexpectedEndOfComment=257]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=258]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=259]="UnexpectedEndOfNumber",e[e.InvalidUnicode=260]="InvalidUnicode",e[e.InvalidEscapeCharacter=261]="InvalidEscapeCharacter",e[e.InvalidCharacter=262]="InvalidCharacter",e[e.PropertyExpected=513]="PropertyExpected",e[e.CommaExpected=514]="CommaExpected",e[e.ColonExpected=515]="ColonExpected",e[e.ValueExpected=516]="ValueExpected",e[e.CommaOrCloseBacketExpected=517]="CommaOrCloseBacketExpected",e[e.CommaOrCloseBraceExpected=518]="CommaOrCloseBraceExpected",e[e.TrailingComma=519]="TrailingComma",e[e.DuplicateKey=520]="DuplicateKey",e[e.CommentNotPermitted=521]="CommentNotPermitted",e[e.SchemaResolveError=768]="SchemaResolveError"}(gr||(gr={})),(pr||(pr={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[Vn.Markdown,Vn.PlainText],commitCharactersSupport:!0}}}};var Er,Ar,xr=(Er=function(e,t){return(Er=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},function(e,t){function n(){this.constructor=e}Er(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),Nr=Sr(),wr={"color-hex":{errorMessage:Nr("colorHexFormatWarning","Invalid color format. Use #RGB, #RGBA, #RRGGBB or #RRGGBBAA."),pattern:/^#([0-9A-Fa-f]{3,4}|([0-9A-Fa-f]{2}){3,4})$/},"date-time":{errorMessage:Nr("dateTimeFormatWarning","String is not a RFC3339 date-time."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},date:{errorMessage:Nr("dateFormatWarning","String is not a RFC3339 date."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/i},time:{errorMessage:Nr("timeFormatWarning","String is not a RFC3339 time."),pattern:/^([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},email:{errorMessage:Nr("emailFormatWarning","String is not an e-mail address."),pattern:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/}},Lr=function(){function e(e,t,n){void 0===n&&(n=0),this.offset=t,this.length=n,this.parent=e}return Object.defineProperty(e.prototype,"children",{get:function(){return[]},enumerable:!1,configurable:!0}),e.prototype.toString=function(){return"type: "+this.type+" ("+this.offset+"/"+this.length+")"+(this.parent?" parent: {"+this.parent.toString()+"}":"")},e}(),Tr=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.type="null",r.value=null,r}return xr(t,e),t}(Lr),kr=function(e){function t(t,n,r){var i=e.call(this,t,r)||this;return i.type="boolean",i.value=n,i}return xr(t,e),t}(Lr),Or=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.type="array",r.items=[],r}return xr(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.items},enumerable:!1,configurable:!0}),t}(Lr),Ir=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.type="number",r.isInteger=!0,r.value=Number.NaN,r}return xr(t,e),t}(Lr),Mr=function(e){function t(t,n,r){var i=e.call(this,t,n,r)||this;return i.type="string",i.value="",i}return xr(t,e),t}(Lr),Pr=function(e){function t(t,n,r){var i=e.call(this,t,n)||this;return i.type="property",i.colonOffset=-1,i.keyNode=r,i}return xr(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.valueNode?[this.keyNode,this.valueNode]:[this.keyNode]},enumerable:!1,configurable:!0}),t}(Lr),Rr=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.type="object",r.properties=[],r}return xr(t,e),Object.defineProperty(t.prototype,"children",{get:function(){return this.properties},enumerable:!1,configurable:!0}),t}(Lr);function Dr(e){return Dn(e)?e?{}:{not:{}}:e}!function(e){e[e.Key=0]="Key",e[e.Enum=1]="Enum"}(Ar||(Ar={}));var Fr=function(){function e(e,t){void 0===e&&(e=-1),this.focusOffset=e,this.exclude=t,this.schemas=[]}return e.prototype.add=function(e){this.schemas.push(e)},e.prototype.merge=function(e){Array.prototype.push.apply(this.schemas,e.schemas)},e.prototype.include=function(e){return(-1===this.focusOffset||Wr(e,this.focusOffset))&&e!==this.exclude},e.prototype.newSub=function(){return new e(-1,this.exclude)},e}(),jr=function(){function e(){}return Object.defineProperty(e.prototype,"schemas",{get:function(){return[]},enumerable:!1,configurable:!0}),e.prototype.add=function(e){},e.prototype.merge=function(e){},e.prototype.include=function(e){return!0},e.prototype.newSub=function(){return this},e.instance=new e,e}(),Ur=function(){function e(){this.problems=[],this.propertiesMatches=0,this.propertiesValueMatches=0,this.primaryValueMatches=0,this.enumValueMatch=!1,this.enumValues=void 0}return e.prototype.hasProblems=function(){return!!this.problems.length},e.prototype.mergeAll=function(e){for(var t=0,n=e;t=e.offset&&t=0;)o.splice(t,1),t=o.indexOf(e)};if(t.properties)for(var g=0,p=Object.keys(t.properties);g0)for(var L=0,T=o;Lt.maxProperties&&n.problems.push({location:{offset:e.offset,length:e.length},severity:yn.Warning,message:Nr("MaxPropWarning","Object has more properties than limit of {0}.",t.maxProperties)});Pn(t.minProperties)&&e.properties.length=i.length&&n.propertiesValueMatches++}if(e.items.length>i.length)if("object"==typeof t.additionalItems)for(var u=i.length;ut.maxItems&&n.problems.push({location:{offset:e.offset,length:e.length},severity:yn.Warning,message:Nr("maxItemsWarning","Array has too many items. Expected {0} or fewer.",t.maxItems)});if(!0===t.uniqueItems){var m=Vr(e);m.some((function(e,t){return t!==m.lastIndexOf(e)}))&&n.problems.push({location:{offset:e.offset,length:e.length},severity:yn.Warning,message:Nr("uniqueItemsWarning","Array has duplicate items.")})}}(i,t,n,r);break;case"string":!function(e,t,n,r){Pn(t.minLength)&&e.value.lengtht.maxLength&&n.problems.push({location:{offset:e.offset,length:e.length},severity:yn.Warning,message:Nr("maxLengthWarning","String is longer than the maximum length of {0}.",t.maxLength)});if(i=t.pattern,"string"==typeof i){new RegExp(t.pattern).test(e.value)||n.problems.push({location:{offset:e.offset,length:e.length},severity:yn.Warning,message:t.patternErrorMessage||t.errorMessage||Nr("patternWarning",'String does not match the pattern of "{0}".',t.pattern)})}var i;if(t.format)switch(t.format){case"uri":case"uri-reference":var o=void 0;if(e.value){var s=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/.exec(e.value);s?s[2]||"uri"!==t.format||(o=Nr("uriSchemeMissing","URI with a scheme is expected.")):o=Nr("uriMissing","URI is expected.")}else o=Nr("uriEmpty","URI expected.");o&&n.problems.push({location:{offset:e.offset,length:e.length},severity:yn.Warning,message:t.patternErrorMessage||t.errorMessage||Nr("uriFormatWarning","String is not a URI: {0}",o)});break;case"color-hex":case"date-time":case"date":case"time":case"email":var a=wr[t.format];e.value&&a.pattern.exec(e.value)||n.problems.push({location:{offset:e.offset,length:e.length},severity:yn.Warning,message:t.patternErrorMessage||t.errorMessage||a.errorMessage})}}(i,t,n);break;case"number":!function(e,t,n,r){var i=e.value;function o(e){var t,n=/^(-?\d+)(?:\.(\d+))?(?:e([-+]\d+))?$/.exec(e.toString());return n&&{value:Number(n[1]+(n[2]||"")),multiplier:((null===(t=n[2])||void 0===t?void 0:t.length)||0)-(parseInt(n[3])||0)}}if(Pn(t.multipleOf)){var s=-1;if(Number.isInteger(t.multipleOf))s=i%t.multipleOf;else{var a=o(t.multipleOf),u=o(i);if(a&&u){var l=Math.pow(10,Math.abs(u.multiplier-a.multiplier));u.multiplier=d&&n.problems.push({location:{offset:e.offset,length:e.length},severity:yn.Warning,message:Nr("exclusiveMaximumWarning","Value is above the exclusive maximum of {0}.",d)});var m=h(t.minimum,t.exclusiveMinimum);Pn(m)&&ig&&n.problems.push({location:{offset:e.offset,length:e.length},severity:yn.Warning,message:Nr("maximumWarning","Value is above the maximum of {0}.",g)})}(i,t,n);break;case"property":return Kr(i.valueNode,t,n,r)}!function(){function e(e){return i.type===e||"integer"===e&&"number"===i.type&&i.isInteger}Array.isArray(t.type)?t.type.some(e)||n.problems.push({location:{offset:i.offset,length:i.length},severity:yn.Warning,message:t.errorMessage||Nr("typeArrayMismatchWarning","Incorrect type. Expected one of {0}.",t.type.join(", "))}):t.type&&(e(t.type)||n.problems.push({location:{offset:i.offset,length:i.length},severity:yn.Warning,message:t.errorMessage||Nr("typeMismatchWarning",'Incorrect type. Expected "{0}".',t.type)}));if(Array.isArray(t.allOf))for(var o=0,s=t.allOf;o0?s={schema:l,validationResult:c,matchingSchemas:h}:0===f&&(s.matchingSchemas.merge(h),s.validationResult.mergeEnumValues(c))}else s.matchingSchemas.merge(h),s.validationResult.propertiesMatches+=c.propertiesMatches,s.validationResult.propertiesValueMatches+=c.propertiesValueMatches;else s={schema:l,validationResult:c,matchingSchemas:h}}return o.length>1&&t&&n.problems.push({location:{offset:i.offset,length:1},severity:yn.Warning,message:Nr("oneOfWarning","Matches multiple schemas when only one must validate.")}),s&&(n.merge(s.validationResult),n.propertiesMatches+=s.validationResult.propertiesMatches,n.propertiesValueMatches+=s.validationResult.propertiesValueMatches,r.merge(s.matchingSchemas)),o.length};Array.isArray(t.anyOf)&&m(t.anyOf,!1);Array.isArray(t.oneOf)&&m(t.oneOf,!0);var g=function(e){var t=new Ur,o=r.newSub();Kr(i,Dr(e),t,o),n.merge(t),n.propertiesMatches+=t.propertiesMatches,n.propertiesValueMatches+=t.propertiesValueMatches,r.merge(o)},p=Dr(t.if);p&&function(e,t,n){var o=Dr(e),s=new Ur,a=r.newSub();Kr(i,o,s,a),r.merge(a),s.hasProblems()?n&&g(n):t&&g(t)}(p,Dr(t.then),Dr(t.else));if(Array.isArray(t.enum)){for(var v=Vr(i),y=!1,b=0,C=t.enum;b0){for(l--;l>0&&/\s/.test(i.charAt(l));)l--;c=l+1}if(u(e,t,l,c),n&&h(n,!1),r.length+s.length>0)for(var f=o.getToken();17!==f;){if(-1!==r.indexOf(f)){a();break}if(-1!==s.indexOf(f))break;f=a()}return n}function c(){switch(o.getTokenError()){case 4:return l(Nr("InvalidUnicode","Invalid unicode sequence in string."),gr.InvalidUnicode),!0;case 5:return l(Nr("InvalidEscapeCharacter","Invalid escape character in string."),gr.InvalidEscapeCharacter),!0;case 3:return l(Nr("UnexpectedEndOfNumber","Unexpected end of number."),gr.UnexpectedEndOfNumber),!0;case 1:return l(Nr("UnexpectedEndOfComment","Unexpected end of comment."),gr.UnexpectedEndOfComment),!0;case 2:return l(Nr("UnexpectedEndOfString","Unexpected end of string."),gr.UnexpectedEndOfString),!0;case 6:return l(Nr("InvalidCharacter","Invalid characters in string. Control characters must be escaped."),gr.InvalidCharacter),!0}return!1}function h(e,t){return e.length=o.getTokenOffset()+o.getTokenLength()-e.offset,t&&a(),e}var f=new Mr(void 0,0,0);function d(t,n){var r=new Pr(t,o.getTokenOffset(),f),i=m(r);if(!i){if(16!==o.getToken())return;l(Nr("DoubleQuotesExpected","Property keys must be doublequoted"),gr.Undefined);var s=new Mr(r,o.getTokenOffset(),o.getTokenLength());s.value=o.getTokenValue(),i=s,a()}r.keyNode=i;var c=n[i.value];if(c?(u(Nr("DuplicateKeyWarning","Duplicate object key"),gr.DuplicateKey,r.keyNode.offset,r.keyNode.offset+r.keyNode.length,yn.Warning),"object"==typeof c&&u(Nr("DuplicateKeyWarning","Duplicate object key"),gr.DuplicateKey,c.keyNode.offset,c.keyNode.offset+c.keyNode.length,yn.Warning),n[i.value]=!0):n[i.value]=r,6===o.getToken())r.colonOffset=o.getTokenOffset(),a();else if(l(Nr("ColonExpected","Colon expected"),gr.ColonExpected),10===o.getToken()&&e.positionAt(i.offset+i.length).line0?e.lastIndexOf(t)===n:0===n&&e===t}function Yr(e){return e.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}var Gr=Sr(),zr=function(){function e(e,t,n,r){void 0===t&&(t=[]),void 0===n&&(n=Promise),void 0===r&&(r={}),this.schemaService=e,this.contributions=t,this.promiseConstructor=n,this.clientCapabilities=r}return e.prototype.doResolve=function(e){for(var t=this.contributions.length-1;t>=0;t--){var n=this.contributions[t].resolveCompletion;if(n){var r=n(e);if(r)return r}}return this.promiseConstructor.resolve(e)},e.prototype.doComplete=function(e,t,n){var r=this,i={items:[],isIncomplete:!1},o=e.getText(),s=e.offsetAt(t),a=n.getNodeFromOffset(s,!0);if(this.isInComment(e,a?a.offset:0,s))return Promise.resolve(i);if(a&&s===a.offset+a.length&&s>0){var u=o[s-1];("object"===a.type&&"}"===u||"array"===a.type&&"]"===u)&&(a=a.parent)}var l,c=this.getCurrentWord(e,s);if(!a||"string"!==a.type&&"number"!==a.type&&"boolean"!==a.type&&"null"!==a.type){var h=s-c.length;h>0&&'"'===o[h-1]&&h--,l=un.create(e.positionAt(h),t)}else l=un.create(e.positionAt(a.offset),e.positionAt(a.offset+a.length));var f={},d={add:function(e){var t=e.label,n=f[t];if(n)n.documentation||(n.documentation=e.documentation);else{if((t=t.replace(/[\n]/g,"↵")).length>60){var r=t.substr(0,57).trim()+"...";f[r]||(t=r)}l&&void 0!==e.insertText&&(e.textEdit=Sn.replace(l,e.insertText)),e.label=t,f[t]=e,i.items.push(e)}},setAsIncomplete:function(){i.isIncomplete=!0},error:function(e){console.error(e)},log:function(e){console.log(e)},getNumberOfProposals:function(){return i.items.length}};return this.schemaService.getSchemaForResource(e.uri,n).then((function(t){var u=[],h=!0,m="",g=void 0;if(a&&"string"===a.type){var p=a.parent;p&&"property"===p.type&&p.keyNode===a&&(h=!p.valueNode,g=p,m=o.substr(a.offset+1,a.length-2),p&&(a=p.parent))}if(a&&"object"===a.type){if(a.offset===s)return i;a.properties.forEach((function(e){g&&g===e||(f[e.keyNode.value]=Bn.create("__"))}));var v="";h&&(v=r.evaluateSeparatorAfter(e,e.offsetAt(l.end))),t?r.getPropertyCompletions(t,n,a,h,v,d):r.getSchemaLessPropertyCompletions(n,a,m,d);var y=$r(a);r.contributions.forEach((function(t){var n=t.collectPropertyCompletions(e.uri,y,c,h,""===v,d);n&&u.push(n)})),!t&&c.length>0&&'"'!==o.charAt(s-c.length-1)&&(d.add({kind:Wn.Property,label:r.getLabelForValue(c),insertText:r.getInsertTextForProperty(c,void 0,!1,v),insertTextFormat:qn.Snippet,documentation:""}),d.setAsIncomplete())}var b={};return t?r.getValueCompletions(t,n,a,s,e,d,b):r.getSchemaLessValueCompletions(n,a,s,e,d),r.contributions.length>0&&r.getContributedValueCompletions(n,a,s,e,d,u),r.promiseConstructor.all(u).then((function(){if(0===d.getNumberOfProposals()){var t=s;!a||"string"!==a.type&&"number"!==a.type&&"boolean"!==a.type&&"null"!==a.type||(t=a.offset+a.length);var n=r.evaluateSeparatorAfter(e,t);r.addFillerValueCompletions(b,n,d)}return i}))}))},e.prototype.getPropertyCompletions=function(e,t,n,r,i,o){var s=this;t.getMatchingSchemas(e.schema,n.offset).forEach((function(e){if(e.node===n&&!e.inverted){var t=e.schema.properties;t&&Object.keys(t).forEach((function(e){var n=t[e];if("object"==typeof n&&!n.deprecationMessage&&!n.doNotSuggest){var a={kind:Wn.Property,label:e,insertText:s.getInsertTextForProperty(e,n,r,i),insertTextFormat:qn.Snippet,filterText:s.getFilterTextForValue(e),documentation:s.fromMarkup(n.markdownDescription)||n.description||""};void 0!==n.suggestSortText&&(a.sortText=n.suggestSortText),a.insertText&&Hr(a.insertText,"$1"+i)&&(a.command={title:"Suggest",command:"editor.action.triggerSuggest"}),o.add(a)}}));var a=e.schema.propertyNames;if("object"==typeof a&&!a.deprecationMessage&&!a.doNotSuggest){var u=function(e,t){void 0===t&&(t=void 0);var n={kind:Wn.Property,label:e,insertText:s.getInsertTextForProperty(e,void 0,r,i),insertTextFormat:qn.Snippet,filterText:s.getFilterTextForValue(e),documentation:t||s.fromMarkup(a.markdownDescription)||a.description||""};void 0!==a.suggestSortText&&(n.sortText=a.suggestSortText),n.insertText&&Hr(n.insertText,"$1"+i)&&(n.command={title:"Suggest",command:"editor.action.triggerSuggest"}),o.add(n)};if(a.enum)for(var l=0;l(t.colonOffset||0)){var l=t.valueNode;if(l&&(n>l.offset+l.length||"object"===l.type||"array"===l.type))return;var c=t.keyNode.value;e.visit((function(e){return"property"===e.type&&e.keyNode.value===c&&e.valueNode&&u(e.valueNode),!0})),"$schema"===c&&t.parent&&!t.parent.parent&&this.addDollarSchemaCompletions(a,i)}if("array"===t.type)if(t.parent&&"property"===t.parent.type){var h=t.parent.keyNode.value;e.visit((function(e){return"property"===e.type&&e.keyNode.value===h&&e.valueNode&&"array"===e.valueNode.type&&e.valueNode.items.forEach(u),!0}))}else t.items.forEach(u)},e.prototype.getValueCompletions=function(e,t,n,r,i,o,s){var a=r,u=void 0,l=void 0;if(!n||"string"!==n.type&&"number"!==n.type&&"boolean"!==n.type&&"null"!==n.type||(a=n.offset+n.length,l=n,n=n.parent),n){if("property"===n.type&&r>(n.colonOffset||0)){var c=n.valueNode;if(c&&r>c.offset+c.length)return;u=n.keyNode.value,n=n.parent}if(n&&(void 0!==u||"array"===n.type)){for(var h=this.evaluateSeparatorAfter(i,a),f=0,d=t.getMatchingSchemas(e.schema,n.offset,l);f(t.colonOffset||0)){var s=t.keyNode.value,a=t.valueNode;if((!a||n<=a.offset+a.length)&&t.parent){var u=$r(t.parent);this.contributions.forEach((function(e){var t=e.collectValueCompletions(r.uri,u,s,i);t&&o.push(t)}))}}}else this.contributions.forEach((function(e){var t=e.collectDefaultCompletions(r.uri,i);t&&o.push(t)}))},e.prototype.addSchemaValueCompletions=function(e,t,n,r){var i=this;"object"==typeof e&&(this.addEnumValueCompletions(e,t,n),this.addDefaultValueCompletions(e,t,n),this.collectTypes(e,r),Array.isArray(e.allOf)&&e.allOf.forEach((function(e){return i.addSchemaValueCompletions(e,t,n,r)})),Array.isArray(e.anyOf)&&e.anyOf.forEach((function(e){return i.addSchemaValueCompletions(e,t,n,r)})),Array.isArray(e.oneOf)&&e.oneOf.forEach((function(e){return i.addSchemaValueCompletions(e,t,n,r)})))},e.prototype.addDefaultValueCompletions=function(e,t,n,r){var i=this;void 0===r&&(r=0);var o=!1;if(Rn(e.default)){for(var s=e.type,a=e.default,u=r;u>0;u--)a=[a],s="array";n.add({kind:this.getSuggestionKind(s),label:this.getLabelForValue(a),insertText:this.getInsertTextForValue(a,t),insertTextFormat:qn.Snippet,detail:Gr("json.suggest.default","Default value")}),o=!0}Array.isArray(e.examples)&&e.examples.forEach((function(s){for(var a=e.type,u=s,l=r;l>0;l--)u=[u],a="array";n.add({kind:i.getSuggestionKind(a),label:i.getLabelForValue(u),insertText:i.getInsertTextForValue(u,t),insertTextFormat:qn.Snippet}),o=!0})),Array.isArray(e.defaultSnippets)&&e.defaultSnippets.forEach((function(s){var a,u,l=e.type,c=s.body,h=s.label;if(Rn(c)){e.type;for(var f=r;f>0;f--)c=[c],"array";a=i.getInsertTextForSnippetValue(c,t),u=i.getFilterTextForSnippetValue(c),h=h||i.getLabelForSnippetValue(c)}else{if("string"!=typeof s.bodyText)return;var d="",m="",g="";for(f=r;f>0;f--)d=d+g+"[\n",m=m+"\n"+g+"]",g+="\t",l="array";a=d+g+s.bodyText.split("\n").join("\n"+g)+m+t,h=h||a,u=a.replace(/[\n]/g,"")}n.add({kind:i.getSuggestionKind(l),label:h,documentation:i.fromMarkup(s.markdownDescription)||s.description,insertText:a,insertTextFormat:qn.Snippet,filterText:u}),o=!0})),!o&&"object"==typeof e.items&&!Array.isArray(e.items)&&r<5&&this.addDefaultValueCompletions(e.items,t,n,r+1)},e.prototype.addEnumValueCompletions=function(e,t,n){if(Rn(e.const)&&n.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(e.const),insertText:this.getInsertTextForValue(e.const,t),insertTextFormat:qn.Snippet,documentation:this.fromMarkup(e.markdownDescription)||e.description}),Array.isArray(e.enum))for(var r=0,i=e.enum.length;r0?t[0]:void 0}if(!e)return Wn.Value;switch(e){case"string":return Wn.Value;case"object":return Wn.Module;case"property":return Wn.Property;default:return Wn.Value}},e.prototype.getLabelTextForMatchingNode=function(e,t){switch(e.type){case"array":return"[]";case"object":return"{}";default:return t.getText().substr(e.offset,e.length)}},e.prototype.getInsertTextForMatchingNode=function(e,t,n){switch(e.type){case"array":return this.getInsertTextForValue([],n);case"object":return this.getInsertTextForValue({},n);default:var r=t.getText().substr(e.offset,e.length)+n;return this.getInsertTextForPlainText(r)}},e.prototype.getInsertTextForProperty=function(e,t,n,r){var i=this.getInsertTextForValue(e,"");if(!n)return i;var o,s=i+": ",a=0;if(t){if(Array.isArray(t.defaultSnippets)){if(1===t.defaultSnippets.length){var u=t.defaultSnippets[0].body;Rn(u)&&(o=this.getInsertTextForSnippetValue(u,""))}a+=t.defaultSnippets.length}if(t.enum&&(o||1!==t.enum.length||(o=this.getInsertTextForGuessedValue(t.enum[0],"")),a+=t.enum.length),Rn(t.default)&&(o||(o=this.getInsertTextForGuessedValue(t.default,"")),a++),Array.isArray(t.examples)&&t.examples.length&&(o||(o=this.getInsertTextForGuessedValue(t.examples[0],"")),a+=t.examples.length),0===a){var l=Array.isArray(t.type)?t.type[0]:t.type;switch(l||(t.properties?l="object":t.items&&(l="array")),l){case"boolean":o="$1";break;case"string":o='"$1"';break;case"object":o="{$1}";break;case"array":o="[$1]";break;case"number":case"integer":o="${1:0}";break;case"null":o="${1:null}";break;default:return i}}}return(!o||a>1)&&(o="$1"),s+o+r},e.prototype.getCurrentWord=function(e,t){for(var n=t-1,r=e.getText();n>=0&&-1===' \t\n\r\v":{[,]}'.indexOf(r.charAt(n));)n--;return r.substring(n+1,t)},e.prototype.evaluateSeparatorAfter=function(e,t){var n=Ln(e.getText(),!0);switch(n.setPosition(t),n.scan()){case 5:case 2:case 4:case 17:return"";default:return","}},e.prototype.findItemAtOffset=function(e,t,n){for(var r=Ln(t.getText(),!0),i=e.items,o=i.length-1;o>=0;o--){var s=i[o];if(n>s.offset+s.length)return r.setPosition(s.offset+s.length),5===r.scan()&&n>=r.getTokenOffset()+r.getTokenLength()?o+1:o;if(n>=s.offset)return o}return 0},e.prototype.isInComment=function(e,t,n){var r=Ln(e.getText(),!1);r.setPosition(t);for(var i=r.scan();17!==i&&r.getTokenOffset()+r.getTokenLength()i.offset+1&&r=0;c--){var h=this.contributions[c].getInfoContribution(e.uri,l);if(h)return h.then((function(e){return u(e)}))}return this.schemaService.getSchemaForResource(e.uri,n).then((function(e){if(e&&i){var t=n.getMatchingSchemas(e.schema,i.offset),r=void 0,o=void 0,s=void 0,a=void 0;t.every((function(e){if(e.node===i&&!e.inverted&&e.schema&&(r=r||e.schema.title,o=o||e.schema.markdownDescription||Qr(e.schema.description),e.schema.enum)){var t=e.schema.enum.indexOf(Vr(i));e.schema.markdownEnumDescriptions?s=e.schema.markdownEnumDescriptions[t]:e.schema.enumDescriptions&&(s=Qr(e.schema.enumDescriptions[t])),s&&"string"!=typeof(a=e.schema.enum[t])&&(a=JSON.stringify(a))}return!0}));var l="";return r&&(l=Qr(r)),o&&(l.length>0&&(l+="\n\n"),l+=o),s&&(l.length>0&&(l+="\n\n"),l+="`"+function(e){if(-1!==e.indexOf("`"))return"`` "+e+" ``";return e}(a)+"`: "+s),u([l])}return null}))},e}();function Qr(e){if(e)return e.replace(/([^\n\r])(\r?\n)([^\n\r])/gm,"$1\n\n$3").replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}var Zr=n(2),Xr=Sr(),ei=function(){function e(e,t){this.patternRegExps=[],this.isInclude=[];try{for(var n=0,r=e;n0;)this.callOnDispose.pop()()},e.prototype.onResourceChange=function(e){for(var t=this,n=!1,r=[e=si(e)],i=Object.keys(this.schemasById).map((function(e){return t.schemasById[e]}));r.length;)for(var o=r.pop(),s=0;s1&&(n=r[1]),Hr(n,".")&&(n=n.substr(0,n.length-1)),new ni({},[Xr("json.schema.nocontent","Unable to load schema from '{0}': {1}.",ai(e),n)])}))},e.prototype.resolveSchemaContent=function(e,t,n){var r=this,i=e.errors.slice(0),o=e.schema;if(o.$schema){var s=si(o.$schema);if("http://json-schema.org/draft-03/schema"===s)return this.promise.resolve(new ri({},[Xr("json.schema.draft03.notsupported","Draft-03 schemas are not supported.")]));"https://json-schema.org/draft/2019-09/schema"===s&&i.push(Xr("json.schema.draft201909.notsupported","Draft 2019-09 schemas are not yet fully supported."))}var a=this.contextService,u=function(e,t,n,r){var o=r?decodeURIComponent(r):void 0,s=function(e,t){if(!t)return e;var n=e;return"/"===t[0]&&(t=t.substr(1)),t.split("/").some((function(e){return!(n=n[e])})),n}(t,o);if(s)for(var a in s)s.hasOwnProperty(a)&&!e.hasOwnProperty(a)&&(e[a]=s[a]);else i.push(Xr("json.schema.invalidref","$ref '{0}' in '{1}' can not be resolved.",o,n))},l=function(e,t,n,o,s){a&&!/^\w+:\/\/.*/.test(t)&&(t=a.resolveRelativePath(t,o)),t=si(t);var l=r.getOrAddSchemaHandle(t);return l.getUnresolvedSchema().then((function(r){if(s[t]=!0,r.errors.length){var o=n?t+"#"+n:t;i.push(Xr("json.schema.problemloadingref","Problems loading reference '{0}': {1}",o,r.errors[0]))}return u(e,r.schema,t,n),c(e,r.schema,t,l.dependencies)}))},c=function(e,t,n,i){if(!e||"object"!=typeof e)return Promise.resolve(null);for(var o=[e],s=[],a=[],c=function(e){for(var r=[];e.$ref;){var s=e.$ref,c=s.split("#",2);if(delete e.$ref,c[0].length>0)return void a.push(l(e,c[0],c[1],n,i));-1===r.indexOf(s)&&(u(e,t,n,c[1]),r.push(s))}!function(){for(var e=[],t=0;t=0||(s.push(h),c(h))}return r.promise.all(a)};return c(o,o,t,n).then((function(e){return new ri(o,i)}))},e.prototype.getSchemaForResource=function(e,t){if(t&&t.root&&"object"===t.root.type){var n=t.root.properties.filter((function(e){return"$schema"===e.keyNode.value&&e.valueNode&&"string"===e.valueNode.type}));if(n.length>0){var r=n[0].valueNode;if(r&&"string"===r.type){var i=Vr(r);if(i&&function(e,t){if(e.length0?this.createCombinedSchema(e,a).getResolvedSchema():this.promise.resolve(void 0);return this.cachedSchemaForResource={resource:e,resolvedSchema:m},m},e.prototype.createCombinedSchema=function(e,t){if(1===t.length)return this.getOrAddSchemaHandle(t[0]);var n="schemaservice://combinedSchema/"+encodeURIComponent(e),r={allOf:t.map((function(e){return{$ref:e}}))};return this.addSchemaHandle(n,r)},e.prototype.getMatchingSchemas=function(e,t,n){if(n){var r=n.id||"schemaservice://untitled/matchingSchemas/"+oi++;return this.resolveSchemaContent(new ni(n),r,{}).then((function(e){return t.getMatchingSchemas(e.schema).filter((function(e){return!e.inverted}))}))}return this.getSchemaForResource(e.uri,t).then((function(e){return e?t.getMatchingSchemas(e.schema).filter((function(e){return!e.inverted})):[]}))},e}(),oi=0;function si(e){try{return Zr.a.parse(e).toString()}catch(t){return e}}function ai(e){try{var t=Zr.a.parse(e);if("file"===t.scheme)return t.fsPath}catch(e){}return e}var ui=Sr(),li=function(){function e(e,t){this.jsonSchemaService=e,this.promise=t,this.validationEnabled=!0}return e.prototype.configure=function(e){e&&(this.validationEnabled=e.validate,this.commentSeverity=e.allowComments?void 0:yn.Error)},e.prototype.doValidation=function(e,t,n,r){var i=this;if(!this.validationEnabled)return this.promise.resolve([]);var o=[],s={},a=function(e){var t=e.range.start.line+" "+e.range.start.character+" "+e.message;s[t]||(s[t]=!0,o.push(e))},u=function(r){var s=n?hi(n.trailingCommas):yn.Error,u=n?hi(n.comments):i.commentSeverity;if(r){if(r.errors.length&&t.root){var l=t.root,c="object"===l.type?l.properties[0]:void 0;if(c&&"$schema"===c.keyNode.value){var h=c.valueNode||c,f=un.create(e.positionAt(h.offset),e.positionAt(h.offset+h.length));a(Cn.create(f,r.errors[0],yn.Warning,gr.SchemaResolveError))}else{f=un.create(e.positionAt(l.offset),e.positionAt(l.offset+1));a(Cn.create(f,r.errors[0],yn.Warning,gr.SchemaResolveError))}}else{var d=t.validate(e,r.schema);d&&d.forEach(a)}(function e(t){if(t&&"object"==typeof t){if(Dn(t.allowComments))return t.allowComments;if(t.allOf)for(var n=0,r=t.allOf;n=gi&&e<=pi?e-gi+10:0)}function yi(e){if("#"===e[0])switch(e.length){case 4:return{red:17*vi(e.charCodeAt(1))/255,green:17*vi(e.charCodeAt(2))/255,blue:17*vi(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*vi(e.charCodeAt(1))/255,green:17*vi(e.charCodeAt(2))/255,blue:17*vi(e.charCodeAt(3))/255,alpha:17*vi(e.charCodeAt(4))/255};case 7:return{red:(16*vi(e.charCodeAt(1))+vi(e.charCodeAt(2)))/255,green:(16*vi(e.charCodeAt(3))+vi(e.charCodeAt(4)))/255,blue:(16*vi(e.charCodeAt(5))+vi(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*vi(e.charCodeAt(1))+vi(e.charCodeAt(2)))/255,green:(16*vi(e.charCodeAt(3))+vi(e.charCodeAt(4)))/255,blue:(16*vi(e.charCodeAt(5))+vi(e.charCodeAt(6)))/255,alpha:(16*vi(e.charCodeAt(7))+vi(e.charCodeAt(8)))/255}}}var bi=function(){function e(e){this.schemaService=e}return e.prototype.findDocumentSymbols=function(e,t,n){var r=this;void 0===n&&(n={resultLimit:Number.MAX_VALUE});var i=t.root;if(!i)return[];var o=n.resultLimit||Number.MAX_VALUE,s=e.uri;if(("vscode://defaultsettings/keybindings.json"===s||Hr(s.toLowerCase(),"/user/keybindings.json"))&&"array"===i.type){for(var a=[],u=0,l=i.items;u0){o--;var s=cn.create(e.uri,Ci(e,t)),a=n?n+"."+t.keyNode.value:t.keyNode.value;y.push({name:r.getKeyLabel(t),kind:r.getSymbolKind(i.type),location:s,containerName:n}),g.push({node:i,containerName:a})}else v=!0}))};p0){o--;var s=Ci(e,t),a=s,u={name:String(i),kind:r.getSymbolKind(t.type),range:s,selectionRange:a,children:[]};n.push(u),v.push({result:u.children,node:t})}else b=!0})):"object"===t.type&&t.properties.forEach((function(t){var i=t.valueNode;if(i)if(o>0){o--;var s=Ci(e,t),a=Ci(e,t.keyNode),u={name:r.getKeyLabel(t),kind:r.getSymbolKind(i.type),range:s,selectionRange:a,children:[]};n.push(u),v.push({result:u.children,node:i})}else b=!0}))};y0&&i[i.length-1].kind===c){l=i.pop();var h=e.positionAt(s.getTokenOffset()).line;l&&h>l.startLine+1&&o!==l.startLine&&(l.endLine=h-1,u(l),o=l.startLine)}break;case 13:var f=e.positionAt(s.getTokenOffset()).line,d=e.positionAt(s.getTokenOffset()+s.getTokenLength()).line;1===s.getTokenError()&&f+1=0&&i[g].kind!==gn.Region;)g--;if(g>=0){l=i[g];i.length=g,h>l.startLine&&o!==l.startLine&&(l.endLine=h,u(l),o=l.startLine)}}}}a=s.scan()}var p=t&&t.rangeLimit;if("number"!=typeof p||n.length<=p)return n;t&&t.onRangeLimitExceeded&&t.onRangeLimitExceeded(e.uri);for(var v=[],y=0,b=r;yp){_=g;break}C+=S}}var E=[];for(g=0;g=u&&i<=l&&a.push(r(u,l)),a.push(r(s.offset,s.offset+s.length));break;case"number":case"boolean":case"null":case"property":a.push(r(s.offset,s.offset+s.length))}if("property"===s.type||s.parent&&"array"===s.parent.type){var c=o(s.offset+s.length,5);-1!==c&&a.push(r(s.offset,c))}s=s.parent}for(var h=void 0,f=a.length-1;f>=0;f--)h=lr.create(a[f],h);return h||(h=lr.create(un.create(t,t))),h}))}function Oi(e,t,n){var r=e.offsetAt(t),i=n.getNodeFromOffset(r,!0);if(!i||!function(e){return"string"===e.type&&e.parent&&"property"===e.parent.type&&e.parent.valueNode===e&&"$ref"===e.parent.keyNode.value||!1}(i))return Promise.resolve([]);var o=i.parent.valueNode,s=function(e,t){var n=function(e){if("#"===e)return[];if("#"!==e[0]||"/"!==e[1])return null;return e.substring(2).split(/\//).map(Mi)}(t);if(!n)return null;return function e(t,n){if(!n)return null;if(0===t.length)return n;var r=t.shift();if(n&&"object"===n.type){var i=n.properties.find((function(e){return e.keyNode.value===r}));return i?e(t,i.valueNode):null}if(n&&"array"===n.type&&r.match(/^(0|[1-9][0-9]*)$/)){var o=Number.parseInt(r),s=n.items[o];return s?e(t,s):null}return null}(n,e.root)}(n,o.value);if(!s)return Promise.resolve([]);var a={targetUri:e.uri,originSelectionRange:Ii(e,o),targetRange:Ii(e,s),targetSelectionRange:Ii(e,s)};return Promise.resolve([a])}function Ii(e,t){return un.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length))}function Mi(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function Pi(e){var t=e.promiseConstructor||Promise,n=new ii(e.schemaRequestService,e.workspaceContext,t);n.setSchemaContributions(Si);var r=new zr(n,e.contributions,t,e.clientCapabilities),i=new Jr(n,e.contributions,t),o=new bi(n),s=new li(n,t);return{configure:function(e){n.clearExternalSchemas(),e.schemas&&e.schemas.forEach((function(e){n.registerExternalSchema(e.uri,e.fileMatch,e.schema)})),s.configure(e)},resetSchema:function(e){return n.onResourceChange(e)},doValidation:s.doValidation.bind(s),parseJSONDocument:function(e){return Br(e,{collectComments:!0})},newJSONDocument:function(e,t){return function(e,t){return void 0===t&&(t=[]),new qr(e,t,[])}(e,t)},getMatchingSchemas:n.getMatchingSchemas.bind(n),doResolve:r.doResolve.bind(r),doComplete:r.doComplete.bind(r),findDocumentSymbols:o.findDocumentSymbols.bind(o),findDocumentSymbols2:o.findDocumentSymbols2.bind(o),findColorSymbols:function(e,t){return o.findDocumentColors(e,t).then((function(e){return e.map((function(e){return e.range}))}))},findDocumentColors:o.findDocumentColors.bind(o),getColorPresentations:o.getColorPresentations.bind(o),doHover:i.doHover.bind(i),getFoldingRanges:Ti,getSelectionRanges:ki,findDefinition:Oi,format:function(e,t,n){var r=void 0;if(t){var i=e.offsetAt(t.start);r={offset:i,length:e.offsetAt(t.end)-i}}var o={tabSize:n?n.tabSize:4,insertSpaces:!n||n.insertSpaces,eol:"\n"};return function(e,t,n){return tn(e,t,n)}(e.getText(),r,o).map((function(t){return Sn.replace(un.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length)),t.content)}))}}}var Ri,Di=function(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{u(r.next(e))}catch(e){o(e)}}function a(e){try{u(r.throw(e))}catch(e){o(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}u((r=r.apply(e,t||[])).next())}))},Fi=function(e,t){var n,r,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,r=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=(i=s.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]1&&0===e[e.length-1].length&&t.push("");var o=t.join("/");return 0===e[0].length&&(o="/"+o),o}self.onmessage=function(){Jt((function(e,t){return new ji(e,t)}))}}]);