@kusto/monaco-kusto 13.1.3 → 14.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,17 +1,17 @@
1
1
  /*!-----------------------------------------------------------------------------
2
2
  * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * monaco-kusto version: 13.1.3(453f8c9ff63556e6eeac0aece7066b88c7002038)
3
+ * monaco-kusto version: 14.0.0(b10154abad9ec434f6b4ea889775260fe2c626b1)
4
4
  * Released under the MIT license
5
5
  * https://https://github.com/Azure/monaco-kusto/blob/master/README.md
6
6
  *-----------------------------------------------------------------------------*/
7
- define("vs/language/kusto/kustoWorker",["exports","./main-4e32eeb9","./schema-4d8e4385"],(function(u,d,e){"use strict";function t(u,d){return function(u){if(Array.isArray(u))return u}(u)||function(u,d){var e=null==u?null:"undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(null!=e){var t,n,a,r,c=[],f=!0,o=!1;try{if(a=(e=e.call(u)).next,0===d){if(Object(e)!==e)return;f=!1}else for(;!(f=(t=a.call(e)).done)&&(c.push(t.value),c.length!==d);f=!0);}catch(u){o=!0,n=u}finally{try{if(!f&&null!=e.return&&(r=e.return(),Object(r)!==r))return}finally{if(o)throw n}}return c}}(u,d)||a(u,d)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(u,d){var e="undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(!e){if(Array.isArray(u)||(e=a(u))||d&&u&&"number"==typeof u.length){e&&(u=e);var t=0,n=function(){};return{s:n,n:function(){return t>=u.length?{done:!0}:{done:!1,value:u[t++]}},e:function(u){throw u},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,c=!0,f=!1;return{s:function(){e=e.call(u)},n:function(){var u=e.next();return c=u.done,u},e:function(u){f=!0,r=u},f:function(){try{c||null==e.return||e.return()}finally{if(f)throw r}}}}function a(u,d){if(u){if("string"==typeof u)return r(u,d);var e={}.toString.call(u).slice(8,-1);return"Object"===e&&u.constructor&&(e=u.constructor.name),"Map"===e||"Set"===e?Array.from(u):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?r(u,d):void 0}}function r(u,d){(null==d||d>u.length)&&(d=u.length);for(var e=0,t=Array(d);e<d;e++)t[e]=u[e];return t}
7
+ define("vs/language/kusto/kustoWorker",["exports","./main-dd497f63","./schema-3ad9e39b"],(function(u,d,e){"use strict";function t(u,d){return function(u){if(Array.isArray(u))return u}(u)||function(u,d){var e=null==u?null:"undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(null!=e){var t,n,a,r,c=[],f=!0,o=!1;try{if(a=(e=e.call(u)).next,0===d){if(Object(e)!==e)return;f=!1}else for(;!(f=(t=a.call(e)).done)&&(c.push(t.value),c.length!==d);f=!0);}catch(u){o=!0,n=u}finally{try{if(!f&&null!=e.return&&(r=e.return(),Object(r)!==r))return}finally{if(o)throw n}}return c}}(u,d)||a(u,d)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(u,d){var e="undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(!e){if(Array.isArray(u)||(e=a(u))||d&&u&&"number"==typeof u.length){e&&(u=e);var t=0,n=function(){};return{s:n,n:function(){return t>=u.length?{done:!0}:{done:!1,value:u[t++]}},e:function(u){throw u},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,c=!0,f=!1;return{s:function(){e=e.call(u)},n:function(){var u=e.next();return c=u.done,u},e:function(u){f=!0,r=u},f:function(){try{c||null==e.return||e.return()}finally{if(f)throw r}}}}function a(u,d){if(u){if("string"==typeof u)return r(u,d);var e={}.toString.call(u).slice(8,-1);return"Object"===e&&u.constructor&&(e=u.constructor.name),"Map"===e||"Set"===e?Array.from(u):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?r(u,d):void 0}}function r(u,d){(null==d||d>u.length)&&(d=u.length);for(var e=0,t=Array(d);e<d;e++)t[e]=u[e];return t}
8
8
  /*!
9
9
  * XRegExp 5.1.1
10
10
  * <xregexp.com>
11
11
  * Steven Levithan (c) 2007-present MIT License
12
- */var c="xregexp",f={astral:!1,namespacing:!0},o={},i={},l={},s=[],D="default",m="class",b={default:/\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\d*|x[\dA-Fa-f]{2}|u(?:[\dA-Fa-f]{4}|{[\dA-Fa-f]+})|c[A-Za-z]|[\s\S])|\(\?(?:[:=!]|<[=!])|[?*+]\?|{\d+(?:,\d*)?}\??|[\s\S]/,class:/\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\dA-Fa-f]{2}|u(?:[\dA-Fa-f]{4}|{[\dA-Fa-f]+})|c[A-Za-z]|[\s\S])|[\s\S]/},C=/\$(?:\{([^\}]+)\}|<([^>]+)>|(\d\d?|[\s\S]?))/g,p=void 0===/()??/.exec("")[1],F=void 0!==/x/.flags;function h(u){var d=!0;try{if(new RegExp("",u),"y"===u){".."===".a".replace(new RegExp("a","gy"),".")&&(d=!1)}}catch(u){d=!1}return d}var A=h("d"),E=h("s"),v=h("u"),g=h("y"),y={d:A,g:!0,i:!0,m:!0,s:E,u:v,y:g},S=E?/[^dgimsuy]+/g:/[^dgimuy]+/g;function B(u,d,e,t,n){if(u[c]={captureNames:d},n)return u;if(u.__proto__)u.__proto__=G.prototype;else for(var a in G.prototype)u[a]=G.prototype[a];return u[c].source=e,u[c].flags=t?t.split("").sort().join(""):t,u}function k(u){return u.replace(/([\s\S])(?=[\s\S]*\1)/g,"")}function x(u,d){if(!G.isRegExp(u))throw new TypeError("Type RegExp expected");var e=u[c]||{},t=function(u){return F?u.flags:/\/([a-z]*)$/i.exec(RegExp.prototype.toString.call(u))[1]}(u),n="",a="",r=null,f=null;return(d=d||{}).removeG&&(a+="g"),d.removeY&&(a+="y"),a&&(t=t.replace(new RegExp("[".concat(a,"]+"),"g"),"")),d.addG&&(n+="g"),d.addY&&(n+="y"),n&&(t=k(t+n)),d.isInternalOnly||(void 0!==e.source&&(r=e.source),null!=e.flags&&(f=n?k(e.flags+n):e.flags)),u=B(new RegExp(d.source||u.source,t),function(u){return!(!u[c]||!u[c].captureNames)}(u)?e.captureNames.slice(0):null,r,f,d.isInternalOnly)}function T(u){return parseInt(u,16)}function K(u,d,e){var t=u.index+u[0].length,n=u.input[u.index-1],a=u.input[t];return/^[()|]$/.test(n)||/^[()|]$/.test(a)||0===u.index||t===u.input.length||/\(\?(?:[:=!]|<[=!])$/.test(u.input.substring(u.index-4,u.index))||function(u,d,e){var t="\\(\\?#[^)]*\\)",n="#[^#\\n]*",a="[?*+]|{\\d+(?:,\\d*)?}",r=e.includes("x")?new RegExp("^(?:\\s|".concat(n,"|").concat(t,")*(?:").concat(a,")")):new RegExp("^(?:".concat(t,")*(?:").concat(a,")"));return r.test(u.slice(d))}(u.input,t,e)?"":"(?:)"}function w(u){return parseInt(u,10).toString(16)}function _(u,d){return Object.prototype.toString.call(u)==="[object ".concat(d,"]")}function P(u){if(null==u)throw new TypeError("Cannot convert null or undefined to object");return u}function I(u){for(;u.length<4;)u="0".concat(u);return u}function O(u){var d={};return _(u,"String")?(G.forEach(u,/[^\s,]+/,(function(u){d[u]=!0})),d):u}function L(u){if(!/^[\w$]$/.test(u))throw new Error("Flag must be a single character A-Za-z0-9_$");y[u]=!0}function N(u,d,e,t,n){for(var a,r,c=s.length,f=u[e],o=null;c--;)if(!((r=s[c]).leadChar&&r.leadChar!==f||r.scope!==t&&"all"!==r.scope||r.flag&&!d.includes(r.flag))&&(a=G.exec(u,r.regex,e,"sticky"))){o={matchLength:a[0].length,output:r.handler.call(n,a,t,d),reparse:r.reparse};break}return o}function V(u){f.astral=u}function R(u){f.namespacing=u}function G(u,d){if(G.isRegExp(u)){if(void 0!==d)throw new TypeError("Cannot supply flags when copying a RegExp");return x(u)}if(u=void 0===u?"":String(u),d=void 0===d?"":String(d),G.isInstalled("astral")&&!d.includes("A")&&(d+="A"),l[u]||(l[u]={}),!l[u][d]){for(var e,a={hasNamedCapture:!1,captureNames:[]},r=D,c="",f=0,o=function(u,d){if(k(d)!==d)throw new SyntaxError("Invalid duplicate regex flag ".concat(d));u=u.replace(/^\(\?([\w$]+)\)/,(function(u,e){if(/[dgy]/.test(e))throw new SyntaxError("Cannot use flags dgy in mode modifier ".concat(u));return d=k(d+e),""}));var e,t=n(d);try{for(t.s();!(e=t.n()).done;){var a=e.value;if(!y[a])throw new SyntaxError("Unknown regex flag ".concat(a))}}catch(u){t.e(u)}finally{t.f()}return{pattern:u,flags:d}}(u,d),i=o.pattern,s=o.flags;f<i.length;){do{(e=N(i,s,f,r,a))&&e.reparse&&(i=i.slice(0,f)+e.output+i.slice(f+e.matchLength))}while(e&&e.reparse);if(e)c+=e.output,f+=e.matchLength||1;else{var C=t(G.exec(i,b[r],f,"sticky"),1)[0];c+=C,f+=C.length,"["===C&&r===D?r=m:"]"===C&&r===m&&(r=D)}}l[u][d]={pattern:c.replace(/(?:\(\?:\))+/g,"(?:)"),flags:s.replace(S,""),captures:a.hasNamedCapture?a.captureNames:null}}var p=l[u][d];return B(new RegExp(p.pattern,p.flags),p.captures,u,d)}G.prototype=new RegExp,G.version="5.1.1",G._clipDuplicates=k,G._hasNativeFlag=h,G._dec=T,G._hex=w,G._pad4=I,G.addToken=function(u,d,e){var t=(e=e||{}).optionalFlags;if(e.flag&&L(e.flag),t){var a,r=n(t=t.split(""));try{for(r.s();!(a=r.n()).done;){L(a.value)}}catch(u){r.e(u)}finally{r.f()}}s.push({regex:x(u,{addG:!0,addY:g,isInternalOnly:!0}),handler:d,scope:e.scope||D,flag:e.flag,reparse:e.reparse,leadChar:e.leadChar}),G.cache.flush("patterns")},G.cache=function(u,d){return i[u]||(i[u]={}),i[u][d]||(i[u][d]=G(u,d))},G.cache.flush=function(u){"patterns"===u?l={}:i={}},G.escape=function(u){return String(P(u)).replace(/[\\\[\]{}()*+?.^$|]/g,"\\$&").replace(/[\s#\-,]/g,(function(u){return"\\u".concat(I(w(u.charCodeAt(0))))}))},G.exec=function(u,d,e,t){var n,a,r="g",f=!1;(n=g&&!!(t||d.sticky&&!1!==t))?r+="y":t&&(f=!0,r+="FakeY"),d[c]=d[c]||{};var i=d[c][r]||(d[c][r]=x(d,{addG:!0,addY:n,source:f?"".concat(d.source,"|()"):void 0,removeY:!1===t,isInternalOnly:!0}));return e=e||0,i.lastIndex=e,a=o.exec.call(i,u),f&&a&&""===a.pop()&&(a=null),d.global&&(d.lastIndex=a?i.lastIndex:0),a},G.forEach=function(u,d,e){for(var t,n=0,a=-1;t=G.exec(u,d,n);)e(t,++a,u,d),n=t.index+(t[0].length||1)},G.globalize=function(u){return x(u,{addG:!0})},G.install=function(u){u=O(u),!f.astral&&u.astral&&V(!0),!f.namespacing&&u.namespacing&&R(!0)},G.isInstalled=function(u){return!!f[u]},G.isRegExp=function(u){return"[object RegExp]"===Object.prototype.toString.call(u)},G.match=function(u,d,e){var t=d.global&&"one"!==e||"all"===e,n=(t?"g":"")+(d.sticky?"y":"")||"noGY";d[c]=d[c]||{};var a=d[c][n]||(d[c][n]=x(d,{addG:!!t,removeG:"one"===e,isInternalOnly:!0})),r=String(P(u)).match(a);return d.global&&(d.lastIndex="one"===e&&r?r.index+r[0].length:0),t?r||[]:r&&r[0]},G.matchChain=function(u,d){return function u(e,t){var a=d[t].regex?d[t]:{regex:d[t]},r=[];function c(u){if(a.backref){var d="Backreference to undefined group: ".concat(a.backref),e=isNaN(a.backref);if(e&&G.isInstalled("namespacing")){if(!u.groups||!(a.backref in u.groups))throw new ReferenceError(d)}else if(!u.hasOwnProperty(a.backref))throw new ReferenceError(d);var t=e&&G.isInstalled("namespacing")?u.groups[a.backref]:u[a.backref];r.push(t||"")}else r.push(u[0])}var f,o=n(e);try{for(o.s();!(f=o.n()).done;){var i=f.value;G.forEach(i,a.regex,c)}}catch(u){o.e(u)}finally{o.f()}return t!==d.length-1&&r.length?u(r,t+1):r}([u],0)},G.replace=function(u,d,e,t){var n=G.isRegExp(d),a=d.global&&"one"!==t||"all"===t,r=(a?"g":"")+(d.sticky?"y":"")||"noGY",f=d;n?(d[c]=d[c]||{},f=d[c][r]||(d[c][r]=x(d,{addG:!!a,removeG:"one"===t,isInternalOnly:!0}))):a&&(f=new RegExp(G.escape(String(d)),"g"));var i=o.replace.call(P(u),f,e);return n&&d.global&&(d.lastIndex=0),i},G.replaceEach=function(u,d){var e,t=n(d);try{for(t.s();!(e=t.n()).done;){var a=e.value;u=G.replace(u,a[0],a[1],a[2])}}catch(u){t.e(u)}finally{t.f()}return u},G.split=function(u,d,e){return o.split.call(P(u),d,e)},G.test=function(u,d,e,t){return!!G.exec(u,d,e,t)},G.uninstall=function(u){u=O(u),f.astral&&u.astral&&V(!1),f.namespacing&&u.namespacing&&R(!1)},G.union=function(u,d,e){var t,a,r=(e=e||{}).conjunction||"or",f=0;function o(u,d,e){var n=a[f-t];if(d){if(++f,n)return"(?<".concat(n,">")}else if(e)return"\\".concat(+e+t);return u}if(!_(u,"Array")||!u.length)throw new TypeError("Must provide a nonempty array of patterns to merge");var i,l=/(\()(?!\?)|\\([1-9]\d*)|\\[\s\S]|\[(?:[^\\\]]|\\[\s\S])*\]/g,s=[],D=n(u);try{for(D.s();!(i=D.n()).done;){var m=i.value;G.isRegExp(m)?(t=f,a=m[c]&&m[c].captureNames||[],s.push(G(m.source).source.replace(l,o))):s.push(G.escape(m))}}catch(u){D.e(u)}finally{D.f()}var b="none"===r?"":"|";return G(s.join(b),d)},o.exec=function(u){var d=this.lastIndex,e=RegExp.prototype.exec.apply(this,arguments);if(e){if(!p&&e.length>1&&e.includes("")){var t=x(this,{removeG:!0,isInternalOnly:!0});String(u).slice(e.index).replace(t,(function(){for(var u=arguments.length,d=1;d<u-2;++d)void 0===(d<0||arguments.length<=d?void 0:arguments[d])&&(e[d]=void 0)}))}if(this[c]&&this[c].captureNames){var n=e;G.isInstalled("namespacing")&&(e.groups=Object.create(null),n=e.groups);for(var a=1;a<e.length;++a){var r=this[c].captureNames[a-1];r&&(n[r]=e[a])}}else!e.groups&&G.isInstalled("namespacing")&&(e.groups=void 0);this.global&&!e[0].length&&this.lastIndex>e.index&&(this.lastIndex=e.index)}return this.global||(this.lastIndex=d),e},o.test=function(u){return!!o.exec.call(this,u)},o.match=function(u){if(G.isRegExp(u)){if(u.global){var d=String.prototype.match.apply(this,arguments);return u.lastIndex=0,d}}else u=new RegExp(u);return o.exec.call(u,P(this))},o.replace=function(u,d){var e,t,n,a=G.isRegExp(u);return a?(u[c]&&(t=u[c].captureNames),e=u.lastIndex):u+="",n=_(d,"Function")?String(this).replace(u,(function(){for(var u=arguments.length,e=new Array(u),n=0;n<u;n++)e[n]=arguments[n];if(t){var a;G.isInstalled("namespacing")?(a=Object.create(null),e.push(a)):(e[0]=new String(e[0]),a=e[0]);for(var r=0;r<t.length;++r)t[r]&&(a[t[r]]=e[r+1])}return d.apply(void 0,e)})):String(P(this)).replace(u,(function(){for(var u=arguments.length,e=new Array(u),n=0;n<u;n++)e[n]=arguments[n];return String(d).replace(C,(function(u,d,n,a){d=d||n;var r=_(e[e.length-1],"Object")?4:3,c=e.length-r;if(d){if(/^\d+$/.test(d)){var f=+d;if(f<=c)return e[f]||""}var o=t?t.indexOf(d):-1;if(o<0)throw new SyntaxError("Backreference to undefined group ".concat(u));return e[o+1]||""}if(""===a||" "===a)throw new SyntaxError("Invalid token ".concat(u));if("&"===a||0==+a)return e[0];if("$"===a)return"$";if("`"===a)return e[e.length-1].slice(0,e[e.length-2]);if("'"===a)return e[e.length-1].slice(e[e.length-2]+e[0].length);if(a=+a,!isNaN(a)){if(a>c)throw new SyntaxError("Backreference to undefined group ".concat(u));return e[a]||""}throw new SyntaxError("Invalid token ".concat(u))}))})),a&&(u.global?u.lastIndex=0:u.lastIndex=e),n},o.split=function(u,d){if(!G.isRegExp(u))return String.prototype.split.apply(this,arguments);var e,t=String(this),n=[],a=u.lastIndex,r=0;return d=(void 0===d?-1:d)>>>0,G.forEach(t,u,(function(u){u.index+u[0].length>r&&(n.push(t.slice(r,u.index)),u.length>1&&u.index<t.length&&Array.prototype.push.apply(n,u.slice(1)),e=u[0].length,r=u.index+e)})),r===t.length?u.test("")&&!e||n.push(""):n.push(t.slice(r)),u.lastIndex=a,n.length>d?n.slice(0,d):n},G.addToken(/\\([ABCE-RTUVXYZaeg-mopqyz]|c(?![A-Za-z])|u(?![\dA-Fa-f]{4}|{[\dA-Fa-f]+})|x(?![\dA-Fa-f]{2}))/,(function(u,d){if("B"===u[1]&&d===D)return u[0];throw new SyntaxError("Invalid escape ".concat(u[0]))}),{scope:"all",leadChar:"\\"}),G.addToken(/\\u{([\dA-Fa-f]+)}/,(function(u,d,e){var t=T(u[1]);if(t>1114111)throw new SyntaxError("Invalid Unicode code point ".concat(u[0]));if(t<=65535)return"\\u".concat(I(w(t)));if(v&&e.includes("u"))return u[0];throw new SyntaxError("Cannot use Unicode code point above \\u{FFFF} without flag u")}),{scope:"all",leadChar:"\\"}),G.addToken(/\(\?#[^)]*\)/,K,{leadChar:"("}),G.addToken(/\s+|#[^\n]*\n?/,K,{flag:"x"}),E||G.addToken(/\./,(function(){return"[\\s\\S]"}),{flag:"s",leadChar:"."}),G.addToken(/\\k<([^>]+)>/,(function(u){var d=isNaN(u[1])?this.captureNames.indexOf(u[1])+1:+u[1],e=u.index+u[0].length;if(!d||d>this.captureNames.length)throw new SyntaxError("Backreference to undefined group ".concat(u[0]));return"\\".concat(d).concat(e===u.input.length||isNaN(u.input[e])?"":"(?:)")}),{leadChar:"\\"}),G.addToken(/\\(\d+)/,(function(u,d){if(!(d===D&&/^[1-9]/.test(u[1])&&+u[1]<=this.captureNames.length)&&"0"!==u[1])throw new SyntaxError("Cannot use octal escape or backreference to undefined group ".concat(u[0]));return u[0]}),{scope:"all",leadChar:"\\"}),G.addToken(/\(\?P?<((?:[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])(?:[\$0-9A-Z_a-z\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05EF-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u07FD\u0800-\u082D\u0840-\u085B\u0860-\u086A\u0870-\u0887\u0889-\u088E\u0898-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u09FE\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3C-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C5D\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1-\u0CF3\u0D00-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D81-\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECE\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1715\u171F-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u1820-\u1878\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B4C\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CD0-\u1CD2\u1CD4-\u1CFA\u1D00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA827\uA82C\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF65-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD27\uDD30-\uDD39\uDE80-\uDEA9\uDEAB\uDEAC\uDEB0\uDEB1\uDEFD-\uDF1C\uDF27\uDF30-\uDF50\uDF70-\uDF85\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC00-\uDC46\uDC66-\uDC75\uDC7F-\uDCBA\uDCC2\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD44-\uDD47\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDC9-\uDDCC\uDDCE-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E-\uDE41\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3B-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC5E-\uDC61\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF1D-\uDF2B\uDF30-\uDF39\uDF40-\uDF46]|\uD806[\uDC00-\uDC3A\uDCA0-\uDCE9\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD35\uDD37\uDD38\uDD3B-\uDD43\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD7\uDDDA-\uDDE1\uDDE3\uDDE4\uDE00-\uDE3E\uDE47\uDE50-\uDE99\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD8E\uDD90\uDD91\uDD93-\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF6\uDF00-\uDF10\uDF12-\uDF3A\uDF3E-\uDF42\uDF50-\uDF59\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC40-\uDC55]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDE70-\uDEBE\uDEC0-\uDEC9\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF4F-\uDF87\uDF8F-\uDF9F\uDFE0\uDFE1\uDFE3\uDFE4\uDFF0\uDFF1]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD833[\uDF00-\uDF2D\uDF30-\uDF46]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDC30-\uDC6D\uDC8F\uDD00-\uDD2C\uDD30-\uDD3D\uDD40-\uDD49\uDD4E\uDE90-\uDEAE\uDEC0-\uDEF9]|\uD839[\uDCD0-\uDCF9\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4B\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF]|\uDB40[\uDD00-\uDDEF])*)>/,(function(u){if(!G.isInstalled("namespacing")&&("length"===u[1]||"__proto__"===u[1]))throw new SyntaxError("Cannot use reserved word as capture name ".concat(u[0]));if(this.captureNames.includes(u[1]))throw new SyntaxError("Cannot use same name for multiple groups ".concat(u[0]));return this.captureNames.push(u[1]),this.hasNamedCapture=!0,"("}),{leadChar:"("}),G.addToken(/\((?!\?)/,(function(u,d,e){return e.includes("n")?"(?:":(this.captureNames.push(null),"(")}),{optionalFlags:"n",leadChar:"("});function j(u,d){return function(u){if(Array.isArray(u))return u}
12
+ */var c="xregexp",f={astral:!1,namespacing:!0},o={},i={},l={},s=[],D="default",m="class",b={default:/\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\d*|x[\dA-Fa-f]{2}|u(?:[\dA-Fa-f]{4}|{[\dA-Fa-f]+})|c[A-Za-z]|[\s\S])|\(\?(?:[:=!]|<[=!])|[?*+]\?|{\d+(?:,\d*)?}\??|[\s\S]/,class:/\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\dA-Fa-f]{2}|u(?:[\dA-Fa-f]{4}|{[\dA-Fa-f]+})|c[A-Za-z]|[\s\S])|[\s\S]/},C=/\$(?:\{([^\}]+)\}|<([^>]+)>|(\d\d?|[\s\S]?))/g,p=void 0===/()??/.exec("")[1],F=void 0!==/x/.flags;function h(u){var d=!0;try{if(new RegExp("",u),"y"===u){".."===".a".replace(new RegExp("a","gy"),".")&&(d=!1)}}catch(u){d=!1}return d}var A=h("d"),E=h("s"),g=h("u"),v=h("y"),y={d:A,g:!0,i:!0,m:!0,s:E,u:g,y:v},S=E?/[^dgimsuy]+/g:/[^dgimuy]+/g;function B(u,d,e,t,n){if(u[c]={captureNames:d},n)return u;if(u.__proto__)u.__proto__=G.prototype;else for(var a in G.prototype)u[a]=G.prototype[a];return u[c].source=e,u[c].flags=t?t.split("").sort().join(""):t,u}function k(u){return u.replace(/([\s\S])(?=[\s\S]*\1)/g,"")}function x(u,d){if(!G.isRegExp(u))throw new TypeError("Type RegExp expected");var e=u[c]||{},t=function(u){return F?u.flags:/\/([a-z]*)$/i.exec(RegExp.prototype.toString.call(u))[1]}(u),n="",a="",r=null,f=null;return(d=d||{}).removeG&&(a+="g"),d.removeY&&(a+="y"),a&&(t=t.replace(new RegExp("[".concat(a,"]+"),"g"),"")),d.addG&&(n+="g"),d.addY&&(n+="y"),n&&(t=k(t+n)),d.isInternalOnly||(void 0!==e.source&&(r=e.source),null!=e.flags&&(f=n?k(e.flags+n):e.flags)),u=B(new RegExp(d.source||u.source,t),function(u){return!(!u[c]||!u[c].captureNames)}(u)?e.captureNames.slice(0):null,r,f,d.isInternalOnly)}function T(u){return parseInt(u,16)}function K(u,d,e){var t=u.index+u[0].length,n=u.input[u.index-1],a=u.input[t];return/^[()|]$/.test(n)||/^[()|]$/.test(a)||0===u.index||t===u.input.length||/\(\?(?:[:=!]|<[=!])$/.test(u.input.substring(u.index-4,u.index))||function(u,d,e){var t="\\(\\?#[^)]*\\)",n="#[^#\\n]*",a="[?*+]|{\\d+(?:,\\d*)?}",r=e.includes("x")?new RegExp("^(?:\\s|".concat(n,"|").concat(t,")*(?:").concat(a,")")):new RegExp("^(?:".concat(t,")*(?:").concat(a,")"));return r.test(u.slice(d))}(u.input,t,e)?"":"(?:)"}function w(u){return parseInt(u,10).toString(16)}function _(u,d){return Object.prototype.toString.call(u)==="[object ".concat(d,"]")}function P(u){if(null==u)throw new TypeError("Cannot convert null or undefined to object");return u}function I(u){for(;u.length<4;)u="0".concat(u);return u}function O(u){var d={};return _(u,"String")?(G.forEach(u,/[^\s,]+/,(function(u){d[u]=!0})),d):u}function L(u){if(!/^[\w$]$/.test(u))throw new Error("Flag must be a single character A-Za-z0-9_$");y[u]=!0}function N(u,d,e,t,n){for(var a,r,c=s.length,f=u[e],o=null;c--;)if(!((r=s[c]).leadChar&&r.leadChar!==f||r.scope!==t&&"all"!==r.scope||r.flag&&!d.includes(r.flag))&&(a=G.exec(u,r.regex,e,"sticky"))){o={matchLength:a[0].length,output:r.handler.call(n,a,t,d),reparse:r.reparse};break}return o}function V(u){f.astral=u}function R(u){f.namespacing=u}function G(u,d){if(G.isRegExp(u)){if(void 0!==d)throw new TypeError("Cannot supply flags when copying a RegExp");return x(u)}if(u=void 0===u?"":String(u),d=void 0===d?"":String(d),G.isInstalled("astral")&&!d.includes("A")&&(d+="A"),l[u]||(l[u]={}),!l[u][d]){for(var e,a={hasNamedCapture:!1,captureNames:[]},r=D,c="",f=0,o=function(u,d){if(k(d)!==d)throw new SyntaxError("Invalid duplicate regex flag ".concat(d));u=u.replace(/^\(\?([\w$]+)\)/,(function(u,e){if(/[dgy]/.test(e))throw new SyntaxError("Cannot use flags dgy in mode modifier ".concat(u));return d=k(d+e),""}));var e,t=n(d);try{for(t.s();!(e=t.n()).done;){var a=e.value;if(!y[a])throw new SyntaxError("Unknown regex flag ".concat(a))}}catch(u){t.e(u)}finally{t.f()}return{pattern:u,flags:d}}(u,d),i=o.pattern,s=o.flags;f<i.length;){do{(e=N(i,s,f,r,a))&&e.reparse&&(i=i.slice(0,f)+e.output+i.slice(f+e.matchLength))}while(e&&e.reparse);if(e)c+=e.output,f+=e.matchLength||1;else{var C=t(G.exec(i,b[r],f,"sticky"),1)[0];c+=C,f+=C.length,"["===C&&r===D?r=m:"]"===C&&r===m&&(r=D)}}l[u][d]={pattern:c.replace(/(?:\(\?:\))+/g,"(?:)"),flags:s.replace(S,""),captures:a.hasNamedCapture?a.captureNames:null}}var p=l[u][d];return B(new RegExp(p.pattern,p.flags),p.captures,u,d)}G.prototype=new RegExp,G.version="5.1.1",G._clipDuplicates=k,G._hasNativeFlag=h,G._dec=T,G._hex=w,G._pad4=I,G.addToken=function(u,d,e){var t=(e=e||{}).optionalFlags;if(e.flag&&L(e.flag),t){var a,r=n(t=t.split(""));try{for(r.s();!(a=r.n()).done;){L(a.value)}}catch(u){r.e(u)}finally{r.f()}}s.push({regex:x(u,{addG:!0,addY:v,isInternalOnly:!0}),handler:d,scope:e.scope||D,flag:e.flag,reparse:e.reparse,leadChar:e.leadChar}),G.cache.flush("patterns")},G.cache=function(u,d){return i[u]||(i[u]={}),i[u][d]||(i[u][d]=G(u,d))},G.cache.flush=function(u){"patterns"===u?l={}:i={}},G.escape=function(u){return String(P(u)).replace(/[\\\[\]{}()*+?.^$|]/g,"\\$&").replace(/[\s#\-,]/g,(function(u){return"\\u".concat(I(w(u.charCodeAt(0))))}))},G.exec=function(u,d,e,t){var n,a,r="g",f=!1;(n=v&&!!(t||d.sticky&&!1!==t))?r+="y":t&&(f=!0,r+="FakeY"),d[c]=d[c]||{};var i=d[c][r]||(d[c][r]=x(d,{addG:!0,addY:n,source:f?"".concat(d.source,"|()"):void 0,removeY:!1===t,isInternalOnly:!0}));return e=e||0,i.lastIndex=e,a=o.exec.call(i,u),f&&a&&""===a.pop()&&(a=null),d.global&&(d.lastIndex=a?i.lastIndex:0),a},G.forEach=function(u,d,e){for(var t,n=0,a=-1;t=G.exec(u,d,n);)e(t,++a,u,d),n=t.index+(t[0].length||1)},G.globalize=function(u){return x(u,{addG:!0})},G.install=function(u){u=O(u),!f.astral&&u.astral&&V(!0),!f.namespacing&&u.namespacing&&R(!0)},G.isInstalled=function(u){return!!f[u]},G.isRegExp=function(u){return"[object RegExp]"===Object.prototype.toString.call(u)},G.match=function(u,d,e){var t=d.global&&"one"!==e||"all"===e,n=(t?"g":"")+(d.sticky?"y":"")||"noGY";d[c]=d[c]||{};var a=d[c][n]||(d[c][n]=x(d,{addG:!!t,removeG:"one"===e,isInternalOnly:!0})),r=String(P(u)).match(a);return d.global&&(d.lastIndex="one"===e&&r?r.index+r[0].length:0),t?r||[]:r&&r[0]},G.matchChain=function(u,d){return function u(e,t){var a=d[t].regex?d[t]:{regex:d[t]},r=[];function c(u){if(a.backref){var d="Backreference to undefined group: ".concat(a.backref),e=isNaN(a.backref);if(e&&G.isInstalled("namespacing")){if(!u.groups||!(a.backref in u.groups))throw new ReferenceError(d)}else if(!u.hasOwnProperty(a.backref))throw new ReferenceError(d);var t=e&&G.isInstalled("namespacing")?u.groups[a.backref]:u[a.backref];r.push(t||"")}else r.push(u[0])}var f,o=n(e);try{for(o.s();!(f=o.n()).done;){var i=f.value;G.forEach(i,a.regex,c)}}catch(u){o.e(u)}finally{o.f()}return t!==d.length-1&&r.length?u(r,t+1):r}([u],0)},G.replace=function(u,d,e,t){var n=G.isRegExp(d),a=d.global&&"one"!==t||"all"===t,r=(a?"g":"")+(d.sticky?"y":"")||"noGY",f=d;n?(d[c]=d[c]||{},f=d[c][r]||(d[c][r]=x(d,{addG:!!a,removeG:"one"===t,isInternalOnly:!0}))):a&&(f=new RegExp(G.escape(String(d)),"g"));var i=o.replace.call(P(u),f,e);return n&&d.global&&(d.lastIndex=0),i},G.replaceEach=function(u,d){var e,t=n(d);try{for(t.s();!(e=t.n()).done;){var a=e.value;u=G.replace(u,a[0],a[1],a[2])}}catch(u){t.e(u)}finally{t.f()}return u},G.split=function(u,d,e){return o.split.call(P(u),d,e)},G.test=function(u,d,e,t){return!!G.exec(u,d,e,t)},G.uninstall=function(u){u=O(u),f.astral&&u.astral&&V(!1),f.namespacing&&u.namespacing&&R(!1)},G.union=function(u,d,e){var t,a,r=(e=e||{}).conjunction||"or",f=0;function o(u,d,e){var n=a[f-t];if(d){if(++f,n)return"(?<".concat(n,">")}else if(e)return"\\".concat(+e+t);return u}if(!_(u,"Array")||!u.length)throw new TypeError("Must provide a nonempty array of patterns to merge");var i,l=/(\()(?!\?)|\\([1-9]\d*)|\\[\s\S]|\[(?:[^\\\]]|\\[\s\S])*\]/g,s=[],D=n(u);try{for(D.s();!(i=D.n()).done;){var m=i.value;G.isRegExp(m)?(t=f,a=m[c]&&m[c].captureNames||[],s.push(G(m.source).source.replace(l,o))):s.push(G.escape(m))}}catch(u){D.e(u)}finally{D.f()}var b="none"===r?"":"|";return G(s.join(b),d)},o.exec=function(u){var d=this.lastIndex,e=RegExp.prototype.exec.apply(this,arguments);if(e){if(!p&&e.length>1&&e.includes("")){var t=x(this,{removeG:!0,isInternalOnly:!0});String(u).slice(e.index).replace(t,(function(){for(var u=arguments.length,d=1;d<u-2;++d)void 0===(d<0||arguments.length<=d?void 0:arguments[d])&&(e[d]=void 0)}))}if(this[c]&&this[c].captureNames){var n=e;G.isInstalled("namespacing")&&(e.groups=Object.create(null),n=e.groups);for(var a=1;a<e.length;++a){var r=this[c].captureNames[a-1];r&&(n[r]=e[a])}}else!e.groups&&G.isInstalled("namespacing")&&(e.groups=void 0);this.global&&!e[0].length&&this.lastIndex>e.index&&(this.lastIndex=e.index)}return this.global||(this.lastIndex=d),e},o.test=function(u){return!!o.exec.call(this,u)},o.match=function(u){if(G.isRegExp(u)){if(u.global){var d=String.prototype.match.apply(this,arguments);return u.lastIndex=0,d}}else u=new RegExp(u);return o.exec.call(u,P(this))},o.replace=function(u,d){var e,t,n,a=G.isRegExp(u);return a?(u[c]&&(t=u[c].captureNames),e=u.lastIndex):u+="",n=_(d,"Function")?String(this).replace(u,(function(){for(var u=arguments.length,e=new Array(u),n=0;n<u;n++)e[n]=arguments[n];if(t){var a;G.isInstalled("namespacing")?(a=Object.create(null),e.push(a)):(e[0]=new String(e[0]),a=e[0]);for(var r=0;r<t.length;++r)t[r]&&(a[t[r]]=e[r+1])}return d.apply(void 0,e)})):String(P(this)).replace(u,(function(){for(var u=arguments.length,e=new Array(u),n=0;n<u;n++)e[n]=arguments[n];return String(d).replace(C,(function(u,d,n,a){d=d||n;var r=_(e[e.length-1],"Object")?4:3,c=e.length-r;if(d){if(/^\d+$/.test(d)){var f=+d;if(f<=c)return e[f]||""}var o=t?t.indexOf(d):-1;if(o<0)throw new SyntaxError("Backreference to undefined group ".concat(u));return e[o+1]||""}if(""===a||" "===a)throw new SyntaxError("Invalid token ".concat(u));if("&"===a||0==+a)return e[0];if("$"===a)return"$";if("`"===a)return e[e.length-1].slice(0,e[e.length-2]);if("'"===a)return e[e.length-1].slice(e[e.length-2]+e[0].length);if(a=+a,!isNaN(a)){if(a>c)throw new SyntaxError("Backreference to undefined group ".concat(u));return e[a]||""}throw new SyntaxError("Invalid token ".concat(u))}))})),a&&(u.global?u.lastIndex=0:u.lastIndex=e),n},o.split=function(u,d){if(!G.isRegExp(u))return String.prototype.split.apply(this,arguments);var e,t=String(this),n=[],a=u.lastIndex,r=0;return d=(void 0===d?-1:d)>>>0,G.forEach(t,u,(function(u){u.index+u[0].length>r&&(n.push(t.slice(r,u.index)),u.length>1&&u.index<t.length&&Array.prototype.push.apply(n,u.slice(1)),e=u[0].length,r=u.index+e)})),r===t.length?u.test("")&&!e||n.push(""):n.push(t.slice(r)),u.lastIndex=a,n.length>d?n.slice(0,d):n},G.addToken(/\\([ABCE-RTUVXYZaeg-mopqyz]|c(?![A-Za-z])|u(?![\dA-Fa-f]{4}|{[\dA-Fa-f]+})|x(?![\dA-Fa-f]{2}))/,(function(u,d){if("B"===u[1]&&d===D)return u[0];throw new SyntaxError("Invalid escape ".concat(u[0]))}),{scope:"all",leadChar:"\\"}),G.addToken(/\\u{([\dA-Fa-f]+)}/,(function(u,d,e){var t=T(u[1]);if(t>1114111)throw new SyntaxError("Invalid Unicode code point ".concat(u[0]));if(t<=65535)return"\\u".concat(I(w(t)));if(g&&e.includes("u"))return u[0];throw new SyntaxError("Cannot use Unicode code point above \\u{FFFF} without flag u")}),{scope:"all",leadChar:"\\"}),G.addToken(/\(\?#[^)]*\)/,K,{leadChar:"("}),G.addToken(/\s+|#[^\n]*\n?/,K,{flag:"x"}),E||G.addToken(/\./,(function(){return"[\\s\\S]"}),{flag:"s",leadChar:"."}),G.addToken(/\\k<([^>]+)>/,(function(u){var d=isNaN(u[1])?this.captureNames.indexOf(u[1])+1:+u[1],e=u.index+u[0].length;if(!d||d>this.captureNames.length)throw new SyntaxError("Backreference to undefined group ".concat(u[0]));return"\\".concat(d).concat(e===u.input.length||isNaN(u.input[e])?"":"(?:)")}),{leadChar:"\\"}),G.addToken(/\\(\d+)/,(function(u,d){if(!(d===D&&/^[1-9]/.test(u[1])&&+u[1]<=this.captureNames.length)&&"0"!==u[1])throw new SyntaxError("Cannot use octal escape or backreference to undefined group ".concat(u[0]));return u[0]}),{scope:"all",leadChar:"\\"}),G.addToken(/\(\?P?<((?:[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])(?:[\$0-9A-Z_a-z\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05EF-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u07FD\u0800-\u082D\u0840-\u085B\u0860-\u086A\u0870-\u0887\u0889-\u088E\u0898-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u09FE\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3C-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C5D\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1-\u0CF3\u0D00-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D81-\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECE\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1715\u171F-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u1820-\u1878\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B4C\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CD0-\u1CD2\u1CD4-\u1CFA\u1D00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA827\uA82C\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF65-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD27\uDD30-\uDD39\uDE80-\uDEA9\uDEAB\uDEAC\uDEB0\uDEB1\uDEFD-\uDF1C\uDF27\uDF30-\uDF50\uDF70-\uDF85\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC00-\uDC46\uDC66-\uDC75\uDC7F-\uDCBA\uDCC2\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD44-\uDD47\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDC9-\uDDCC\uDDCE-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E-\uDE41\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3B-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC5E-\uDC61\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF1D-\uDF2B\uDF30-\uDF39\uDF40-\uDF46]|\uD806[\uDC00-\uDC3A\uDCA0-\uDCE9\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD35\uDD37\uDD38\uDD3B-\uDD43\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD7\uDDDA-\uDDE1\uDDE3\uDDE4\uDE00-\uDE3E\uDE47\uDE50-\uDE99\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD8E\uDD90\uDD91\uDD93-\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF6\uDF00-\uDF10\uDF12-\uDF3A\uDF3E-\uDF42\uDF50-\uDF59\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC40-\uDC55]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDE70-\uDEBE\uDEC0-\uDEC9\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF4F-\uDF87\uDF8F-\uDF9F\uDFE0\uDFE1\uDFE3\uDFE4\uDFF0\uDFF1]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD833[\uDF00-\uDF2D\uDF30-\uDF46]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDC30-\uDC6D\uDC8F\uDD00-\uDD2C\uDD30-\uDD3D\uDD40-\uDD49\uDD4E\uDE90-\uDEAE\uDEC0-\uDEF9]|\uD839[\uDCD0-\uDCF9\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4B\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF]|\uDB40[\uDD00-\uDDEF])*)>/,(function(u){if(!G.isInstalled("namespacing")&&("length"===u[1]||"__proto__"===u[1]))throw new SyntaxError("Cannot use reserved word as capture name ".concat(u[0]));if(this.captureNames.includes(u[1]))throw new SyntaxError("Cannot use same name for multiple groups ".concat(u[0]));return this.captureNames.push(u[1]),this.hasNamedCapture=!0,"("}),{leadChar:"("}),G.addToken(/\((?!\?)/,(function(u,d,e){return e.includes("n")?"(?:":(this.captureNames.push(null),"(")}),{optionalFlags:"n",leadChar:"("});function j(u,d){return function(u){if(Array.isArray(u))return u}
13
13
  /*!
14
14
  * XRegExp Unicode Base 5.1.1
15
15
  * <xregexp.com>
16
16
  * Steven Levithan (c) 2008-present MIT License
17
- */(u)||function(u,d){var e=null==u?null:"undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(null!=e){var t,n,a,r,c=[],f=!0,o=!1;try{if(a=(e=e.call(u)).next,0===d){if(Object(e)!==e)return;f=!1}else for(;!(f=(t=a.call(e)).done)&&(c.push(t.value),c.length!==d);f=!0);}catch(u){o=!0,n=u}finally{try{if(!f&&null!=e.return&&(r=e.return(),Object(r)!==r))return}finally{if(o)throw n}}return c}}(u,d)||M(u,d)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function M(u,d){if(u){if("string"==typeof u)return $(u,d);var e={}.toString.call(u).slice(8,-1);return"Object"===e&&u.constructor&&(e=u.constructor.name),"Map"===e||"Set"===e?Array.from(u):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?$(u,d):void 0}}function $(u,d){(null==d||d>u.length)&&(d=u.length);for(var e=0,t=Array(d);e<d;e++)t[e]=u[e];return t}function U(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}var z=U([{name:"C",alias:"Other",isBmpLast:!0,bmp:"\0--Ÿ­͸͹΀-΃΋΍΢԰՗՘֋֌֐׈-׏׫-׮׵-؅؜۝܎܏݋݌޲-޿߻߼࠮࠯࠿࡜࡝࡟࡫-࡯࢏-ࢗ࣢঄঍঎঑঒঩঱঳-঵঺঻৅৆৉৊৏-৖৘-৛৞৤৥৿਀਄਋-਎਑਒਩਱਴਷਺਻਽੃-੆੉੊੎-੐੒-੘੝੟-੥੷-઀઄઎઒઩઱઴઺઻૆૊૎૏૑-૟૤૥૲-૸଀଄଍଎଑଒଩଱଴଺଻୅୆୉୊୎-୔୘-୛୞୤୥୸-஁஄஋-஍஑஖-஘஛஝஠-஢஥-஧஫-஭஺-஽௃-௅௉௎௏௑-௖௘-௥௻-௿఍఑఩఺఻౅౉౎-౔౗౛౜౞౟౤౥౰-౶಍಑಩಴಺಻೅೉೎-೔೗-೜೟೤೥೰ೳ-೿഍഑൅൉൐-൓൤൥඀඄඗-඙඲඼඾඿෇-෉෋-෎෕෗෠-෥෰෱෵-฀฻-฾๜-຀຃຅຋຤຦຾຿໅໇໎໏໚໛໠-໿཈཭-཰྘྽࿍࿛-࿿჆჈-჌჎჏቉቎቏቗቙቞቟኉኎኏኱኶኷኿዁዆዇዗጑጖጗፛፜፽-፿᎚-᎟᏶᏷᏾᏿᚝-᚟᛹-᛿᜖-᜞᜷-᜿᝔-᝟᝭᝱᝴-᝿៞៟៪-៯៺-៿᠎᠚-᠟᡹-᡿᢫-᢯᣶-᣿᤟᤬-᤯᤼-᤿᥁-᥃᥮᥯᥵-᥿᦬-᦯᧊-᧏᧛-᧝᨜᨝᩟᩽᩾᪊-᪏᪚-᪟᪮᪯᫏-᫿᭍-᭏᭿᯴-᯻᰸-᰺᱊-᱌Ᲊ-᲏᲻᲼᳈-᳏᳻-᳿἖἗἞἟὆὇὎὏὘὚὜὞὾὿᾵῅῔῕῜῰῱῵῿​-‏‪-‮⁠-⁲⁳₏₝-₟⃁-⃏⃱-⃿↌-↏␧-␿⑋-⑟⭴⭵⮖⳴-⳸⴦⴨-⴬⴮⴯⵨-⵮⵱-⵾⶗-⶟⶧⶯⶷⶿⷇⷏⷗⷟⹞-⹿⺚⻴-⻿⿖-⿯⿼-⿿぀゗゘㄀-㄄㄰㆏㇤-㇯㈟꒍-꒏꓇-꓏꘬-꘿꛸-꛿Ɤ-꟏꟒꟔Ꟛ-꟱꠭-꠯꠺-꠿꡸-꡿꣆-꣍꣚-꣟꥔-꥞꥽-꥿꧎꧚-꧝꧿꨷-꨿꩎꩏꩚꩛꫃-꫚꫷-꬀꬇꬈꬏꬐꬗-꬟꬧꬯꭬-꭯꯮꯯꯺-꯿힤-힯퟇-퟊퟼-﩮﩯﫚-﫿﬇-﬒﬘-﬜﬷﬽﬿﭂﭅﯃-﯒﶐﶑﷈-﷎﷐-﷯︚-︟﹓﹧﹬-﹯﹵﻽-＀﾿-￁￈￉￐￑￘￙￝-￟￧￯-￾￿",astral:"\ud800[\udc0c\udc27\udc3b\udc3e\udc4e\udc4f\udc5e-\udc7f\udcfb-\udcff\udd03-\udd06\udd34-\udd36\udd8f\udd9d-\udd9f\udda1-\uddcf\uddfe-\ude7f\ude9d-\ude9f\uded1-\udedf\udefc-\udeff\udf24-\udf2c\udf4b-\udf4f\udf7b-\udf7f\udf9e\udfc4-\udfc7\udfd6-\udfff]|\ud801[\udc9e\udc9f\udcaa-\udcaf\udcd4-\udcd7\udcfc-\udcff\udd28-\udd2f\udd64-\udd6e\udd7b\udd8b\udd93\udd96\udda2\uddb2\uddba\uddbd-\uddff\udf37-\udf3f\udf56-\udf5f\udf68-\udf7f\udf86\udfb1\udfbb-\udfff]|\ud802[\udc06\udc07\udc09\udc36\udc39-\udc3b\udc3d\udc3e\udc56\udc9f-\udca6\udcb0-\udcdf\udcf3\udcf6-\udcfa\udd1c-\udd1e\udd3a-\udd3e\udd40-\udd7f\uddb8-\uddbb\uddd0\uddd1\ude04\ude07-\ude0b\ude14\ude18\ude36\ude37\ude3b-\ude3e\ude49-\ude4f\ude59-\ude5f\udea0-\udebf\udee7-\udeea\udef7-\udeff\udf36-\udf38\udf56\udf57\udf73-\udf77\udf92-\udf98\udf9d-\udfa8\udfb0-\udfff]|\ud803[\udc49-\udc7f\udcb3-\udcbf\udcf3-\udcf9\udd28-\udd2f\udd3a-\ude5f\ude7f\udeaa\udeae\udeaf\udeb2-\udeff\udf28-\udf2f\udf5a-\udf6f\udf8a-\udfaf\udfcc-\udfdf\udff7-\udfff]|\ud804[\udc4e-\udc51\udc76-\udc7e\udcbd\udcc3-\udccf\udce9-\udcef\udcfa-\udcff\udd35\udd48-\udd4f\udd77-\udd7f\udde0\uddf5-\uddff\ude12\ude3f-\ude7f\ude87\ude89\ude8e\ude9e\udeaa-\udeaf\udeeb-\udeef\udefa-\udeff\udf04\udf0d\udf0e\udf11\udf12\udf29\udf31\udf34\udf3a\udf45\udf46\udf49\udf4a\udf4e\udf4f\udf51-\udf56\udf58-\udf5c\udf64\udf65\udf6d-\udf6f\udf75-\udfff]|\ud805[\udc5c\udc62-\udc7f\udcc8-\udccf\udcda-\udd7f\uddb6\uddb7\uddde-\uddff\ude45-\ude4f\ude5a-\ude5f\ude6d-\ude7f\udeba-\udebf\udeca-\udeff\udf1b\udf1c\udf2c-\udf2f\udf47-\udfff]|\ud806[\udc3c-\udc9f\udcf3-\udcfe\udd07\udd08\udd0a\udd0b\udd14\udd17\udd36\udd39\udd3a\udd47-\udd4f\udd5a-\udd9f\udda8\udda9\uddd8\uddd9\udde5-\uddff\ude48-\ude4f\udea3-\udeaf\udef9-\udfff]|\ud807[\udc09\udc37\udc46-\udc4f\udc6d-\udc6f\udc90\udc91\udca8\udcb7-\udcff\udd07\udd0a\udd37-\udd39\udd3b\udd3e\udd48-\udd4f\udd5a-\udd5f\udd66\udd69\udd8f\udd92\udd99-\udd9f\uddaa-\udedf\udef9-\udfaf\udfb1-\udfbf\udff2-\udffe]|\ud808[\udf9a-\udfff]|\ud809[\udc6f\udc75-\udc7f\udd44-\udfff]|[\ud80a\ud80e-\ud810\ud812-\ud819\ud824-\ud82a\ud82d\ud82e\ud830-\ud832\ud83f\ud87b-\ud87d\ud87f\ud885-\udb3f\udb41-\udbff][\udc00-\udfff]|\ud80b[\udc00-\udf8f\udff3-\udfff]|\ud80d[\udc2f-\udfff]|\ud811[\ude47-\udfff]|\ud81a[\ude39-\ude3f\ude5f\ude6a-\ude6d\udebf\udeca-\udecf\udeee\udeef\udef6-\udeff\udf46-\udf4f\udf5a\udf62\udf78-\udf7c\udf90-\udfff]|\ud81b[\udc00-\ude3f\ude9b-\udeff\udf4b-\udf4e\udf88-\udf8e\udfa0-\udfdf\udfe5-\udfef\udff2-\udfff]|\ud821[\udff8-\udfff]|\ud823[\udcd6-\udcff\udd09-\udfff]|\ud82b[\udc00-\udfef\udff4\udffc\udfff]|\ud82c[\udd23-\udd4f\udd53-\udd63\udd68-\udd6f\udefc-\udfff]|\ud82f[\udc6b-\udc6f\udc7d-\udc7f\udc89-\udc8f\udc9a\udc9b\udca0-\udfff]|\ud833[\udc00-\udeff\udf2e\udf2f\udf47-\udf4f\udfc4-\udfff]|\ud834[\udcf6-\udcff\udd27\udd28\udd73-\udd7a\uddeb-\uddff\ude46-\udedf\udef4-\udeff\udf57-\udf5f\udf79-\udfff]|\ud835[\udc55\udc9d\udca0\udca1\udca3\udca4\udca7\udca8\udcad\udcba\udcbc\udcc4\udd06\udd0b\udd0c\udd15\udd1d\udd3a\udd3f\udd45\udd47-\udd49\udd51\udea6\udea7\udfcc\udfcd]|\ud836[\ude8c-\ude9a\udea0\udeb0-\udfff]|\ud837[\udc00-\udeff\udf1f-\udfff]|\ud838[\udc07\udc19\udc1a\udc22\udc25\udc2b-\udcff\udd2d-\udd2f\udd3e\udd3f\udd4a-\udd4d\udd50-\ude8f\udeaf-\udebf\udefa-\udefe\udf00-\udfff]|\ud839[\udc00-\udfdf\udfe7\udfec\udfef\udfff]|\ud83a[\udcc5\udcc6\udcd7-\udcff\udd4c-\udd4f\udd5a-\udd5d\udd60-\udfff]|\ud83b[\udc00-\udc70\udcb5-\udd00\udd3e-\uddff\ude04\ude20\ude23\ude25\ude26\ude28\ude33\ude38\ude3a\ude3c-\ude41\ude43-\ude46\ude48\ude4a\ude4c\ude50\ude53\ude55\ude56\ude58\ude5a\ude5c\ude5e\ude60\ude63\ude65\ude66\ude6b\ude73\ude78\ude7d\ude7f\ude8a\ude9c-\udea0\udea4\udeaa\udebc-\udeef\udef2-\udfff]|\ud83c[\udc2c-\udc2f\udc94-\udc9f\udcaf\udcb0\udcc0\udcd0\udcf6-\udcff\uddae-\udde5\ude03-\ude0f\ude3c-\ude3f\ude49-\ude4f\ude52-\ude5f\ude66-\udeff]|\ud83d[\uded8-\udedc\udeed-\udeef\udefd-\udeff\udf74-\udf7f\udfd9-\udfdf\udfec-\udfef\udff1-\udfff]|\ud83e[\udc0c-\udc0f\udc48-\udc4f\udc5a-\udc5f\udc88-\udc8f\udcae\udcaf\udcb2-\udcff\ude54-\ude5f\ude6e\ude6f\ude75-\ude77\ude7d-\ude7f\ude87-\ude8f\udead-\udeaf\udebb-\udebf\udec6-\udecf\udeda-\udedf\udee8-\udeef\udef7-\udeff\udf93\udfcb-\udfef\udffa-\udfff]|\ud869[\udee0-\udeff]|\ud86d[\udf39-\udf3f]|\ud86e[\udc1e\udc1f]|\ud873[\udea2-\udeaf]|\ud87a[\udfe1-\udfff]|\ud87e[\ude1e-\udfff]|\ud884[\udf4b-\udfff]|\udb40[\udc00-\udcff\uddf0-\udfff]"},{name:"Cc",alias:"Control",bmp:"\0--Ÿ"},{name:"Cf",alias:"Format",bmp:"­؀-؅؜۝܏࢐࢑࣢᠎​-‏‪-‮⁠-⁤⁦-\ufeff-",astral:"\ud804[\udcbd\udccd]|\ud80d[\udc30-\udc38]|\ud82f[\udca0-\udca3]|\ud834[\udd73-\udd7a]|\udb40[\udc01\udc20-\udc7f]"},{name:"Cn",alias:"Unassigned",bmp:"͸͹΀-΃΋΍΢԰՗՘֋֌֐׈-׏׫-׮׵-׿܎݋݌޲-޿߻߼࠮࠯࠿࡜࡝࡟࡫-࡯࢏࢒-ࢗ঄঍঎঑঒঩঱঳-঵঺঻৅৆৉৊৏-৖৘-৛৞৤৥৿਀਄਋-਎਑਒਩਱਴਷਺਻਽੃-੆੉੊੎-੐੒-੘੝੟-੥੷-઀઄઎઒઩઱઴઺઻૆૊૎૏૑-૟૤૥૲-૸଀଄଍଎଑଒଩଱଴଺଻୅୆୉୊୎-୔୘-୛୞୤୥୸-஁஄஋-஍஑஖-஘஛஝஠-஢஥-஧஫-஭஺-஽௃-௅௉௎௏௑-௖௘-௥௻-௿఍఑఩఺఻౅౉౎-౔౗౛౜౞౟౤౥౰-౶಍಑಩಴಺಻೅೉೎-೔೗-೜೟೤೥೰ೳ-೿഍഑൅൉൐-൓൤൥඀඄඗-඙඲඼඾඿෇-෉෋-෎෕෗෠-෥෰෱෵-฀฻-฾๜-຀຃຅຋຤຦຾຿໅໇໎໏໚໛໠-໿཈཭-཰྘྽࿍࿛-࿿჆჈-჌჎჏቉቎቏቗቙቞቟኉኎኏኱኶኷኿዁዆዇዗጑጖጗፛፜፽-፿᎚-᎟᏶᏷᏾᏿᚝-᚟᛹-᛿᜖-᜞᜷-᜿᝔-᝟᝭᝱᝴-᝿៞៟៪-៯៺-៿᠚-᠟᡹-᡿᢫-᢯᣶-᣿᤟᤬-᤯᤼-᤿᥁-᥃᥮᥯᥵-᥿᦬-᦯᧊-᧏᧛-᧝᨜᨝᩟᩽᩾᪊-᪏᪚-᪟᪮᪯᫏-᫿᭍-᭏᭿᯴-᯻᰸-᰺᱊-᱌Ᲊ-᲏᲻᲼᳈-᳏᳻-᳿἖἗἞἟὆὇὎὏὘὚὜὞὾὿᾵῅῔῕῜῰῱῵῿⁥⁲⁳₏₝-₟⃁-⃏⃱-⃿↌-↏␧-␿⑋-⑟⭴⭵⮖⳴-⳸⴦⴨-⴬⴮⴯⵨-⵮⵱-⵾⶗-⶟⶧⶯⶷⶿⷇⷏⷗⷟⹞-⹿⺚⻴-⻿⿖-⿯⿼-⿿぀゗゘㄀-㄄㄰㆏㇤-㇯㈟꒍-꒏꓇-꓏꘬-꘿꛸-꛿Ɤ-꟏꟒꟔Ꟛ-꟱꠭-꠯꠺-꠿꡸-꡿꣆-꣍꣚-꣟꥔-꥞꥽-꥿꧎꧚-꧝꧿꨷-꨿꩎꩏꩚꩛꫃-꫚꫷-꬀꬇꬈꬏꬐꬗-꬟꬧꬯꭬-꭯꯮꯯꯺-꯿힤-힯퟇-퟊퟼-퟿﩮﩯﫚-﫿﬇-﬒﬘-﬜﬷﬽﬿﭂﭅﯃-﯒﶐﶑﷈-﷎﷐-﷯︚-︟﹓﹧﹬-﹯﹵﻽﻾＀﾿-￁￈￉￐￑￘￙￝-￟￧￯-￸￾￿",astral:"\ud800[\udc0c\udc27\udc3b\udc3e\udc4e\udc4f\udc5e-\udc7f\udcfb-\udcff\udd03-\udd06\udd34-\udd36\udd8f\udd9d-\udd9f\udda1-\uddcf\uddfe-\ude7f\ude9d-\ude9f\uded1-\udedf\udefc-\udeff\udf24-\udf2c\udf4b-\udf4f\udf7b-\udf7f\udf9e\udfc4-\udfc7\udfd6-\udfff]|\ud801[\udc9e\udc9f\udcaa-\udcaf\udcd4-\udcd7\udcfc-\udcff\udd28-\udd2f\udd64-\udd6e\udd7b\udd8b\udd93\udd96\udda2\uddb2\uddba\uddbd-\uddff\udf37-\udf3f\udf56-\udf5f\udf68-\udf7f\udf86\udfb1\udfbb-\udfff]|\ud802[\udc06\udc07\udc09\udc36\udc39-\udc3b\udc3d\udc3e\udc56\udc9f-\udca6\udcb0-\udcdf\udcf3\udcf6-\udcfa\udd1c-\udd1e\udd3a-\udd3e\udd40-\udd7f\uddb8-\uddbb\uddd0\uddd1\ude04\ude07-\ude0b\ude14\ude18\ude36\ude37\ude3b-\ude3e\ude49-\ude4f\ude59-\ude5f\udea0-\udebf\udee7-\udeea\udef7-\udeff\udf36-\udf38\udf56\udf57\udf73-\udf77\udf92-\udf98\udf9d-\udfa8\udfb0-\udfff]|\ud803[\udc49-\udc7f\udcb3-\udcbf\udcf3-\udcf9\udd28-\udd2f\udd3a-\ude5f\ude7f\udeaa\udeae\udeaf\udeb2-\udeff\udf28-\udf2f\udf5a-\udf6f\udf8a-\udfaf\udfcc-\udfdf\udff7-\udfff]|\ud804[\udc4e-\udc51\udc76-\udc7e\udcc3-\udccc\udcce\udccf\udce9-\udcef\udcfa-\udcff\udd35\udd48-\udd4f\udd77-\udd7f\udde0\uddf5-\uddff\ude12\ude3f-\ude7f\ude87\ude89\ude8e\ude9e\udeaa-\udeaf\udeeb-\udeef\udefa-\udeff\udf04\udf0d\udf0e\udf11\udf12\udf29\udf31\udf34\udf3a\udf45\udf46\udf49\udf4a\udf4e\udf4f\udf51-\udf56\udf58-\udf5c\udf64\udf65\udf6d-\udf6f\udf75-\udfff]|\ud805[\udc5c\udc62-\udc7f\udcc8-\udccf\udcda-\udd7f\uddb6\uddb7\uddde-\uddff\ude45-\ude4f\ude5a-\ude5f\ude6d-\ude7f\udeba-\udebf\udeca-\udeff\udf1b\udf1c\udf2c-\udf2f\udf47-\udfff]|\ud806[\udc3c-\udc9f\udcf3-\udcfe\udd07\udd08\udd0a\udd0b\udd14\udd17\udd36\udd39\udd3a\udd47-\udd4f\udd5a-\udd9f\udda8\udda9\uddd8\uddd9\udde5-\uddff\ude48-\ude4f\udea3-\udeaf\udef9-\udfff]|\ud807[\udc09\udc37\udc46-\udc4f\udc6d-\udc6f\udc90\udc91\udca8\udcb7-\udcff\udd07\udd0a\udd37-\udd39\udd3b\udd3e\udd48-\udd4f\udd5a-\udd5f\udd66\udd69\udd8f\udd92\udd99-\udd9f\uddaa-\udedf\udef9-\udfaf\udfb1-\udfbf\udff2-\udffe]|\ud808[\udf9a-\udfff]|\ud809[\udc6f\udc75-\udc7f\udd44-\udfff]|[\ud80a\ud80e-\ud810\ud812-\ud819\ud824-\ud82a\ud82d\ud82e\ud830-\ud832\ud83f\ud87b-\ud87d\ud87f\ud885-\udb3f\udb41-\udb7f][\udc00-\udfff]|\ud80b[\udc00-\udf8f\udff3-\udfff]|\ud80d[\udc2f\udc39-\udfff]|\ud811[\ude47-\udfff]|\ud81a[\ude39-\ude3f\ude5f\ude6a-\ude6d\udebf\udeca-\udecf\udeee\udeef\udef6-\udeff\udf46-\udf4f\udf5a\udf62\udf78-\udf7c\udf90-\udfff]|\ud81b[\udc00-\ude3f\ude9b-\udeff\udf4b-\udf4e\udf88-\udf8e\udfa0-\udfdf\udfe5-\udfef\udff2-\udfff]|\ud821[\udff8-\udfff]|\ud823[\udcd6-\udcff\udd09-\udfff]|\ud82b[\udc00-\udfef\udff4\udffc\udfff]|\ud82c[\udd23-\udd4f\udd53-\udd63\udd68-\udd6f\udefc-\udfff]|\ud82f[\udc6b-\udc6f\udc7d-\udc7f\udc89-\udc8f\udc9a\udc9b\udca4-\udfff]|\ud833[\udc00-\udeff\udf2e\udf2f\udf47-\udf4f\udfc4-\udfff]|\ud834[\udcf6-\udcff\udd27\udd28\uddeb-\uddff\ude46-\udedf\udef4-\udeff\udf57-\udf5f\udf79-\udfff]|\ud835[\udc55\udc9d\udca0\udca1\udca3\udca4\udca7\udca8\udcad\udcba\udcbc\udcc4\udd06\udd0b\udd0c\udd15\udd1d\udd3a\udd3f\udd45\udd47-\udd49\udd51\udea6\udea7\udfcc\udfcd]|\ud836[\ude8c-\ude9a\udea0\udeb0-\udfff]|\ud837[\udc00-\udeff\udf1f-\udfff]|\ud838[\udc07\udc19\udc1a\udc22\udc25\udc2b-\udcff\udd2d-\udd2f\udd3e\udd3f\udd4a-\udd4d\udd50-\ude8f\udeaf-\udebf\udefa-\udefe\udf00-\udfff]|\ud839[\udc00-\udfdf\udfe7\udfec\udfef\udfff]|\ud83a[\udcc5\udcc6\udcd7-\udcff\udd4c-\udd4f\udd5a-\udd5d\udd60-\udfff]|\ud83b[\udc00-\udc70\udcb5-\udd00\udd3e-\uddff\ude04\ude20\ude23\ude25\ude26\ude28\ude33\ude38\ude3a\ude3c-\ude41\ude43-\ude46\ude48\ude4a\ude4c\ude50\ude53\ude55\ude56\ude58\ude5a\ude5c\ude5e\ude60\ude63\ude65\ude66\ude6b\ude73\ude78\ude7d\ude7f\ude8a\ude9c-\udea0\udea4\udeaa\udebc-\udeef\udef2-\udfff]|\ud83c[\udc2c-\udc2f\udc94-\udc9f\udcaf\udcb0\udcc0\udcd0\udcf6-\udcff\uddae-\udde5\ude03-\ude0f\ude3c-\ude3f\ude49-\ude4f\ude52-\ude5f\ude66-\udeff]|\ud83d[\uded8-\udedc\udeed-\udeef\udefd-\udeff\udf74-\udf7f\udfd9-\udfdf\udfec-\udfef\udff1-\udfff]|\ud83e[\udc0c-\udc0f\udc48-\udc4f\udc5a-\udc5f\udc88-\udc8f\udcae\udcaf\udcb2-\udcff\ude54-\ude5f\ude6e\ude6f\ude75-\ude77\ude7d-\ude7f\ude87-\ude8f\udead-\udeaf\udebb-\udebf\udec6-\udecf\udeda-\udedf\udee8-\udeef\udef7-\udeff\udf93\udfcb-\udfef\udffa-\udfff]|\ud869[\udee0-\udeff]|\ud86d[\udf39-\udf3f]|\ud86e[\udc1e\udc1f]|\ud873[\udea2-\udeaf]|\ud87a[\udfe1-\udfff]|\ud87e[\ude1e-\udfff]|\ud884[\udf4b-\udfff]|\udb40[\udc00\udc02-\udc1f\udc80-\udcff\uddf0-\udfff]|[\udbbf\udbff][\udffe\udfff]"},{name:"Co",alias:"Private_Use",bmp:"-",astral:"[\udb80-\udbbe\udbc0-\udbfe][\udc00-\udfff]|[\udbbf\udbff][\udc00-\udffd]"},{name:"Cs",alias:"Surrogate",bmp:"\ud800-\udfff"},{name:"L",alias:"Letter",bmp:"A-Za-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢄᢇ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々〆〱-〵〻〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛥꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",astral:"\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\ude80-\ude9c\udea0-\uded0\udf00-\udf1f\udf2d-\udf40\udf42-\udf49\udf50-\udf75\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf]|\ud801[\udc00-\udc9d\udcb0-\udcd3\udcd8-\udcfb\udd00-\udd27\udd30-\udd63\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc\ude00-\udf36\udf40-\udf55\udf60-\udf67\udf80-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude35\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee4\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udc80-\udcb2\udcc0-\udcf2\udd00-\udd23\ude80-\udea9\udeb0\udeb1\udf00-\udf1c\udf27\udf30-\udf45\udf70-\udf81\udfb0-\udfc4\udfe0-\udff6]|\ud804[\udc03-\udc37\udc71\udc72\udc75\udc83-\udcaf\udcd0-\udce8\udd03-\udd26\udd44\udd47\udd50-\udd72\udd76\udd83-\uddb2\uddc1-\uddc4\uddda\udddc\ude00-\ude11\ude13-\ude2b\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udede\udf05-\udf0c\udf0f\udf10\udf13-\udf28\udf2a-\udf30\udf32\udf33\udf35-\udf39\udf3d\udf50\udf5d-\udf61]|\ud805[\udc00-\udc34\udc47-\udc4a\udc5f-\udc61\udc80-\udcaf\udcc4\udcc5\udcc7\udd80-\uddae\uddd8-\udddb\ude00-\ude2f\ude44\ude80-\udeaa\udeb8\udf00-\udf1a\udf40-\udf46]|\ud806[\udc00-\udc2b\udca0-\udcdf\udcff-\udd06\udd09\udd0c-\udd13\udd15\udd16\udd18-\udd2f\udd3f\udd41\udda0-\udda7\uddaa-\uddd0\udde1\udde3\ude00\ude0b-\ude32\ude3a\ude50\ude5c-\ude89\ude9d\udeb0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc2e\udc40\udc72-\udc8f\udd00-\udd06\udd08\udd09\udd0b-\udd30\udd46\udd60-\udd65\udd67\udd68\udd6a-\udd89\udd98\udee0-\udef2\udfb0]|\ud808[\udc00-\udf99]|\ud809[\udc80-\udd43]|\ud80b[\udf90-\udff0]|[\ud80c\ud81c-\ud820\ud822\ud840-\ud868\ud86a-\ud86c\ud86f-\ud872\ud874-\ud879\ud880-\ud883][\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\ude70-\udebe\uded0-\udeed\udf00-\udf2f\udf40-\udf43\udf63-\udf77\udf7d-\udf8f]|\ud81b[\ude40-\ude7f\udf00-\udf4a\udf50\udf93-\udf9f\udfe0\udfe1\udfe3]|\ud821[\udc00-\udff7]|\ud823[\udc00-\udcd5\udd00-\udd08]|\ud82b[\udff0-\udff3\udff5-\udffb\udffd\udffe]|\ud82c[\udc00-\udd22\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud837[\udf00-\udf1e]|\ud838[\udd00-\udd2c\udd37-\udd3d\udd4e\ude90-\udead\udec0-\udeeb]|\ud839[\udfe0-\udfe6\udfe8-\udfeb\udfed\udfee\udff0-\udffe]|\ud83a[\udc00-\udcc4\udd00-\udd43\udd4b]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud869[\udc00-\udedf\udf00-\udfff]|\ud86d[\udc00-\udf38\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\ud884[\udc00-\udf4a]"},{name:"LC",alias:"Cased_Letter",bmp:"A-Za-zµÀ-ÖØ-öø-ƺƼ-ƿDŽ-ʓʕ-ʯͰ-ͳͶͷͻ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՠ-ֈႠ-ჅჇჍა-ჺჽ-ჿᎠ-Ᏽᏸ-ᏽᲀ-ᲈᲐ-ᲺᲽ-Ჿᴀ-ᴫᵫ-ᵷᵹ-ᶚḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℴℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-ⱻⱾ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭꙀ-ꙭꚀ-ꚛꜢ-ꝯꝱ-ꞇꞋ-ꞎꞐ-ꟊꟐꟑꟓꟕ-ꟙꟵꟶꟺꬰ-ꭚꭠ-ꭨꭰ-ꮿff-stﬓ-ﬗA-Za-z",astral:"\ud801[\udc00-\udc4f\udcb0-\udcd3\udcd8-\udcfb\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc]|\ud803[\udc80-\udcb2\udcc0-\udcf2]|\ud806[\udca0-\udcdf]|\ud81b[\ude40-\ude7f]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud837[\udf00-\udf09\udf0b-\udf1e]|\ud83a[\udd00-\udd43]"},{name:"Ll",alias:"Lowercase_Letter",bmp:"a-zµß-öø-ÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżž-ƀƃƅƈƌƍƒƕƙ-ƛƞơƣƥƨƪƫƭưƴƶƹƺƽ-ƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳ-ȹȼȿɀɂɇɉɋɍɏ-ʓʕ-ʯͱͳͷͻ-ͽΐά-ώϐϑϕ-ϗϙϛϝϟϡϣϥϧϩϫϭϯ-ϳϵϸϻϼа-џѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӏӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧԩԫԭԯՠ-ֈა-ჺჽ-ჿᏸ-ᏽᲀ-ᲈᴀ-ᴫᵫ-ᵷᵹ-ᶚḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕ-ẝẟạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿ-ἇἐ-ἕἠ-ἧἰ-ἷὀ-ὅὐ-ὗὠ-ὧὰ-ώᾀ-ᾇᾐ-ᾗᾠ-ᾧᾰ-ᾴᾶᾷιῂ-ῄῆῇῐ-ΐῖῗῠ-ῧῲ-ῴῶῷℊℎℏℓℯℴℹℼℽⅆ-ⅉⅎↄⰰ-ⱟⱡⱥⱦⱨⱪⱬⱱⱳⱴⱶ-ⱻⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⳬⳮⳳⴀ-ⴥⴧⴭꙁꙃꙅꙇꙉꙋꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꚙꚛꜣꜥꜧꜩꜫꜭꜯ-ꜱꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯꝱ-ꝸꝺꝼꝿꞁꞃꞅꞇꞌꞎꞑꞓ-ꞕꞗꞙꞛꞝꞟꞡꞣꞥꞧꞩꞯꞵꞷꞹꞻꞽꞿꟁꟃꟈꟊꟑꟓꟕꟗꟙꟶꟺꬰ-ꭚꭠ-ꭨꭰ-ꮿff-stﬓ-ﬗa-z",astral:"\ud801[\udc28-\udc4f\udcd8-\udcfb\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc]|\ud803[\udcc0-\udcf2]|\ud806[\udcc0-\udcdf]|\ud81b[\ude60-\ude7f]|\ud835[\udc1a-\udc33\udc4e-\udc54\udc56-\udc67\udc82-\udc9b\udcb6-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udccf\udcea-\udd03\udd1e-\udd37\udd52-\udd6b\udd86-\udd9f\uddba-\uddd3\uddee-\ude07\ude22-\ude3b\ude56-\ude6f\ude8a-\udea5\udec2-\udeda\udedc-\udee1\udefc-\udf14\udf16-\udf1b\udf36-\udf4e\udf50-\udf55\udf70-\udf88\udf8a-\udf8f\udfaa-\udfc2\udfc4-\udfc9\udfcb]|\ud837[\udf00-\udf09\udf0b-\udf1e]|\ud83a[\udd22-\udd43]"},{name:"Lm",alias:"Modifier_Letter",bmp:"ʰ-ˁˆ-ˑˠ-ˤˬˮʹͺՙـۥۦߴߵߺࠚࠤࠨࣉॱๆໆჼៗᡃᪧᱸ-ᱽᴬ-ᵪᵸᶛ-ᶿⁱⁿₐ-ₜⱼⱽⵯⸯ々〱-〵〻ゝゞー-ヾꀕꓸ-ꓽꘌꙿꚜꚝꜗ-ꜟꝰꞈꟲ-ꟴꟸꟹꧏꧦꩰꫝꫳꫴꭜ-ꭟꭩー゙゚",astral:"\ud801[\udf80-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud81a[\udf40-\udf43]|\ud81b[\udf93-\udf9f\udfe0\udfe1\udfe3]|\ud82b[\udff0-\udff3\udff5-\udffb\udffd\udffe]|\ud838[\udd37-\udd3d]|𞥋"},{name:"Lo",alias:"Other_Letter",bmp:"ªºƻǀ-ǃʔא-תׯ-ײؠ-ؿف-يٮٯٱ-ۓەۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪࠀ-ࠕࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣈऄ-हऽॐक़-ॡॲ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๅກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎᄀ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៜᠠ-ᡂᡄ-ᡸᢀ-ᢄᢇ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱷᳩ-ᳬᳮ-ᳳᳵᳶᳺℵ-ℸⴰ-ⵧⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ〆〼ぁ-ゖゟァ-ヺヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꀔꀖ-ꒌꓐ-ꓷꔀ-ꘋꘐ-ꘟꘪꘫꙮꚠ-ꛥꞏꟷꟻ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧠ-ꧤꧧ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩯꩱ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛꫜꫠ-ꫪꫲꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎יִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼヲ-ッア-ンᅠ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",astral:"\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\ude80-\ude9c\udea0-\uded0\udf00-\udf1f\udf2d-\udf40\udf42-\udf49\udf50-\udf75\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf]|\ud801[\udc50-\udc9d\udd00-\udd27\udd30-\udd63\ude00-\udf36\udf40-\udf55\udf60-\udf67]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude35\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee4\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udd00-\udd23\ude80-\udea9\udeb0\udeb1\udf00-\udf1c\udf27\udf30-\udf45\udf70-\udf81\udfb0-\udfc4\udfe0-\udff6]|\ud804[\udc03-\udc37\udc71\udc72\udc75\udc83-\udcaf\udcd0-\udce8\udd03-\udd26\udd44\udd47\udd50-\udd72\udd76\udd83-\uddb2\uddc1-\uddc4\uddda\udddc\ude00-\ude11\ude13-\ude2b\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udede\udf05-\udf0c\udf0f\udf10\udf13-\udf28\udf2a-\udf30\udf32\udf33\udf35-\udf39\udf3d\udf50\udf5d-\udf61]|\ud805[\udc00-\udc34\udc47-\udc4a\udc5f-\udc61\udc80-\udcaf\udcc4\udcc5\udcc7\udd80-\uddae\uddd8-\udddb\ude00-\ude2f\ude44\ude80-\udeaa\udeb8\udf00-\udf1a\udf40-\udf46]|\ud806[\udc00-\udc2b\udcff-\udd06\udd09\udd0c-\udd13\udd15\udd16\udd18-\udd2f\udd3f\udd41\udda0-\udda7\uddaa-\uddd0\udde1\udde3\ude00\ude0b-\ude32\ude3a\ude50\ude5c-\ude89\ude9d\udeb0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc2e\udc40\udc72-\udc8f\udd00-\udd06\udd08\udd09\udd0b-\udd30\udd46\udd60-\udd65\udd67\udd68\udd6a-\udd89\udd98\udee0-\udef2\udfb0]|\ud808[\udc00-\udf99]|\ud809[\udc80-\udd43]|\ud80b[\udf90-\udff0]|[\ud80c\ud81c-\ud820\ud822\ud840-\ud868\ud86a-\ud86c\ud86f-\ud872\ud874-\ud879\ud880-\ud883][\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\ude70-\udebe\uded0-\udeed\udf00-\udf2f\udf63-\udf77\udf7d-\udf8f]|\ud81b[\udf00-\udf4a\udf50]|\ud821[\udc00-\udff7]|\ud823[\udc00-\udcd5\udd00-\udd08]|\ud82c[\udc00-\udd22\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99]|𝼊|\ud838[\udd00-\udd2c\udd4e\ude90-\udead\udec0-\udeeb]|\ud839[\udfe0-\udfe6\udfe8-\udfeb\udfed\udfee\udff0-\udffe]|\ud83a[\udc00-\udcc4]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud869[\udc00-\udedf\udf00-\udfff]|\ud86d[\udc00-\udf38\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\ud884[\udc00-\udf4a]"},{name:"Lt",alias:"Titlecase_Letter",bmp:"DžLjNjDzᾈ-ᾏᾘ-ᾟᾨ-ᾯᾼῌῼ"},{name:"Lu",alias:"Uppercase_Letter",bmp:"A-ZÀ-ÖØ-ÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉ-ƋƎ-ƑƓƔƖ-ƘƜƝƟƠƢƤƦƧƩƬƮƯƱ-ƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶ-ǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁɃ-ɆɈɊɌɎͰͲͶͿΆΈ-ΊΌΎΏΑ-ΡΣ-ΫϏϒ-ϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽ-ЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸӺӼӾԀԂԄԆԈԊԌԎԐԒԔԖԘԚԜԞԠԢԤԦԨԪԬԮԱ-ՖႠ-ჅჇჍᎠ-ᏵᲐ-ᲺᲽ-ᲿḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẞẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸỺỼỾἈ-ἏἘ-ἝἨ-ἯἸ-ἿὈ-ὍὙὛὝὟὨ-ὯᾸ-ΆῈ-ΉῘ-ΊῨ-ῬῸ-Ώℂℇℋ-ℍℐ-ℒℕℙ-ℝℤΩℨK-ℭℰ-ℳℾℿⅅↃⰀ-ⰯⱠⱢ-ⱤⱧⱩⱫⱭ-ⱰⱲⱵⱾ-ⲀⲂⲄⲆⲈⲊⲌⲎⲐⲒⲔⲖⲘⲚⲜⲞⲠⲢⲤⲦⲨⲪⲬⲮⲰⲲⲴⲶⲸⲺⲼⲾⳀⳂⳄⳆⳈⳊⳌⳎⳐⳒⳔⳖⳘⳚⳜⳞⳠⳢⳫⳭⳲꙀꙂꙄꙆꙈꙊꙌꙎꙐꙒꙔꙖꙘꙚꙜꙞꙠꙢꙤꙦꙨꙪꙬꚀꚂꚄꚆꚈꚊꚌꚎꚐꚒꚔꚖꚘꚚꜢꜤꜦꜨꜪꜬꜮꜲꜴꜶꜸꜺꜼꜾꝀꝂꝄꝆꝈꝊꝌꝎꝐꝒꝔꝖꝘꝚꝜꝞꝠꝢꝤꝦꝨꝪꝬꝮꝹꝻꝽꝾꞀꞂꞄꞆꞋꞍꞐꞒꞖꞘꞚꞜꞞꞠꞢꞤꞦꞨꞪ-ꞮꞰ-ꞴꞶꞸꞺꞼꞾꟀꟂꟄ-ꟇꟉꟐꟖꟘꟵA-Z",astral:"\ud801[\udc00-\udc27\udcb0-\udcd3\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95]|\ud803[\udc80-\udcb2]|\ud806[\udca0-\udcbf]|\ud81b[\ude40-\ude5f]|\ud835[\udc00-\udc19\udc34-\udc4d\udc68-\udc81\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb5\udcd0-\udce9\udd04\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd38\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd6c-\udd85\udda0-\uddb9\uddd4-\udded\ude08-\ude21\ude3c-\ude55\ude70-\ude89\udea8-\udec0\udee2-\udefa\udf1c-\udf34\udf56-\udf6e\udf90-\udfa8\udfca]|\ud83a[\udd00-\udd21]"},{name:"M",alias:"Mark",bmp:"̀-ͯ҃-҉֑-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣঁ-ঃ়া-ৄেৈো-্ৗৢৣ৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑੰੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣஂா-ூெ-ைொ-்ௗఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣඁ-ඃ්ා-ුූෘ-ෟෲෳัิ-ฺ็-๎ັິ-ຼ່-ໍ༹༘༙༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏႚ-ႝ፝-፟ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝᠋-᠍᠏ᢅᢆᢩᤠ-ᤫᤰ-᤻ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼᪰-ᫎᬀ-ᬄ᬴-᭄᭫-᭳ᮀ-ᮂᮡ-ᮭ᯦-᯳ᰤ-᰷᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿⃐-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꙯-꙲ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣠-꣱ꣿꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀ꧥꨩ-ꨶꩃꩌꩍꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭ﬞ︀-️︠-︯",astral:"\ud800[\uddfd\udee0\udf76-\udf7a]|\ud802[\ude01-\ude03\ude05\ude06\ude0c-\ude0f\ude38-\ude3a\ude3f\udee5\udee6]|\ud803[\udd24-\udd27\udeab\udeac\udf46-\udf50\udf82-\udf85]|\ud804[\udc00-\udc02\udc38-\udc46\udc70\udc73\udc74\udc7f-\udc82\udcb0-\udcba\udcc2\udd00-\udd02\udd27-\udd34\udd45\udd46\udd73\udd80-\udd82\uddb3-\uddc0\uddc9-\uddcc\uddce\uddcf\ude2c-\ude37\ude3e\udedf-\udeea\udf00-\udf03\udf3b\udf3c\udf3e-\udf44\udf47\udf48\udf4b-\udf4d\udf57\udf62\udf63\udf66-\udf6c\udf70-\udf74]|\ud805[\udc35-\udc46\udc5e\udcb0-\udcc3\uddaf-\uddb5\uddb8-\uddc0\udddc\udddd\ude30-\ude40\udeab-\udeb7\udf1d-\udf2b]|\ud806[\udc2c-\udc3a\udd30-\udd35\udd37\udd38\udd3b-\udd3e\udd40\udd42\udd43\uddd1-\uddd7\uddda-\udde0\udde4\ude01-\ude0a\ude33-\ude39\ude3b-\ude3e\ude47\ude51-\ude5b\ude8a-\ude99]|\ud807[\udc2f-\udc36\udc38-\udc3f\udc92-\udca7\udca9-\udcb6\udd31-\udd36\udd3a\udd3c\udd3d\udd3f-\udd45\udd47\udd8a-\udd8e\udd90\udd91\udd93-\udd97\udef3-\udef6]|\ud81a[\udef0-\udef4\udf30-\udf36]|\ud81b[\udf4f\udf51-\udf87\udf8f-\udf92\udfe4\udff0\udff1]|\ud82f[\udc9d\udc9e]|\ud833[\udf00-\udf2d\udf30-\udf46]|\ud834[\udd65-\udd69\udd6d-\udd72\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad\ude42-\ude44]|\ud836[\ude00-\ude36\ude3b-\ude6c\ude75\ude84\ude9b-\ude9f\udea1-\udeaf]|\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23\udc24\udc26-\udc2a\udd30-\udd36\udeae\udeec-\udeef]|\ud83a[\udcd0-\udcd6\udd44-\udd4a]|\udb40[\udd00-\uddef]"},{name:"Mc",alias:"Spacing_Mark",bmp:"ःऻा-ीॉ-ौॎॏংঃা-ীেৈোৌৗਃਾ-ੀઃા-ીૉોૌଂଃାୀେୈୋୌୗாிுூெ-ைொ-ௌௗఁ-ఃు-ౄಂಃಾೀ-ೄೇೈೊೋೕೖംഃാ-ീെ-ൈൊ-ൌൗංඃා-ෑෘ-ෟෲෳ༾༿ཿါာေးျြၖၗၢ-ၤၧ-ၭႃႄႇ-ႌႏႚ-ႜ᜕᜴ាើ-ៅះៈᤣ-ᤦᤩ-ᤫᤰᤱᤳ-ᤸᨙᨚᩕᩗᩡᩣᩤᩭ-ᩲᬄᬵᬻᬽ-ᭁᭃ᭄ᮂᮡᮦᮧ᮪ᯧᯪ-ᯬᯮ᯲᯳ᰤ-ᰫᰴᰵ᳡᳷〮〯ꠣꠤꠧꢀꢁꢴ-ꣃꥒ꥓ꦃꦴꦵꦺꦻꦾ-꧀ꨯꨰꨳꨴꩍꩻꩽꫫꫮꫯꫵꯣꯤꯦꯧꯩꯪ꯬",astral:"\ud804[\udc00\udc02\udc82\udcb0-\udcb2\udcb7\udcb8\udd2c\udd45\udd46\udd82\uddb3-\uddb5\uddbf\uddc0\uddce\ude2c-\ude2e\ude32\ude33\ude35\udee0-\udee2\udf02\udf03\udf3e\udf3f\udf41-\udf44\udf47\udf48\udf4b-\udf4d\udf57\udf62\udf63]|\ud805[\udc35-\udc37\udc40\udc41\udc45\udcb0-\udcb2\udcb9\udcbb-\udcbe\udcc1\uddaf-\uddb1\uddb8-\uddbb\uddbe\ude30-\ude32\ude3b\ude3c\ude3e\udeac\udeae\udeaf\udeb6\udf20\udf21\udf26]|\ud806[\udc2c-\udc2e\udc38\udd30-\udd35\udd37\udd38\udd3d\udd40\udd42\uddd1-\uddd3\udddc-\udddf\udde4\ude39\ude57\ude58\ude97]|\ud807[\udc2f\udc3e\udca9\udcb1\udcb4\udd8a-\udd8e\udd93\udd94\udd96\udef5\udef6]|\ud81b[\udf51-\udf87\udff0\udff1]|\ud834[\udd65\udd66\udd6d-\udd72]"},{name:"Me",alias:"Enclosing_Mark",bmp:"҈҉᪾⃝-⃠⃢-⃤꙰-꙲"},{name:"Mn",alias:"Nonspacing_Mark",bmp:"̀-ͯ҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ंऺ़ु-ै्॑-ॗॢॣঁ়ু-ৄ্ৢৣ৾ਁਂ਼ੁੂੇੈੋ-੍ੑੰੱੵઁં઼ુ-ૅેૈ્ૢૣૺ-૿ଁ଼ିୁ-ୄ୍୕ୖୢୣஂீ்ఀఄ఼ా-ీె-ైొ-్ౕౖౢౣಁ಼ಿೆೌ್ೢೣഀഁ഻഼ു-ൄ്ൢൣඁ්ි-ුූัิ-ฺ็-๎ັິ-ຼ່-ໍཱ༹༘༙༵༷-ཾྀ-྄྆྇ྍ-ྗྙ-ྼ࿆ိ-ူဲ-့္်ွှၘၙၞ-ၠၱ-ၴႂႅႆႍႝ፝-፟ᜒ-᜔ᜲᜳᝒᝓᝲᝳ឴឵ិ-ួំ៉-៓៝᠋-᠍᠏ᢅᢆᢩᤠ-ᤢᤧᤨᤲ᤹-᤻ᨘᨗᨛᩖᩘ-ᩞ᩠ᩢᩥ-ᩬᩳ-᩿᩼᪰-᪽ᪿ-ᫎᬀ-ᬃ᬴ᬶ-ᬺᬼᭂ᭫-᭳ᮀᮁᮢ-ᮥᮨᮩ᮫-ᮭ᯦ᯨᯩᯭᯯ-ᯱᰬ-ᰳᰶ᰷᳐-᳔᳒-᳢᳠-᳨᳭᳴᳸᳹᷀-᷿⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〭꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠥꠦ꠬꣄ꣅ꣠-꣱ꣿꤦ-꤭ꥇ-ꥑꦀ-ꦂ꦳ꦶ-ꦹꦼꦽꧥꨩ-ꨮꨱꨲꨵꨶꩃꩌꩼꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫬꫭ꫶ꯥꯨ꯭ﬞ︀-️︠-︯",astral:"\ud800[\uddfd\udee0\udf76-\udf7a]|\ud802[\ude01-\ude03\ude05\ude06\ude0c-\ude0f\ude38-\ude3a\ude3f\udee5\udee6]|\ud803[\udd24-\udd27\udeab\udeac\udf46-\udf50\udf82-\udf85]|\ud804[\udc01\udc38-\udc46\udc70\udc73\udc74\udc7f-\udc81\udcb3-\udcb6\udcb9\udcba\udcc2\udd00-\udd02\udd27-\udd2b\udd2d-\udd34\udd73\udd80\udd81\uddb6-\uddbe\uddc9-\uddcc\uddcf\ude2f-\ude31\ude34\ude36\ude37\ude3e\udedf\udee3-\udeea\udf00\udf01\udf3b\udf3c\udf40\udf66-\udf6c\udf70-\udf74]|\ud805[\udc38-\udc3f\udc42-\udc44\udc46\udc5e\udcb3-\udcb8\udcba\udcbf\udcc0\udcc2\udcc3\uddb2-\uddb5\uddbc\uddbd\uddbf\uddc0\udddc\udddd\ude33-\ude3a\ude3d\ude3f\ude40\udeab\udead\udeb0-\udeb5\udeb7\udf1d-\udf1f\udf22-\udf25\udf27-\udf2b]|\ud806[\udc2f-\udc37\udc39\udc3a\udd3b\udd3c\udd3e\udd43\uddd4-\uddd7\uddda\udddb\udde0\ude01-\ude0a\ude33-\ude38\ude3b-\ude3e\ude47\ude51-\ude56\ude59-\ude5b\ude8a-\ude96\ude98\ude99]|\ud807[\udc30-\udc36\udc38-\udc3d\udc3f\udc92-\udca7\udcaa-\udcb0\udcb2\udcb3\udcb5\udcb6\udd31-\udd36\udd3a\udd3c\udd3d\udd3f-\udd45\udd47\udd90\udd91\udd95\udd97\udef3\udef4]|\ud81a[\udef0-\udef4\udf30-\udf36]|\ud81b[\udf4f\udf8f-\udf92\udfe4]|\ud82f[\udc9d\udc9e]|\ud833[\udf00-\udf2d\udf30-\udf46]|\ud834[\udd67-\udd69\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad\ude42-\ude44]|\ud836[\ude00-\ude36\ude3b-\ude6c\ude75\ude84\ude9b-\ude9f\udea1-\udeaf]|\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23\udc24\udc26-\udc2a\udd30-\udd36\udeae\udeec-\udeef]|\ud83a[\udcd0-\udcd6\udd44-\udd4a]|\udb40[\udd00-\uddef]"},{name:"N",alias:"Number",bmp:"0-9²³¹¼-¾٠-٩۰-۹߀-߉०-९০-৯৴-৹੦-੯૦-૯୦-୯୲-୷௦-௲౦-౯౸-౾೦-೯൘-൞൦-൸෦-෯๐-๙໐-໙༠-༳၀-၉႐-႙፩-፼ᛮ-ᛰ០-៩៰-៹᠐-᠙᥆-᥏᧐-᧚᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙⁰⁴-⁹₀-₉⅐-ↂↅ-↉①-⒛⓪-⓿❶-➓⳽〇〡-〩〸-〺㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꘠-꘩ꛦ-ꛯ꠰-꠵꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9",astral:"\ud800[\udd07-\udd33\udd40-\udd78\udd8a\udd8b\udee1-\udefb\udf20-\udf23\udf41\udf4a\udfd1-\udfd5]|\ud801[\udca0-\udca9]|\ud802[\udc58-\udc5f\udc79-\udc7f\udca7-\udcaf\udcfb-\udcff\udd16-\udd1b\uddbc\uddbd\uddc0-\uddcf\uddd2-\uddff\ude40-\ude48\ude7d\ude7e\ude9d-\ude9f\udeeb-\udeef\udf58-\udf5f\udf78-\udf7f\udfa9-\udfaf]|\ud803[\udcfa-\udcff\udd30-\udd39\ude60-\ude7e\udf1d-\udf26\udf51-\udf54\udfc5-\udfcb]|\ud804[\udc52-\udc6f\udcf0-\udcf9\udd36-\udd3f\uddd0-\uddd9\udde1-\uddf4\udef0-\udef9]|\ud805[\udc50-\udc59\udcd0-\udcd9\ude50-\ude59\udec0-\udec9\udf30-\udf3b]|\ud806[\udce0-\udcf2\udd50-\udd59]|\ud807[\udc50-\udc6c\udd50-\udd59\udda0-\udda9\udfc0-\udfd4]|\ud809[\udc00-\udc6e]|\ud81a[\ude60-\ude69\udec0-\udec9\udf50-\udf59\udf5b-\udf61]|\ud81b[\ude80-\ude96]|\ud834[\udee0-\udef3\udf60-\udf78]|\ud835[\udfce-\udfff]|\ud838[\udd40-\udd49\udef0-\udef9]|\ud83a[\udcc7-\udccf\udd50-\udd59]|\ud83b[\udc71-\udcab\udcad-\udcaf\udcb1-\udcb4\udd01-\udd2d\udd2f-\udd3d]|\ud83c[\udd00-\udd0c]|\ud83e[\udff0-\udff9]"},{name:"Nd",alias:"Decimal_Number",bmp:"0-9٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9",astral:"\ud801[\udca0-\udca9]|\ud803[\udd30-\udd39]|\ud804[\udc66-\udc6f\udcf0-\udcf9\udd36-\udd3f\uddd0-\uddd9\udef0-\udef9]|\ud805[\udc50-\udc59\udcd0-\udcd9\ude50-\ude59\udec0-\udec9\udf30-\udf39]|\ud806[\udce0-\udce9\udd50-\udd59]|\ud807[\udc50-\udc59\udd50-\udd59\udda0-\udda9]|\ud81a[\ude60-\ude69\udec0-\udec9\udf50-\udf59]|\ud835[\udfce-\udfff]|\ud838[\udd40-\udd49\udef0-\udef9]|\ud83a[\udd50-\udd59]|\ud83e[\udff0-\udff9]"},{name:"Nl",alias:"Letter_Number",bmp:"ᛮ-ᛰⅠ-ↂↅ-ↈ〇〡-〩〸-〺ꛦ-ꛯ",astral:"\ud800[\udd40-\udd74\udf41\udf4a\udfd1-\udfd5]|\ud809[\udc00-\udc6e]"},{name:"No",alias:"Other_Number",bmp:"²³¹¼-¾৴-৹୲-୷௰-௲౸-౾൘-൞൰-൸༪-༳፩-፼៰-៹᧚⁰⁴-⁹₀-₉⅐-⅟↉①-⒛⓪-⓿❶-➓⳽㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꠰-꠵",astral:"\ud800[\udd07-\udd33\udd75-\udd78\udd8a\udd8b\udee1-\udefb\udf20-\udf23]|\ud802[\udc58-\udc5f\udc79-\udc7f\udca7-\udcaf\udcfb-\udcff\udd16-\udd1b\uddbc\uddbd\uddc0-\uddcf\uddd2-\uddff\ude40-\ude48\ude7d\ude7e\ude9d-\ude9f\udeeb-\udeef\udf58-\udf5f\udf78-\udf7f\udfa9-\udfaf]|\ud803[\udcfa-\udcff\ude60-\ude7e\udf1d-\udf26\udf51-\udf54\udfc5-\udfcb]|\ud804[\udc52-\udc65\udde1-\uddf4]|\ud805[\udf3a\udf3b]|\ud806[\udcea-\udcf2]|\ud807[\udc5a-\udc6c\udfc0-\udfd4]|\ud81a[\udf5b-\udf61]|\ud81b[\ude80-\ude96]|\ud834[\udee0-\udef3\udf60-\udf78]|\ud83a[\udcc7-\udccf]|\ud83b[\udc71-\udcab\udcad-\udcaf\udcb1-\udcb4\udd01-\udd2d\udd2f-\udd3d]|\ud83c[\udd00-\udd0c]"},{name:"P",alias:"Punctuation",bmp:"!-#%-\\*,-\\/:;\\?@\\[-\\]_\\{\\}¡§«¶·»¿;·՚-՟։֊־׀׃׆׳״؉؊،؍؛؝-؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰৽੶૰౷಄෴๏๚๛༄-༒༔༺-༽྅࿐-࿔࿙࿚၊-၏჻፠-፨᐀᙮᚛᚜᛫-᛭᜵᜶។-៖៘-៚᠀-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᭽᭾᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‐-‧‰-⁃⁅-⁑⁓-⁞⁽⁾₍₎⌈-⌋〈〉❨-❵⟅⟆⟦-⟯⦃-⦘⧘-⧛⧼⧽⳹-⳼⳾⳿⵰⸀-⸮⸰-⹏⹒-⹝、-〃〈-】〔-〟〰〽゠・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꣼꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫﴾﴿︐-︙︰-﹒﹔-﹡﹣﹨﹪﹫!-#%-*,-/:;?@[-]_{}⦅-・",astral:"\ud800[\udd00-\udd02\udf9f\udfd0]|𐕯|\ud802[\udc57\udd1f\udd3f\ude50-\ude58\ude7f\udef0-\udef6\udf39-\udf3f\udf99-\udf9c]|\ud803[\udead\udf55-\udf59\udf86-\udf89]|\ud804[\udc47-\udc4d\udcbb\udcbc\udcbe-\udcc1\udd40-\udd43\udd74\udd75\uddc5-\uddc8\uddcd\udddb\udddd-\udddf\ude38-\ude3d\udea9]|\ud805[\udc4b-\udc4f\udc5a\udc5b\udc5d\udcc6\uddc1-\uddd7\ude41-\ude43\ude60-\ude6c\udeb9\udf3c-\udf3e]|\ud806[\udc3b\udd44-\udd46\udde2\ude3f-\ude46\ude9a-\ude9c\ude9e-\udea2]|\ud807[\udc41-\udc45\udc70\udc71\udef7\udef8\udfff]|\ud809[\udc70-\udc74]|\ud80b[\udff1\udff2]|\ud81a[\ude6e\ude6f\udef5\udf37-\udf3b\udf44]|\ud81b[\ude97-\ude9a\udfe2]|𛲟|\ud836[\ude87-\ude8b]|\ud83a[\udd5e\udd5f]"},{name:"Pc",alias:"Connector_Punctuation",bmp:"_‿⁀⁔︳︴﹍-﹏_"},{name:"Pd",alias:"Dash_Punctuation",bmp:"\\-֊־᐀᠆‐-―⸗⸚⸺⸻⹀⹝〜〰゠︱︲﹘﹣-",astral:"𐺭"},{name:"Pe",alias:"Close_Punctuation",bmp:"\\)\\]\\}༻༽᚜⁆⁾₎⌉⌋〉❩❫❭❯❱❳❵⟆⟧⟩⟫⟭⟯⦄⦆⦈⦊⦌⦎⦐⦒⦔⦖⦘⧙⧛⧽⸣⸥⸧⸩⹖⹘⹚⹜〉》」』】〕〗〙〛〞〟﴾︘︶︸︺︼︾﹀﹂﹄﹈﹚﹜﹞)]}⦆」"},{name:"Pf",alias:"Final_Punctuation",bmp:"»’”›⸃⸅⸊⸍⸝⸡"},{name:"Pi",alias:"Initial_Punctuation",bmp:"«‘‛“‟‹⸂⸄⸉⸌⸜⸠"},{name:"Po",alias:"Other_Punctuation",bmp:"!-#%-'\\*,\\.\\/:;\\?@\\¡§¶·¿;·՚-՟։׀׃׆׳״؉؊،؍؛؝-؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰৽੶૰౷಄෴๏๚๛༄-༒༔྅࿐-࿔࿙࿚၊-၏჻፠-፨᙮᛫-᛭᜵᜶។-៖៘-៚᠀-᠅᠇-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᭽᭾᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‖‗†-‧‰-‸※-‾⁁-⁃⁇-⁑⁓⁕-⁞⳹-⳼⳾⳿⵰⸀⸁⸆-⸈⸋⸎-⸖⸘⸙⸛⸞⸟⸪-⸮⸰-⸹⸼-⸿⹁⹃-⹏⹒-⹔、-〃〽・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꣼꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫︐-︖︙︰﹅﹆﹉-﹌﹐-﹒﹔-﹗﹟-﹡﹨﹪﹫!-#%-'*,./:;?@\。、・",astral:"\ud800[\udd00-\udd02\udf9f\udfd0]|𐕯|\ud802[\udc57\udd1f\udd3f\ude50-\ude58\ude7f\udef0-\udef6\udf39-\udf3f\udf99-\udf9c]|\ud803[\udf55-\udf59\udf86-\udf89]|\ud804[\udc47-\udc4d\udcbb\udcbc\udcbe-\udcc1\udd40-\udd43\udd74\udd75\uddc5-\uddc8\uddcd\udddb\udddd-\udddf\ude38-\ude3d\udea9]|\ud805[\udc4b-\udc4f\udc5a\udc5b\udc5d\udcc6\uddc1-\uddd7\ude41-\ude43\ude60-\ude6c\udeb9\udf3c-\udf3e]|\ud806[\udc3b\udd44-\udd46\udde2\ude3f-\ude46\ude9a-\ude9c\ude9e-\udea2]|\ud807[\udc41-\udc45\udc70\udc71\udef7\udef8\udfff]|\ud809[\udc70-\udc74]|\ud80b[\udff1\udff2]|\ud81a[\ude6e\ude6f\udef5\udf37-\udf3b\udf44]|\ud81b[\ude97-\ude9a\udfe2]|𛲟|\ud836[\ude87-\ude8b]|\ud83a[\udd5e\udd5f]"},{name:"Ps",alias:"Open_Punctuation",bmp:"\\(\\[\\{༺༼᚛‚„⁅⁽₍⌈⌊〈❨❪❬❮❰❲❴⟅⟦⟨⟪⟬⟮⦃⦅⦇⦉⦋⦍⦏⦑⦓⦕⦗⧘⧚⧼⸢⸤⸦⸨⹂⹕⹗⹙⹛〈《「『【〔〖〘〚〝﴿︗︵︷︹︻︽︿﹁﹃﹇﹙﹛﹝([{⦅「"},{name:"S",alias:"Symbol",bmp:"\\$\\+<->\\^`\\|~¢-¦¨©¬®-±´¸×÷˂-˅˒-˟˥-˫˭˯-˿͵΄΅϶҂֍-֏؆-؈؋؎؏۞۩۽۾߶߾߿࢈৲৳৺৻૱୰௳-௺౿൏൹฿༁-༃༓༕-༗༚-༟༴༶༸྾-࿅࿇-࿌࿎࿏࿕-࿘႞႟᎐-᎙᙭៛᥀᧞-᧿᭡-᭪᭴-᭼᾽᾿-῁῍-῏῝-῟῭-`´῾⁄⁒⁺-⁼₊-₌₠-⃀℀℁℃-℆℈℉℔№-℘℞-℣℥℧℩℮℺℻⅀-⅄⅊-⅍⅏↊↋←-⌇⌌-⌨⌫-␦⑀-⑊⒜-ⓩ─-❧➔-⟄⟇-⟥⟰-⦂⦙-⧗⧜-⧻⧾-⭳⭶-⮕⮗-⯿⳥-⳪⹐⹑⺀-⺙⺛-⻳⼀-⿕⿰-⿻〄〒〓〠〶〷〾〿゛゜㆐㆑㆖-㆟㇀-㇣㈀-㈞㈪-㉇㉐㉠-㉿㊊-㊰㋀-㏿䷀-䷿꒐-꓆꜀-꜖꜠꜡꞉꞊꠨-꠫꠶-꠹꩷-꩹꭛꭪꭫﬩﮲-﯂﵀-﵏﷏﷼-﷿﹢﹤-﹦﹩$+<->^`|~¢-₩│-○�",astral:"\ud800[\udd37-\udd3f\udd79-\udd89\udd8c-\udd8e\udd90-\udd9c\udda0\uddd0-\uddfc]|\ud802[\udc77\udc78\udec8]|𑜿|\ud807[\udfd5-\udff1]|\ud81a[\udf3c-\udf3f\udf45]|𛲜|\ud833[\udf50-\udfc3]|\ud834[\udc00-\udcf5\udd00-\udd26\udd29-\udd64\udd6a-\udd6c\udd83\udd84\udd8c-\udda9\uddae-\uddea\ude00-\ude41\ude45\udf00-\udf56]|\ud835[\udec1\udedb\udefb\udf15\udf35\udf4f\udf6f\udf89\udfa9\udfc3]|\ud836[\udc00-\uddff\ude37-\ude3a\ude6d-\ude74\ude76-\ude83\ude85\ude86]|\ud838[\udd4f\udeff]|\ud83b[\udcac\udcb0\udd2e\udef0\udef1]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbf\udcc1-\udccf\udcd1-\udcf5\udd0d-\uddad\udde6-\ude02\ude10-\ude3b\ude40-\ude48\ude50\ude51\ude60-\ude65\udf00-\udfff]|\ud83d[\udc00-\uded7\udedd-\udeec\udef0-\udefc\udf00-\udf73\udf80-\udfd8\udfe0-\udfeb\udff0]|\ud83e[\udc00-\udc0b\udc10-\udc47\udc50-\udc59\udc60-\udc87\udc90-\udcad\udcb0\udcb1\udd00-\ude53\ude60-\ude6d\ude70-\ude74\ude78-\ude7c\ude80-\ude86\ude90-\udeac\udeb0-\udeba\udec0-\udec5\uded0-\uded9\udee0-\udee7\udef0-\udef6\udf00-\udf92\udf94-\udfca]"},{name:"Sc",alias:"Currency_Symbol",bmp:"\\$¢-¥֏؋߾߿৲৳৻૱௹฿៛₠-⃀꠸﷼﹩$¢£¥₩",astral:"\ud807[\udfdd-\udfe0]|𞋿|𞲰"},{name:"Sk",alias:"Modifier_Symbol",bmp:"\\^`¨¯´¸˂-˅˒-˟˥-˫˭˯-˿͵΄΅࢈᾽᾿-῁῍-῏῝-῟῭-`´῾゛゜꜀-꜖꜠꜡꞉꞊꭛꭪꭫﮲-﯂^` ̄",astral:"\ud83c[\udffb-\udfff]"},{name:"Sm",alias:"Math_Symbol",bmp:"\\+<->\\|~¬±×÷϶؆-؈⁄⁒⁺-⁼₊-₌℘⅀-⅄⅋←-↔↚↛↠↣↦↮⇎⇏⇒⇔⇴-⋿⌠⌡⍼⎛-⎳⏜-⏡▷◁◸-◿♯⟀-⟄⟇-⟥⟰-⟿⤀-⦂⦙-⧗⧜-⧻⧾-⫿⬰-⭄⭇-⭌﬩﹢﹤-﹦+<->|~¬←-↓",astral:"\ud835[\udec1\udedb\udefb\udf15\udf35\udf4f\udf6f\udf89\udfa9\udfc3]|\ud83b[\udef0\udef1]"},{name:"So",alias:"Other_Symbol",bmp:"¦©®°҂֍֎؎؏۞۩۽۾߶৺୰௳-௸௺౿൏൹༁-༃༓༕-༗༚-༟༴༶༸྾-࿅࿇-࿌࿎࿏࿕-࿘႞႟᎐-᎙᙭᥀᧞-᧿᭡-᭪᭴-᭼℀℁℃-℆℈℉℔№℗℞-℣℥℧℩℮℺℻⅊⅌⅍⅏↊↋↕-↙↜-↟↡↢↤↥↧-↭↯-⇍⇐⇑⇓⇕-⇳⌀-⌇⌌-⌟⌢-⌨⌫-⍻⍽-⎚⎴-⏛⏢-␦⑀-⑊⒜-ⓩ─-▶▸-◀◂-◷☀-♮♰-❧➔-➿⠀-⣿⬀-⬯⭅⭆⭍-⭳⭶-⮕⮗-⯿⳥-⳪⹐⹑⺀-⺙⺛-⻳⼀-⿕⿰-⿻〄〒〓〠〶〷〾〿㆐㆑㆖-㆟㇀-㇣㈀-㈞㈪-㉇㉐㉠-㉿㊊-㊰㋀-㏿䷀-䷿꒐-꓆꠨-꠫꠶꠷꠹꩷-꩹﵀-﵏﷏﷽-﷿¦│■○�",astral:"\ud800[\udd37-\udd3f\udd79-\udd89\udd8c-\udd8e\udd90-\udd9c\udda0\uddd0-\uddfc]|\ud802[\udc77\udc78\udec8]|𑜿|\ud807[\udfd5-\udfdc\udfe1-\udff1]|\ud81a[\udf3c-\udf3f\udf45]|𛲜|\ud833[\udf50-\udfc3]|\ud834[\udc00-\udcf5\udd00-\udd26\udd29-\udd64\udd6a-\udd6c\udd83\udd84\udd8c-\udda9\uddae-\uddea\ude00-\ude41\ude45\udf00-\udf56]|\ud836[\udc00-\uddff\ude37-\ude3a\ude6d-\ude74\ude76-\ude83\ude85\ude86]|𞅏|\ud83b[\udcac\udd2e]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbf\udcc1-\udccf\udcd1-\udcf5\udd0d-\uddad\udde6-\ude02\ude10-\ude3b\ude40-\ude48\ude50\ude51\ude60-\ude65\udf00-\udffa]|\ud83d[\udc00-\uded7\udedd-\udeec\udef0-\udefc\udf00-\udf73\udf80-\udfd8\udfe0-\udfeb\udff0]|\ud83e[\udc00-\udc0b\udc10-\udc47\udc50-\udc59\udc60-\udc87\udc90-\udcad\udcb0\udcb1\udd00-\ude53\ude60-\ude6d\ude70-\ude74\ude78-\ude7c\ude80-\ude86\ude90-\udeac\udeb0-\udeba\udec0-\udec5\uded0-\uded9\udee0-\udee7\udef0-\udef6\udf00-\udf92\udf94-\udfca]"},{name:"Z",alias:"Separator",bmp:"    - \u2028\u2029   "},{name:"Zl",alias:"Line_Separator",bmp:"\u2028"},{name:"Zp",alias:"Paragraph_Separator",bmp:"\u2029"},{name:"Zs",alias:"Space_Separator",bmp:"    -    "}]),W=U([{name:"ASCII",bmp:"\0-"},{name:"Alphabetic",bmp:"A-Za-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͅͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈְ-ׇֽֿׁׂׅׄא-תׯ-ײؐ-ؚؠ-ٗٙ-ٟٮ-ۓە-ۜۡ-ۭۨ-ۯۺ-ۼۿܐ-ܿݍ-ޱߊ-ߪߴߵߺࠀ-ࠗࠚ-ࠬࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉࣔ-ࣣࣟ-ࣰࣩ-ऻऽ-ौॎ-ॐॕ-ॣॱ-ঃঅ-ঌএঐও-নপ-রলশ-হঽ-ৄেৈোৌৎৗড়ঢ়য়-ৣৰৱৼਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਾ-ੂੇੈੋੌੑਖ਼-ੜਫ਼ੰ-ੵઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽ-ૅે-ૉોૌૐૠ-ૣૹ-ૼଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽ-ୄେୈୋୌୖୗଡ଼ଢ଼ୟ-ୣୱஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-ௌௐௗఀ-ఃఅ-ఌఎ-ఐఒ-నప-హఽ-ౄె-ైొ-ౌౕౖౘ-ౚౝౠ-ౣಀ-ಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೄೆ-ೈೊ-ೌೕೖೝೞೠ-ೣೱೲഀ-ഌഎ-ഐഒ-ഺഽ-ൄെ-ൈൊ-ൌൎൔ-ൗൟ-ൣൺ-ൿඁ-ඃඅ-ඖක-නඳ-රලව-ෆා-ුූෘ-ෟෲෳก-ฺเ-ๆํກຂຄຆ-ຊຌ-ຣລວ-ູົ-ຽເ-ໄໆໍໜ-ໟༀཀ-ཇཉ-ཬཱ-ཱྀྈ-ྗྙ-ྼက-ံးျ-ဿၐ-ႏႚ-ႝႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜓᜟ-ᜳᝀ-ᝓᝠ-ᝬᝮ-ᝰᝲᝳក-ឳា-ៈៗៜᠠ-ᡸᢀ-ᢪᢰ-ᣵᤀ-ᤞᤠ-ᤫᤰ-ᤸᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨛᨠ-ᩞᩡ-ᩴᪧᪿᫀᫌ-ᫎᬀ-ᬳᬵ-ᭃᭅ-ᭌᮀ-ᮩᮬ-ᮯᮺ-ᯥᯧ-ᯱᰀ-ᰶᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿᷧ-ᷴḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⒶ-ⓩⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⷠ-ⷿⸯ々-〇〡-〩〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙴ-ꙻꙿ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠅꠇ-ꠧꡀ-ꡳꢀ-ꣃꣅꣲ-ꣷꣻꣽ-ꣿꤊ-ꤪꤰ-ꥒꥠ-ꥼꦀ-ꦲꦴ-ꦿꧏꧠ-ꧯꧺ-ꧾꨀ-ꨶꩀ-ꩍꩠ-ꩶꩺ-ꪾꫀꫂꫛ-ꫝꫠ-ꫯꫲ-ꫵꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯪ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",astral:"\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\udd40-\udd74\ude80-\ude9c\udea0-\uded0\udf00-\udf1f\udf2d-\udf4a\udf50-\udf7a\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf\udfd1-\udfd5]|\ud801[\udc00-\udc9d\udcb0-\udcd3\udcd8-\udcfb\udd00-\udd27\udd30-\udd63\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc\ude00-\udf36\udf40-\udf55\udf60-\udf67\udf80-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00-\ude03\ude05\ude06\ude0c-\ude13\ude15-\ude17\ude19-\ude35\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee4\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udc80-\udcb2\udcc0-\udcf2\udd00-\udd27\ude80-\udea9\udeab\udeac\udeb0\udeb1\udf00-\udf1c\udf27\udf30-\udf45\udf70-\udf81\udfb0-\udfc4\udfe0-\udff6]|\ud804[\udc00-\udc45\udc71-\udc75\udc82-\udcb8\udcc2\udcd0-\udce8\udd00-\udd32\udd44-\udd47\udd50-\udd72\udd76\udd80-\uddbf\uddc1-\uddc4\uddce\uddcf\uddda\udddc\ude00-\ude11\ude13-\ude34\ude37\ude3e\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udee8\udf00-\udf03\udf05-\udf0c\udf0f\udf10\udf13-\udf28\udf2a-\udf30\udf32\udf33\udf35-\udf39\udf3d-\udf44\udf47\udf48\udf4b\udf4c\udf50\udf57\udf5d-\udf63]|\ud805[\udc00-\udc41\udc43-\udc45\udc47-\udc4a\udc5f-\udc61\udc80-\udcc1\udcc4\udcc5\udcc7\udd80-\uddb5\uddb8-\uddbe\uddd8-\udddd\ude00-\ude3e\ude40\ude44\ude80-\udeb5\udeb8\udf00-\udf1a\udf1d-\udf2a\udf40-\udf46]|\ud806[\udc00-\udc38\udca0-\udcdf\udcff-\udd06\udd09\udd0c-\udd13\udd15\udd16\udd18-\udd35\udd37\udd38\udd3b\udd3c\udd3f-\udd42\udda0-\udda7\uddaa-\uddd7\uddda-\udddf\udde1\udde3\udde4\ude00-\ude32\ude35-\ude3e\ude50-\ude97\ude9d\udeb0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc36\udc38-\udc3e\udc40\udc72-\udc8f\udc92-\udca7\udca9-\udcb6\udd00-\udd06\udd08\udd09\udd0b-\udd36\udd3a\udd3c\udd3d\udd3f-\udd41\udd43\udd46\udd47\udd60-\udd65\udd67\udd68\udd6a-\udd8e\udd90\udd91\udd93-\udd96\udd98\udee0-\udef6\udfb0]|\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e\udc80-\udd43]|\ud80b[\udf90-\udff0]|[\ud80c\ud81c-\ud820\ud822\ud840-\ud868\ud86a-\ud86c\ud86f-\ud872\ud874-\ud879\ud880-\ud883][\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\ude70-\udebe\uded0-\udeed\udf00-\udf2f\udf40-\udf43\udf63-\udf77\udf7d-\udf8f]|\ud81b[\ude40-\ude7f\udf00-\udf4a\udf4f-\udf87\udf8f-\udf9f\udfe0\udfe1\udfe3\udff0\udff1]|\ud821[\udc00-\udff7]|\ud823[\udc00-\udcd5\udd00-\udd08]|\ud82b[\udff0-\udff3\udff5-\udffb\udffd\udffe]|\ud82c[\udc00-\udd22\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99\udc9e]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud837[\udf00-\udf1e]|\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23\udc24\udc26-\udc2a\udd00-\udd2c\udd37-\udd3d\udd4e\ude90-\udead\udec0-\udeeb]|\ud839[\udfe0-\udfe6\udfe8-\udfeb\udfed\udfee\udff0-\udffe]|\ud83a[\udc00-\udcc4\udd00-\udd43\udd47\udd4b]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud83c[\udd30-\udd49\udd50-\udd69\udd70-\udd89]|\ud869[\udc00-\udedf\udf00-\udfff]|\ud86d[\udc00-\udf38\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\ud884[\udc00-\udf4a]"},{name:"Any",isBmpLast:!0,bmp:"\0-￿",astral:"[\ud800-\udbff][\udc00-\udfff]"},{name:"Default_Ignorable_Code_Point",bmp:"­͏؜ᅟᅠ឴឵᠋-᠏​-‏‪-‮⁠-ㅤ︀-️\ufeffᅠ￰-￸",astral:"\ud82f[\udca0-\udca3]|\ud834[\udd73-\udd7a]|[\udb40-\udb43][\udc00-\udfff]"},{name:"Lowercase",bmp:"a-zªµºß-öø-ÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżž-ƀƃƅƈƌƍƒƕƙ-ƛƞơƣƥƨƪƫƭưƴƶƹƺƽ-ƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳ-ȹȼȿɀɂɇɉɋɍɏ-ʓʕ-ʸˀˁˠ-ˤͅͱͳͷͺ-ͽΐά-ώϐϑϕ-ϗϙϛϝϟϡϣϥϧϩϫϭϯ-ϳϵϸϻϼа-џѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӏӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧԩԫԭԯՠ-ֈა-ჺჽ-ჿᏸ-ᏽᲀ-ᲈᴀ-ᶿḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕ-ẝẟạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿ-ἇἐ-ἕἠ-ἧἰ-ἷὀ-ὅὐ-ὗὠ-ὧὰ-ώᾀ-ᾇᾐ-ᾗᾠ-ᾧᾰ-ᾴᾶᾷιῂ-ῄῆῇῐ-ΐῖῗῠ-ῧῲ-ῴῶῷⁱⁿₐ-ₜℊℎℏℓℯℴℹℼℽⅆ-ⅉⅎⅰ-ⅿↄⓐ-ⓩⰰ-ⱟⱡⱥⱦⱨⱪⱬⱱⱳⱴⱶ-ⱽⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⳬⳮⳳⴀ-ⴥⴧⴭꙁꙃꙅꙇꙉꙋꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꚙꚛ-ꚝꜣꜥꜧꜩꜫꜭꜯ-ꜱꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯ-ꝸꝺꝼꝿꞁꞃꞅꞇꞌꞎꞑꞓ-ꞕꞗꞙꞛꞝꞟꞡꞣꞥꞧꞩꞯꞵꞷꞹꞻꞽꞿꟁꟃꟈꟊꟑꟓꟕꟗꟙꟶꟸ-ꟺꬰ-ꭚꭜ-ꭨꭰ-ꮿff-stﬓ-ﬗa-z",astral:"\ud801[\udc28-\udc4f\udcd8-\udcfb\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc\udf80\udf83-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud803[\udcc0-\udcf2]|\ud806[\udcc0-\udcdf]|\ud81b[\ude60-\ude7f]|\ud835[\udc1a-\udc33\udc4e-\udc54\udc56-\udc67\udc82-\udc9b\udcb6-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udccf\udcea-\udd03\udd1e-\udd37\udd52-\udd6b\udd86-\udd9f\uddba-\uddd3\uddee-\ude07\ude22-\ude3b\ude56-\ude6f\ude8a-\udea5\udec2-\udeda\udedc-\udee1\udefc-\udf14\udf16-\udf1b\udf36-\udf4e\udf50-\udf55\udf70-\udf88\udf8a-\udf8f\udfaa-\udfc2\udfc4-\udfc9\udfcb]|\ud837[\udf00-\udf09\udf0b-\udf1e]|\ud83a[\udd22-\udd43]"},{name:"Noncharacter_Code_Point",bmp:"﷐-﷯￾￿",astral:"[\ud83f\ud87f\ud8bf\ud8ff\ud93f\ud97f\ud9bf\ud9ff\uda3f\uda7f\udabf\udaff\udb3f\udb7f\udbbf\udbff][\udffe\udfff]"},{name:"Uppercase",bmp:"A-ZÀ-ÖØ-ÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉ-ƋƎ-ƑƓƔƖ-ƘƜƝƟƠƢƤƦƧƩƬƮƯƱ-ƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶ-ǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁɃ-ɆɈɊɌɎͰͲͶͿΆΈ-ΊΌΎΏΑ-ΡΣ-ΫϏϒ-ϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽ-ЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸӺӼӾԀԂԄԆԈԊԌԎԐԒԔԖԘԚԜԞԠԢԤԦԨԪԬԮԱ-ՖႠ-ჅჇჍᎠ-ᏵᲐ-ᲺᲽ-ᲿḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẞẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸỺỼỾἈ-ἏἘ-ἝἨ-ἯἸ-ἿὈ-ὍὙὛὝὟὨ-ὯᾸ-ΆῈ-ΉῘ-ΊῨ-ῬῸ-Ώℂℇℋ-ℍℐ-ℒℕℙ-ℝℤΩℨK-ℭℰ-ℳℾℿⅅⅠ-ⅯↃⒶ-ⓏⰀ-ⰯⱠⱢ-ⱤⱧⱩⱫⱭ-ⱰⱲⱵⱾ-ⲀⲂⲄⲆⲈⲊⲌⲎⲐⲒⲔⲖⲘⲚⲜⲞⲠⲢⲤⲦⲨⲪⲬⲮⲰⲲⲴⲶⲸⲺⲼⲾⳀⳂⳄⳆⳈⳊⳌⳎⳐⳒⳔⳖⳘⳚⳜⳞⳠⳢⳫⳭⳲꙀꙂꙄꙆꙈꙊꙌꙎꙐꙒꙔꙖꙘꙚꙜꙞꙠꙢꙤꙦꙨꙪꙬꚀꚂꚄꚆꚈꚊꚌꚎꚐꚒꚔꚖꚘꚚꜢꜤꜦꜨꜪꜬꜮꜲꜴꜶꜸꜺꜼꜾꝀꝂꝄꝆꝈꝊꝌꝎꝐꝒꝔꝖꝘꝚꝜꝞꝠꝢꝤꝦꝨꝪꝬꝮꝹꝻꝽꝾꞀꞂꞄꞆꞋꞍꞐꞒꞖꞘꞚꞜꞞꞠꞢꞤꞦꞨꞪ-ꞮꞰ-ꞴꞶꞸꞺꞼꞾꟀꟂꟄ-ꟇꟉꟐꟖꟘꟵA-Z",astral:"\ud801[\udc00-\udc27\udcb0-\udcd3\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95]|\ud803[\udc80-\udcb2]|\ud806[\udca0-\udcbf]|\ud81b[\ude40-\ude5f]|\ud835[\udc00-\udc19\udc34-\udc4d\udc68-\udc81\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb5\udcd0-\udce9\udd04\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd38\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd6c-\udd85\udda0-\uddb9\uddd4-\udded\ude08-\ude21\ude3c-\ude55\ude70-\ude89\udea8-\udec0\udee2-\udefa\udf1c-\udf34\udf56-\udf6e\udf90-\udfa8\udfca]|\ud83a[\udd00-\udd21]|\ud83c[\udd30-\udd49\udd50-\udd69\udd70-\udd89]"},{name:"White_Space",bmp:"\t-\r …   - \u2028\u2029   "}]),J=U([{name:"Adlam",astral:"\ud83a[\udd00-\udd4b\udd50-\udd59\udd5e\udd5f]"},{name:"Ahom",astral:"\ud805[\udf00-\udf1a\udf1d-\udf2b\udf30-\udf46]"},{name:"Anatolian_Hieroglyphs",astral:"\ud811[\udc00-\ude46]"},{name:"Arabic",bmp:"؀-؄؆-؋؍-ؚ؜-؞ؠ-ؿف-يٖ-ٯٱ-ۜ۞-ۿݐ-ݿࡰ-ࢎ࢐࢑࢘-ࣣ࣡-ࣿﭐ-﯂ﯓ-ﴽ﵀-ﶏﶒ-ﷇ﷏ﷰ-﷿ﹰ-ﹴﹶ-ﻼ",astral:"\ud803[\ude60-\ude7e]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb\udef0\udef1]"},{name:"Armenian",bmp:"Ա-Ֆՙ-֊֍-֏ﬓ-ﬗ"},{name:"Avestan",astral:"\ud802[\udf00-\udf35\udf39-\udf3f]"},{name:"Balinese",bmp:"ᬀ-ᭌ᭐-᭾"},{name:"Bamum",bmp:"ꚠ-꛷",astral:"\ud81a[\udc00-\ude38]"},{name:"Bassa_Vah",astral:"\ud81a[\uded0-\udeed\udef0-\udef5]"},{name:"Batak",bmp:"ᯀ-᯳᯼-᯿"},{name:"Bengali",bmp:"ঀ-ঃঅ-ঌএঐও-নপ-রলশ-হ়-ৄেৈো-ৎৗড়ঢ়য়-ৣ০-৾"},{name:"Bhaiksuki",astral:"\ud807[\udc00-\udc08\udc0a-\udc36\udc38-\udc45\udc50-\udc6c]"},{name:"Bopomofo",bmp:"˪˫ㄅ-ㄯㆠ-ㆿ"},{name:"Brahmi",astral:"\ud804[\udc00-\udc4d\udc52-\udc75\udc7f]"},{name:"Braille",bmp:"⠀-⣿"},{name:"Buginese",bmp:"ᨀ-ᨛ᨞᨟"},{name:"Buhid",bmp:"ᝀ-ᝓ"},{name:"Canadian_Aboriginal",bmp:"᐀-ᙿᢰ-ᣵ",astral:"\ud806[\udeb0-\udebf]"},{name:"Carian",astral:"\ud800[\udea0-\uded0]"},{name:"Caucasian_Albanian",astral:"\ud801[\udd30-\udd63\udd6f]"},{name:"Chakma",astral:"\ud804[\udd00-\udd34\udd36-\udd47]"},{name:"Cham",bmp:"ꨀ-ꨶꩀ-ꩍ꩐-꩙꩜-꩟"},{name:"Cherokee",bmp:"Ꭰ-Ᏽᏸ-ᏽꭰ-ꮿ"},{name:"Chorasmian",astral:"\ud803[\udfb0-\udfcb]"},{name:"Common",bmp:"\0-@\\[-`\\{-©«-¹»-¿×÷ʹ-˟˥-˩ˬ-˿ʹ;΅·؅،؛؟ـ۝࣢।॥฿࿕-࿘჻᛫-᛭᜵᜶᠂᠃᠅᳓᳡ᳩ-ᳬᳮ-ᳳᳵ-᳷ᳺ -​‎-⁤⁦-⁰⁴-⁾₀-₎₠-⃀℀-℥℧-℩ℬ-ℱℳ-⅍⅏-⅟↉-↋←-␦⑀-⑊①-⟿⤀-⭳⭶-⮕⮗-⯿⸀-⹝⿰-⿻ -〄〆〈-〠〰-〷〼-〿゛゜゠・ー㆐-㆟㇀-㇣㈠-㉟㉿-㋏㋿㍘-㏿䷀-䷿꜀-꜡ꞈ-꞊꠰-꠹꤮ꧏ꭛꭪꭫﴾﴿︐-︙︰-﹒﹔-﹦﹨-﹫\ufeff!-@[-`{-・ー゙゚¢-₩│-○-�",astral:"\ud800[\udd00-\udd02\udd07-\udd33\udd37-\udd3f\udd90-\udd9c\uddd0-\uddfc\udee1-\udefb]|\ud82f[\udca0-\udca3]|\ud833[\udf50-\udfc3]|\ud834[\udc00-\udcf5\udd00-\udd26\udd29-\udd66\udd6a-\udd7a\udd83\udd84\udd8c-\udda9\uddae-\uddea\udee0-\udef3\udf00-\udf56\udf60-\udf78]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udfcb\udfce-\udfff]|\ud83b[\udc71-\udcb4\udd01-\udd3d]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbf\udcc1-\udccf\udcd1-\udcf5\udd00-\uddad\udde6-\uddff\ude01\ude02\ude10-\ude3b\ude40-\ude48\ude50\ude51\ude60-\ude65\udf00-\udfff]|\ud83d[\udc00-\uded7\udedd-\udeec\udef0-\udefc\udf00-\udf73\udf80-\udfd8\udfe0-\udfeb\udff0]|\ud83e[\udc00-\udc0b\udc10-\udc47\udc50-\udc59\udc60-\udc87\udc90-\udcad\udcb0\udcb1\udd00-\ude53\ude60-\ude6d\ude70-\ude74\ude78-\ude7c\ude80-\ude86\ude90-\udeac\udeb0-\udeba\udec0-\udec5\uded0-\uded9\udee0-\udee7\udef0-\udef6\udf00-\udf92\udf94-\udfca\udff0-\udff9]|\udb40[\udc01\udc20-\udc7f]"},{name:"Coptic",bmp:"Ϣ-ϯⲀ-ⳳ⳹-⳿"},{name:"Cuneiform",astral:"\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e\udc70-\udc74\udc80-\udd43]"},{name:"Cypriot",astral:"\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f]"},{name:"Cypro_Minoan",astral:"\ud80b[\udf90-\udff2]"},{name:"Cyrillic",bmp:"Ѐ-҄҇-ԯᲀ-ᲈᴫᵸⷠ-ⷿꙀ-ꚟ︮︯"},{name:"Deseret",astral:"\ud801[\udc00-\udc4f]"},{name:"Devanagari",bmp:"ऀ-ॐॕ-ॣ०-ॿ꣠-ꣿ"},{name:"Dives_Akuru",astral:"\ud806[\udd00-\udd06\udd09\udd0c-\udd13\udd15\udd16\udd18-\udd35\udd37\udd38\udd3b-\udd46\udd50-\udd59]"},{name:"Dogra",astral:"\ud806[\udc00-\udc3b]"},{name:"Duployan",astral:"\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99\udc9c-\udc9f]"},{name:"Egyptian_Hieroglyphs",astral:"\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e\udc30-\udc38]"},{name:"Elbasan",astral:"\ud801[\udd00-\udd27]"},{name:"Elymaic",astral:"\ud803[\udfe0-\udff6]"},{name:"Ethiopic",bmp:"ሀ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፝-፼ᎀ-᎙ⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮ",astral:"\ud839[\udfe0-\udfe6\udfe8-\udfeb\udfed\udfee\udff0-\udffe]"},{name:"Georgian",bmp:"Ⴀ-ჅჇჍა-ჺჼ-ჿᲐ-ᲺᲽ-Ჿⴀ-ⴥⴧⴭ"},{name:"Glagolitic",bmp:"Ⰰ-ⱟ",astral:"\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23\udc24\udc26-\udc2a]"},{name:"Gothic",astral:"\ud800[\udf30-\udf4a]"},{name:"Grantha",astral:"\ud804[\udf00-\udf03\udf05-\udf0c\udf0f\udf10\udf13-\udf28\udf2a-\udf30\udf32\udf33\udf35-\udf39\udf3c-\udf44\udf47\udf48\udf4b-\udf4d\udf50\udf57\udf5d-\udf63\udf66-\udf6c\udf70-\udf74]"},{name:"Greek",bmp:"Ͱ-ͳ͵-ͷͺ-ͽͿ΄ΆΈ-ΊΌΎ-ΡΣ-ϡϰ-Ͽᴦ-ᴪᵝ-ᵡᵦ-ᵪᶿἀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ῄῆ-ΐῖ-Ί῝-`ῲ-ῴῶ-῾Ωꭥ",astral:"\ud800[\udd40-\udd8e\udda0]|\ud834[\ude00-\ude45]"},{name:"Gujarati",bmp:"ઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હ઼-ૅે-ૉો-્ૐૠ-ૣ૦-૱ૹ-૿"},{name:"Gunjala_Gondi",astral:"\ud807[\udd60-\udd65\udd67\udd68\udd6a-\udd8e\udd90\udd91\udd93-\udd98\udda0-\udda9]"},{name:"Gurmukhi",bmp:"ਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹ਼ਾ-ੂੇੈੋ-੍ੑਖ਼-ੜਫ਼੦-੶"},{name:"Han",bmp:"⺀-⺙⺛-⻳⼀-⿕々〇〡-〩〸-〻㐀-䶿一-鿿豈-舘並-龎",astral:"\ud81b[\udfe2\udfe3\udff0\udff1]|[\ud840-\ud868\ud86a-\ud86c\ud86f-\ud872\ud874-\ud879\ud880-\ud883][\udc00-\udfff]|\ud869[\udc00-\udedf\udf00-\udfff]|\ud86d[\udc00-\udf38\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\ud884[\udc00-\udf4a]"},{name:"Hangul",bmp:"ᄀ-ᇿ〮〯ㄱ-ㆎ㈀-㈞㉠-㉾ꥠ-ꥼ가-힣ힰ-ퟆퟋ-ퟻᅠ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ"},{name:"Hanifi_Rohingya",astral:"\ud803[\udd00-\udd27\udd30-\udd39]"},{name:"Hanunoo",bmp:"ᜠ-᜴"},{name:"Hatran",astral:"\ud802[\udce0-\udcf2\udcf4\udcf5\udcfb-\udcff]"},{name:"Hebrew",bmp:"֑-ׇא-תׯ-״יִ-זּטּ-לּמּנּסּףּפּצּ-ﭏ"},{name:"Hiragana",bmp:"ぁ-ゖゝ-ゟ",astral:"\ud82c[\udc01-\udd1f\udd50-\udd52]|🈀"},{name:"Imperial_Aramaic",astral:"\ud802[\udc40-\udc55\udc57-\udc5f]"},{name:"Inherited",bmp:"̀-ًͯ҅҆-ٰٕ॑-॔᪰-ᫎ᳐-᳔᳒-᳢᳠-᳨᳭᳴᳸᳹᷀-᷿‌‍⃐-〪⃰-゙゚〭︀-️︠-︭",astral:"\ud800[\uddfd\udee0]|𑌻|\ud833[\udf00-\udf2d\udf30-\udf46]|\ud834[\udd67-\udd69\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad]|\udb40[\udd00-\uddef]"},{name:"Inscriptional_Pahlavi",astral:"\ud802[\udf60-\udf72\udf78-\udf7f]"},{name:"Inscriptional_Parthian",astral:"\ud802[\udf40-\udf55\udf58-\udf5f]"},{name:"Javanese",bmp:"ꦀ-꧍꧐-꧙꧞꧟"},{name:"Kaithi",astral:"\ud804[\udc80-\udcc2\udccd]"},{name:"Kannada",bmp:"ಀ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹ಼-ೄೆ-ೈೊ-್ೕೖೝೞೠ-ೣ೦-೯ೱೲ"},{name:"Katakana",bmp:"ァ-ヺヽ-ヿㇰ-ㇿ㋐-㋾㌀-㍗ヲ-ッア-ン",astral:"\ud82b[\udff0-\udff3\udff5-\udffb\udffd\udffe]|\ud82c[\udc00\udd20-\udd22\udd64-\udd67]"},{name:"Kayah_Li",bmp:"꤀-꤭꤯"},{name:"Kharoshthi",astral:"\ud802[\ude00-\ude03\ude05\ude06\ude0c-\ude13\ude15-\ude17\ude19-\ude35\ude38-\ude3a\ude3f-\ude48\ude50-\ude58]"},{name:"Khitan_Small_Script",astral:"𖿤|\ud822[\udf00-\udfff]|\ud823[\udc00-\udcd5]"},{name:"Khmer",bmp:"ក-៝០-៩៰-៹᧠-᧿"},{name:"Khojki",astral:"\ud804[\ude00-\ude11\ude13-\ude3e]"},{name:"Khudawadi",astral:"\ud804[\udeb0-\udeea\udef0-\udef9]"},{name:"Lao",bmp:"ກຂຄຆ-ຊຌ-ຣລວ-ຽເ-ໄໆ່-ໍ໐-໙ໜ-ໟ"},{name:"Latin",bmp:"A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꟿꬰ-ꭚꭜ-ꭤꭦ-ꭩff-stA-Za-z",astral:"\ud801[\udf80-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud837[\udf00-\udf1e]"},{name:"Lepcha",bmp:"ᰀ-᰷᰻-᱉ᱍ-ᱏ"},{name:"Limbu",bmp:"ᤀ-ᤞᤠ-ᤫᤰ-᤻᥀᥄-᥏"},{name:"Linear_A",astral:"\ud801[\ude00-\udf36\udf40-\udf55\udf60-\udf67]"},{name:"Linear_B",astral:"\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa]"},{name:"Lisu",bmp:"ꓐ-꓿",astral:"𑾰"},{name:"Lycian",astral:"\ud800[\ude80-\ude9c]"},{name:"Lydian",astral:"\ud802[\udd20-\udd39\udd3f]"},{name:"Mahajani",astral:"\ud804[\udd50-\udd76]"},{name:"Makasar",astral:"\ud807[\udee0-\udef8]"},{name:"Malayalam",bmp:"ഀ-ഌഎ-ഐഒ-ൄെ-ൈൊ-൏ൔ-ൣ൦-ൿ"},{name:"Mandaic",bmp:"ࡀ-࡛࡞"},{name:"Manichaean",astral:"\ud802[\udec0-\udee6\udeeb-\udef6]"},{name:"Marchen",astral:"\ud807[\udc70-\udc8f\udc92-\udca7\udca9-\udcb6]"},{name:"Masaram_Gondi",astral:"\ud807[\udd00-\udd06\udd08\udd09\udd0b-\udd36\udd3a\udd3c\udd3d\udd3f-\udd47\udd50-\udd59]"},{name:"Medefaidrin",astral:"\ud81b[\ude40-\ude9a]"},{name:"Meetei_Mayek",bmp:"ꫠ-꫶ꯀ-꯭꯰-꯹"},{name:"Mende_Kikakui",astral:"\ud83a[\udc00-\udcc4\udcc7-\udcd6]"},{name:"Meroitic_Cursive",astral:"\ud802[\udda0-\uddb7\uddbc-\uddcf\uddd2-\uddff]"},{name:"Meroitic_Hieroglyphs",astral:"\ud802[\udd80-\udd9f]"},{name:"Miao",astral:"\ud81b[\udf00-\udf4a\udf4f-\udf87\udf8f-\udf9f]"},{name:"Modi",astral:"\ud805[\ude00-\ude44\ude50-\ude59]"},{name:"Mongolian",bmp:"᠀᠁᠄᠆-᠙ᠠ-ᡸᢀ-ᢪ",astral:"\ud805[\ude60-\ude6c]"},{name:"Mro",astral:"\ud81a[\ude40-\ude5e\ude60-\ude69\ude6e\ude6f]"},{name:"Multani",astral:"\ud804[\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea9]"},{name:"Myanmar",bmp:"က-႟ꧠ-ꧾꩠ-ꩿ"},{name:"Nabataean",astral:"\ud802[\udc80-\udc9e\udca7-\udcaf]"},{name:"Nandinagari",astral:"\ud806[\udda0-\udda7\uddaa-\uddd7\uddda-\udde4]"},{name:"New_Tai_Lue",bmp:"ᦀ-ᦫᦰ-ᧉ᧐-᧚᧞᧟"},{name:"Newa",astral:"\ud805[\udc00-\udc5b\udc5d-\udc61]"},{name:"Nko",bmp:"߀-ߺ߽-߿"},{name:"Nushu",astral:"𖿡|\ud82c[\udd70-\udefb]"},{name:"Nyiakeng_Puachue_Hmong",astral:"\ud838[\udd00-\udd2c\udd30-\udd3d\udd40-\udd49\udd4e\udd4f]"},{name:"Ogham",bmp:" -᚜"},{name:"Ol_Chiki",bmp:"᱐-᱿"},{name:"Old_Hungarian",astral:"\ud803[\udc80-\udcb2\udcc0-\udcf2\udcfa-\udcff]"},{name:"Old_Italic",astral:"\ud800[\udf00-\udf23\udf2d-\udf2f]"},{name:"Old_North_Arabian",astral:"\ud802[\ude80-\ude9f]"},{name:"Old_Permic",astral:"\ud800[\udf50-\udf7a]"},{name:"Old_Persian",astral:"\ud800[\udfa0-\udfc3\udfc8-\udfd5]"},{name:"Old_Sogdian",astral:"\ud803[\udf00-\udf27]"},{name:"Old_South_Arabian",astral:"\ud802[\ude60-\ude7f]"},{name:"Old_Turkic",astral:"\ud803[\udc00-\udc48]"},{name:"Old_Uyghur",astral:"\ud803[\udf70-\udf89]"},{name:"Oriya",bmp:"ଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହ଼-ୄେୈୋ-୍୕-ୗଡ଼ଢ଼ୟ-ୣ୦-୷"},{name:"Osage",astral:"\ud801[\udcb0-\udcd3\udcd8-\udcfb]"},{name:"Osmanya",astral:"\ud801[\udc80-\udc9d\udca0-\udca9]"},{name:"Pahawh_Hmong",astral:"\ud81a[\udf00-\udf45\udf50-\udf59\udf5b-\udf61\udf63-\udf77\udf7d-\udf8f]"},{name:"Palmyrene",astral:"\ud802[\udc60-\udc7f]"},{name:"Pau_Cin_Hau",astral:"\ud806[\udec0-\udef8]"},{name:"Phags_Pa",bmp:"ꡀ-꡷"},{name:"Phoenician",astral:"\ud802[\udd00-\udd1b\udd1f]"},{name:"Psalter_Pahlavi",astral:"\ud802[\udf80-\udf91\udf99-\udf9c\udfa9-\udfaf]"},{name:"Rejang",bmp:"ꤰ-꥓꥟"},{name:"Runic",bmp:"ᚠ-ᛪᛮ-ᛸ"},{name:"Samaritan",bmp:"ࠀ-࠭࠰-࠾"},{name:"Saurashtra",bmp:"ꢀ-ꣅ꣎-꣙"},{name:"Sharada",astral:"\ud804[\udd80-\udddf]"},{name:"Shavian",astral:"\ud801[\udc50-\udc7f]"},{name:"Siddham",astral:"\ud805[\udd80-\uddb5\uddb8-\udddd]"},{name:"SignWriting",astral:"\ud836[\udc00-\ude8b\ude9b-\ude9f\udea1-\udeaf]"},{name:"Sinhala",bmp:"ඁ-ඃඅ-ඖක-නඳ-රලව-ෆ්ා-ුූෘ-ෟ෦-෯ෲ-෴",astral:"\ud804[\udde1-\uddf4]"},{name:"Sogdian",astral:"\ud803[\udf30-\udf59]"},{name:"Sora_Sompeng",astral:"\ud804[\udcd0-\udce8\udcf0-\udcf9]"},{name:"Soyombo",astral:"\ud806[\ude50-\udea2]"},{name:"Sundanese",bmp:"ᮀ-ᮿ᳀-᳇"},{name:"Syloti_Nagri",bmp:"ꠀ-꠬"},{name:"Syriac",bmp:"܀-܍܏-݊ݍ-ݏࡠ-ࡪ"},{name:"Tagalog",bmp:"ᜀ-᜕ᜟ"},{name:"Tagbanwa",bmp:"ᝠ-ᝬᝮ-ᝰᝲᝳ"},{name:"Tai_Le",bmp:"ᥐ-ᥭᥰ-ᥴ"},{name:"Tai_Tham",bmp:"ᨠ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪠-᪭"},{name:"Tai_Viet",bmp:"ꪀ-ꫂꫛ-꫟"},{name:"Takri",astral:"\ud805[\ude80-\udeb9\udec0-\udec9]"},{name:"Tamil",bmp:"ஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-்ௐௗ௦-௺",astral:"\ud807[\udfc0-\udff1\udfff]"},{name:"Tangsa",astral:"\ud81a[\ude70-\udebe\udec0-\udec9]"},{name:"Tangut",astral:"𖿠|[\ud81c-\ud820][\udc00-\udfff]|\ud821[\udc00-\udff7]|\ud822[\udc00-\udeff]|\ud823[\udd00-\udd08]"},{name:"Telugu",bmp:"ఀ-ఌఎ-ఐఒ-నప-హ఼-ౄె-ైొ-్ౕౖౘ-ౚౝౠ-ౣ౦-౯౷-౿"},{name:"Thaana",bmp:"ހ-ޱ"},{name:"Thai",bmp:"ก-ฺเ-๛"},{name:"Tibetan",bmp:"ༀ-ཇཉ-ཬཱ-ྗྙ-ྼ྾-࿌࿎-࿔࿙࿚"},{name:"Tifinagh",bmp:"ⴰ-ⵧⵯ⵰⵿"},{name:"Tirhuta",astral:"\ud805[\udc80-\udcc7\udcd0-\udcd9]"},{name:"Toto",astral:"\ud838[\ude90-\udeae]"},{name:"Ugaritic",astral:"\ud800[\udf80-\udf9d\udf9f]"},{name:"Vai",bmp:"ꔀ-ꘫ"},{name:"Vithkuqi",astral:"\ud801[\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc]"},{name:"Wancho",astral:"\ud838[\udec0-\udef9\udeff]"},{name:"Warang_Citi",astral:"\ud806[\udca0-\udcf2\udcff]"},{name:"Yezidi",astral:"\ud803[\ude80-\udea9\udeab-\udead\udeb0\udeb1]"},{name:"Yi",bmp:"ꀀ-ꒌ꒐-꓆"},{name:"Zanabazar_Square",astral:"\ud806[\ude00-\ude47]"}]);if(function(u){var d="xregexp",e=/(\()(?!\?)|\\([1-9]\d*)|\\[\s\S]|\[(?:[^\\\]]|\\[\s\S])*\]/g,t=u.union([/\({{([\w$]+)}}\)|{{([\w$]+)}}/,e],"g",{conjunction:"or"});function n(u){var d=/^(?:\(\?:\))*\^/,e=/\$(?:\(\?:\))*$/;return d.test(u)&&e.test(u)&&e.test(u.replace(/\\[\s\S]/g,""))?u.replace(d,"").replace(e,""):u}function a(e,t){var n=t?"x":"";return u.isRegExp(e)?e[d]&&e[d].captureNames?e:u(e.source,n):u(e,n)}function r(d){return d instanceof RegExp?d:u.escape(d)}function c(u,d,e){return u["subpattern".concat(e)]=d,u}function f(u,d,e){return u+(d<e.length-1?"{{subpattern".concat(d,"}}"):"")}u.tag=function(d){return function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];var o=n.map(r).reduce(c,{}),i=e.raw.map(f).join("");return u.build(i,o,d)}},u.build=function(r,c,f){var o=(f=f||"").includes("x"),i=/^\(\?([\w$]+)\)/.exec(r);i&&(f=u._clipDuplicates(f+i[1]));var l={};for(var s in c)if(c.hasOwnProperty(s)){var D=a(c[s],o);l[s]={pattern:n(D.source),names:D[d].captureNames||[]}}var m,b=a(r,o),C=0,p=0,F=[0],h=b[d].captureNames||[],A=b.source.replace(t,(function(u,d,t,n,a){var r,c,f,o=d||t;if(o){if(!l.hasOwnProperty(o))throw new ReferenceError("Undefined property ".concat(u));d?(r=h[p],F[++p]=++C,c="(?<".concat(r||o,">")):c="(?:",m=C;var i=l[o].pattern.replace(e,(function(u,d,e){if(d){if(r=l[o].names[C-m],++C,r)return"(?<".concat(r,">")}else if(e)return f=+e-1,l[o].names[f]?"\\k<".concat(l[o].names[f],">"):"\\".concat(+e+m);return u}));return"".concat(c).concat(i,")")}if(n){if(r=h[p],F[++p]=++C,r)return"(?<".concat(r,">")}else if(a)return h[f=+a-1]?"\\k<".concat(h[f],">"):"\\".concat(F[+a]);return u}));return u(A,f)}}(G),function(u){function d(u,d,e,t){return{name:u,value:d,start:e,end:t}}u.matchRecursive=function(e,t,n,a,r){r=r||{};var c,f=(a=a||"").includes("g"),o=a.includes("y"),i=a.replace(/y/g,"");t=u(t,i),n=u(n,i);var l=r.escapeChar;if(l){if(l.length>1)throw new Error("Cannot use more than one escape character");l=u.escape(l),c=new RegExp("(?:".concat(l,"[\\S\\s]|(?:(?!").concat(u.union([t,n],"",{conjunction:"or"}).source,")[^").concat(l,"])+)+"),a.replace(u._hasNativeFlag("s")?/[^imsu]/g:/[^imu]/g,""))}for(var s,D,m,b,C=0,p=0,F=0,h=0,A=r.valueNames,E=[];;){if(l&&(F+=(u.exec(e,c,F,"sticky")||[""])[0].length),m=u.exec(e,t,F),b=u.exec(e,n,F),m&&b&&(m.index<=b.index?b=null:m=null),m||b)F=(p=(m||b).index)+(m||b)[0].length;else if(!C)break;if(o&&!C&&p>h)break;if(m)C||(s=p,D=F),C+=1;else if(b&&C){if(!(C-=1)&&(A?(A[0]&&s>h&&E.push(d(A[0],e.slice(h,s),h,s)),A[1]&&E.push(d(A[1],e.slice(s,D),s,D)),A[2]&&E.push(d(A[2],e.slice(D,p),D,p)),A[3]&&E.push(d(A[3],e.slice(p,F),p,F))):E.push(e.slice(D,p)),h=F,!f))break}else{var v=r.unbalanced||"error";if("skip"!==v&&"skip-lazy"!==v){if("error"===v){var g=b?p:s;throw new Error("Unbalanced ".concat(b?"right":"left"," delimiter found in string at position ").concat(g))}throw new Error("Unsupported value for unbalanced: ".concat(v))}if(b)b=null;else{if("skip"===v)F=s+(u.exec(e,t,s,"sticky")[0].length||1);else F=s+1;C=0}}p===F&&(F+=1)}return f&&E.length>0&&!o&&A&&A[0]&&e.length>h&&E.push(d(A[0],e.slice(h),h,e.length)),E}}(G),function(u){var d={},e={},t=u._dec,n=u._hex,a=u._pad4;function r(u){return u.replace(/[- _]+/g,"").toLowerCase()}function c(u){var d=/^\\[xu](.+)/.exec(u);return d?t(d[1]):u.charCodeAt("\\"===u[0]?1:0)}function f(e){var t,r,f;return d[e]["b!"]||(d[e]["b!"]=(t=d[e].bmp,r="",f=-1,u.forEach(t,/(\\x..|\\u....|\\?[\s\S])(?:-(\\x..|\\u....|\\?[\s\S]))?/,(function(u){var d=c(u[1]);d>f+1&&(r+="\\u".concat(a(n(f+1))),d>f+2&&(r+="-\\u".concat(a(n(d-1))))),f=c(u[2]||u[1])})),f<65535&&(r+="\\u".concat(a(n(f+1))),f<65534&&(r+="-\\uFFFF")),r))}function o(u,e){var t=e?"a!":"a=";return d[u][t]||(d[u][t]=function(u,e){var t=d[u],n="";return t.bmp&&!t.isBmpLast&&(n="[".concat(t.bmp,"]").concat(t.astral?"|":"")),t.astral&&(n+=t.astral),t.isBmpLast&&t.bmp&&(n+="".concat(t.astral?"|":"","[").concat(t.bmp,"]")),e?"(?:(?!".concat(n,")(?:[\ud800-\udbff][\udc00-\udfff]|[\0-￿]))"):"(?:".concat(n,")")}(u,e))}u.addToken(/\\([pP])(?:{(\^?)(?:(\w+)=)?([^}]*)}|([A-Za-z]))/,(function(u,t,n){var a="Unknown Unicode token ",c=j(u,6),i=c[0],l=c[1],s=c[2],D=c[3],m=c[4],b=c[5],C="P"===l||!!s,p=n.includes("A"),F=r(b||m),h=d[F];if("P"===l&&s)throw new SyntaxError("Invalid double negation "+i);if(!d.hasOwnProperty(F))throw new SyntaxError(a+i);if(D&&(!e[D]||!e[D][F]))throw new SyntaxError(a+i);if(h.inverseOf){if(F=r(h.inverseOf),!d.hasOwnProperty(F))throw new ReferenceError("".concat("Unicode token missing data "+i," -> ").concat(h.inverseOf));h=d[F],C=!C}if(!h.bmp&&!p)throw new SyntaxError("Astral mode required for Unicode token "+i);if(p){if("class"===t)throw new SyntaxError("Astral mode does not support Unicode tokens within character classes");return o(F,C)}return"class"===t?C?f(F):h.bmp:"".concat((C?"[^":"[")+h.bmp,"]")}),{scope:"all",optionalFlags:"A",leadChar:"\\"}),u.addUnicodeData=function(t,n){n&&(e[n]={});var a,c=function(u,d){var e="undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(!e){if(Array.isArray(u)||(e=M(u))||d&&u&&"number"==typeof u.length){e&&(u=e);var t=0,n=function(){};return{s:n,n:function(){return t>=u.length?{done:!0}:{done:!1,value:u[t++]}},e:function(u){throw u},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,r=!0,c=!1;return{s:function(){e=e.call(u)},n:function(){var u=e.next();return r=u.done,u},e:function(u){c=!0,a=u},f:function(){try{r||null==e.return||e.return()}finally{if(c)throw a}}}}(t);try{for(c.s();!(a=c.n()).done;){var f=a.value;if(!f.name)throw new Error("Unicode token requires name");if(!(f.inverseOf||f.bmp||f.astral))throw new Error("Unicode token has no character data "+f.name);var o=r(f.name);if(d[o]=f,n&&(e[n][o]=!0),f.alias){var i=r(f.alias);d[i]=f,n&&(e[n][i]=!0)}}}catch(u){c.e(u)}finally{c.f()}u.cache.flush("patterns")},u._getUnicodeProperty=function(u){var e=r(u);return d[e]}}(G),function(u){if(!u.addUnicodeData)throw new ReferenceError("Unicode Base must be loaded before Unicode Categories");u.addUnicodeData(z)}(G),function(u){if(!u.addUnicodeData)throw new ReferenceError("Unicode Base must be loaded before Unicode Properties");var d=W;d.push({name:"Assigned",inverseOf:"Cn"}),u.addUnicodeData(d)}(G),function(u){if(!u.addUnicodeData)throw new ReferenceError("Unicode Base must be loaded before Unicode Scripts");u.addUnicodeData(J,"Script")}(G),"undefined"==typeof document){const u=(self.MonacoEnvironment?.baseUrl||"../../../")+"vs/language/kusto/";importScripts(u+"bridge.min.js",u+"kusto.javascript.client.min.js",u+"newtonsoft.json.min.js",u+"Kusto.Language.Bridge.min.js")}var Q,H=["name","columns","entityType","docstring"];function Z(u,d){return function(u){if(Array.isArray(u))return u}(u)||function(u,d){var e=null==u?null:"undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(null!=e){var t,n,a,r,c=[],f=!0,o=!1;try{if(a=(e=e.call(u)).next,0===d){if(Object(e)!==e)return;f=!1}else for(;!(f=(t=a.call(e)).done)&&(c.push(t.value),c.length!==d);f=!0);}catch(u){o=!0,n=u}finally{try{if(!f&&null!=e.return&&(r=e.return(),Object(r)!==r))return}finally{if(o)throw n}}return c}}(u,d)||eu(u,d)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Y(u,d){var e=Object.keys(u);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(u);d&&(t=t.filter((function(d){return Object.getOwnPropertyDescriptor(u,d).enumerable}))),e.push.apply(e,t)}return e}function q(u){for(var d=1;d<arguments.length;d++){var e=null!=arguments[d]?arguments[d]:{};d%2?Y(Object(e),!0).forEach((function(d){nu(u,d,e[d])})):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(e)):Y(Object(e)).forEach((function(d){Object.defineProperty(u,d,Object.getOwnPropertyDescriptor(e,d))}))}return u}function X(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */X=function(){return d};var u,d={},e=Object.prototype,t=e.hasOwnProperty,n=Object.defineProperty||function(u,d,e){u[d]=e.value},a="function"==typeof Symbol?Symbol:{},r=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",f=a.toStringTag||"@@toStringTag";function o(u,d,e){return Object.defineProperty(u,d,{value:e,enumerable:!0,configurable:!0,writable:!0}),u[d]}try{o({},"")}catch(u){o=function(u,d,e){return u[d]=e}}function i(u,d,e,t){var a=d&&d.prototype instanceof p?d:p,r=Object.create(a.prototype),c=new K(t||[]);return n(r,"_invoke",{value:B(u,e,c)}),r}function l(u,d,e){try{return{type:"normal",arg:u.call(d,e)}}catch(u){return{type:"throw",arg:u}}}d.wrap=i;var s="suspendedStart",D="suspendedYield",m="executing",b="completed",C={};function p(){}function F(){}function h(){}var A={};o(A,r,(function(){return this}));var E=Object.getPrototypeOf,v=E&&E(E(w([])));v&&v!==e&&t.call(v,r)&&(A=v);var g=h.prototype=p.prototype=Object.create(A);function y(u){["next","throw","return"].forEach((function(d){o(u,d,(function(u){return this._invoke(d,u)}))}))}function S(u,d){function e(n,a,r,c){var f=l(u[n],u,a);if("throw"!==f.type){var o=f.arg,i=o.value;return i&&"object"==au(i)&&t.call(i,"__await")?d.resolve(i.__await).then((function(u){e("next",u,r,c)}),(function(u){e("throw",u,r,c)})):d.resolve(i).then((function(u){o.value=u,r(o)}),(function(u){return e("throw",u,r,c)}))}c(f.arg)}var a;n(this,"_invoke",{value:function(u,t){function n(){return new d((function(d,n){e(u,t,d,n)}))}return a=a?a.then(n,n):n()}})}function B(d,e,t){var n=s;return function(a,r){if(n===m)throw Error("Generator is already running");if(n===b){if("throw"===a)throw r;return{value:u,done:!0}}for(t.method=a,t.arg=r;;){var c=t.delegate;if(c){var f=k(c,t);if(f){if(f===C)continue;return f}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if(n===s)throw n=b,t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);n=m;var o=l(d,e,t);if("normal"===o.type){if(n=t.done?b:D,o.arg===C)continue;return{value:o.arg,done:t.done}}"throw"===o.type&&(n=b,t.method="throw",t.arg=o.arg)}}}function k(d,e){var t=e.method,n=d.iterator[t];if(n===u)return e.delegate=null,"throw"===t&&d.iterator.return&&(e.method="return",e.arg=u,k(d,e),"throw"===e.method)||"return"!==t&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+t+"' method")),C;var a=l(n,d.iterator,e.arg);if("throw"===a.type)return e.method="throw",e.arg=a.arg,e.delegate=null,C;var r=a.arg;return r?r.done?(e[d.resultName]=r.value,e.next=d.nextLoc,"return"!==e.method&&(e.method="next",e.arg=u),e.delegate=null,C):r:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,C)}function x(u){var d={tryLoc:u[0]};1 in u&&(d.catchLoc=u[1]),2 in u&&(d.finallyLoc=u[2],d.afterLoc=u[3]),this.tryEntries.push(d)}function T(u){var d=u.completion||{};d.type="normal",delete d.arg,u.completion=d}function K(u){this.tryEntries=[{tryLoc:"root"}],u.forEach(x,this),this.reset(!0)}function w(d){if(d||""===d){var e=d[r];if(e)return e.call(d);if("function"==typeof d.next)return d;if(!isNaN(d.length)){var n=-1,a=function e(){for(;++n<d.length;)if(t.call(d,n))return e.value=d[n],e.done=!1,e;return e.value=u,e.done=!0,e};return a.next=a}}throw new TypeError(au(d)+" is not iterable")}return F.prototype=h,n(g,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:F,configurable:!0}),F.displayName=o(h,f,"GeneratorFunction"),d.isGeneratorFunction=function(u){var d="function"==typeof u&&u.constructor;return!!d&&(d===F||"GeneratorFunction"===(d.displayName||d.name))},d.mark=function(u){return Object.setPrototypeOf?Object.setPrototypeOf(u,h):(u.__proto__=h,o(u,f,"GeneratorFunction")),u.prototype=Object.create(g),u},d.awrap=function(u){return{__await:u}},y(S.prototype),o(S.prototype,c,(function(){return this})),d.AsyncIterator=S,d.async=function(u,e,t,n,a){void 0===a&&(a=Promise);var r=new S(i(u,e,t,n),a);return d.isGeneratorFunction(e)?r:r.next().then((function(u){return u.done?u.value:r.next()}))},y(g),o(g,f,"Generator"),o(g,r,(function(){return this})),o(g,"toString",(function(){return"[object Generator]"})),d.keys=function(u){var d=Object(u),e=[];for(var t in d)e.push(t);return e.reverse(),function u(){for(;e.length;){var t=e.pop();if(t in d)return u.value=t,u.done=!1,u}return u.done=!0,u}},d.values=w,K.prototype={constructor:K,reset:function(d){if(this.prev=0,this.next=0,this.sent=this._sent=u,this.done=!1,this.delegate=null,this.method="next",this.arg=u,this.tryEntries.forEach(T),!d)for(var e in this)"t"===e.charAt(0)&&t.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=u)},stop:function(){this.done=!0;var u=this.tryEntries[0].completion;if("throw"===u.type)throw u.arg;return this.rval},dispatchException:function(d){if(this.done)throw d;var e=this;function n(t,n){return c.type="throw",c.arg=d,e.next=t,n&&(e.method="next",e.arg=u),!!n}for(var a=this.tryEntries.length-1;a>=0;--a){var r=this.tryEntries[a],c=r.completion;if("root"===r.tryLoc)return n("end");if(r.tryLoc<=this.prev){var f=t.call(r,"catchLoc"),o=t.call(r,"finallyLoc");if(f&&o){if(this.prev<r.catchLoc)return n(r.catchLoc,!0);if(this.prev<r.finallyLoc)return n(r.finallyLoc)}else if(f){if(this.prev<r.catchLoc)return n(r.catchLoc,!0)}else{if(!o)throw Error("try statement without catch or finally");if(this.prev<r.finallyLoc)return n(r.finallyLoc)}}}},abrupt:function(u,d){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc<=this.prev&&t.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var a=n;break}}a&&("break"===u||"continue"===u)&&a.tryLoc<=d&&d<=a.finallyLoc&&(a=null);var r=a?a.completion:{};return r.type=u,r.arg=d,a?(this.method="next",this.next=a.finallyLoc,C):this.complete(r)},complete:function(u,d){if("throw"===u.type)throw u.arg;return"break"===u.type||"continue"===u.type?this.next=u.arg:"return"===u.type?(this.rval=this.arg=u.arg,this.method="return",this.next="end"):"normal"===u.type&&d&&(this.next=d),C},finish:function(u){for(var d=this.tryEntries.length-1;d>=0;--d){var e=this.tryEntries[d];if(e.finallyLoc===u)return this.complete(e.completion,e.afterLoc),T(e),C}},catch:function(u){for(var d=this.tryEntries.length-1;d>=0;--d){var e=this.tryEntries[d];if(e.tryLoc===u){var t=e.completion;if("throw"===t.type){var n=t.arg;T(e)}return n}}throw Error("illegal catch attempt")},delegateYield:function(d,e,t){return this.delegate={iterator:w(d),resultName:e,nextLoc:t},"next"===this.method&&(this.arg=u),C}},d}function uu(u,d,e,t,n,a,r){try{var c=u[a](r),f=c.value}catch(u){return void e(u)}c.done?d(f):Promise.resolve(f).then(t,n)}function du(u){return function(u){if(Array.isArray(u))return tu(u)}(u)||function(u){if("undefined"!=typeof Symbol&&null!=u[Symbol.iterator]||null!=u["@@iterator"])return Array.from(u)}(u)||eu(u)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function eu(u,d){if(u){if("string"==typeof u)return tu(u,d);var e={}.toString.call(u).slice(8,-1);return"Object"===e&&u.constructor&&(e=u.constructor.name),"Map"===e||"Set"===e?Array.from(u):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?tu(u,d):void 0}}function tu(u,d){(null==d||d>u.length)&&(d=u.length);for(var e=0,t=Array(d);e<d;e++)t[e]=u[e];return t}function nu(u,d,e){return(d=ou(d))in u?Object.defineProperty(u,d,{value:e,enumerable:!0,configurable:!0,writable:!0}):u[d]=e,u}function au(u){return au="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(u){return typeof u}:function(u){return u&&"function"==typeof Symbol&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u},au(u)}function ru(u,d){if(!(u instanceof d))throw new TypeError("Cannot call a class as a function")}function cu(u,d){for(var e=0;e<d.length;e++){var t=d[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(u,ou(t.key),t)}}function fu(u,d,e){return d&&cu(u.prototype,d),e&&cu(u,e),Object.defineProperty(u,"prototype",{writable:!1}),u}function ou(u){var d=function(u,d){if("object"!=au(u)||!u)return u;var e=u[Symbol.toPrimitive];if(void 0!==e){var t=e.call(u,d||"default");if("object"!=au(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===d?String:Number)(u)}(u,"string");return"symbol"==au(d)?d:d+""}var iu=Kusto.Data.IntelliSense,lu=Kusto.Language.Parsing,su=Kusto.Language.Editor,Du=Kusto.Language.Symbols,mu=Kusto.Language.GlobalState,bu=System.Collections.Generic.List$1;function Cu(u){throw new Error("Unexpected object: "+u)}var pu=function(){return fu((function u(d,e,t,n){ru(this,u),this.version=d,this.uri=e,this.rulesProvider=t,this.parseMode=n}),[{key:"isParseNeeded",value:function(u,d,e){return!(u.uri===this.uri&&(!d||d===this.rulesProvider)&&u.version<=this.version&&e&&e<=this.parseMode)}}])}(),Fu=function(u){return u[u.TableToken=2]="TableToken",u[u.TableColumnToken=4]="TableColumnToken",u[u.OperatorToken=8]="OperatorToken",u[u.SubOperatorToken=16]="SubOperatorToken",u[u.CalculatedColumnToken=32]="CalculatedColumnToken",u[u.StringLiteralToken=64]="StringLiteralToken",u[u.FunctionNameToken=128]="FunctionNameToken",u[u.UnknownToken=256]="UnknownToken",u[u.CommentToken=512]="CommentToken",u[u.PlainTextToken=1024]="PlainTextToken",u[u.DataTypeToken=2048]="DataTypeToken",u[u.ControlCommandToken=4096]="ControlCommandToken",u[u.CommandPartToken=8192]="CommandPartToken",u[u.QueryParametersToken=16384]="QueryParametersToken",u[u.CslCommandToken=32768]="CslCommandToken",u[u.LetVariablesToken=65536]="LetVariablesToken",u[u.PluginToken=131072]="PluginToken",u[u.BracketRangeToken=262144]="BracketRangeToken",u[u.ClientDirectiveToken=524288]="ClientDirectiveToken",u}({}),hu=(nu(nu(nu(nu(nu(nu(nu(nu(nu(nu(Q={},Du.SymbolKind.Cluster,"Cluster"),Du.SymbolKind.Column,"Column"),Du.SymbolKind.Command,"Command"),Du.SymbolKind.Database,"Database"),Du.SymbolKind.EntityGroup,"EntityGroup"),Du.SymbolKind.EntityGroupElement,"EntityGroupElement"),Du.SymbolKind.Error,"Error"),Du.SymbolKind.Function,"Function"),Du.SymbolKind.Graph,"Graph"),Du.SymbolKind.Group,"Group"),nu(nu(nu(nu(nu(nu(nu(nu(nu(nu(Q,Du.SymbolKind.MaterializedView,"MaterializedView"),Du.SymbolKind.None,"None"),Du.SymbolKind.Operator,"Operator"),Du.SymbolKind.Option,"Option"),Du.SymbolKind.Parameter,"Parameter"),Du.SymbolKind.Pattern,"Pattern"),Du.SymbolKind.QueryOperatorParameter,"QueryOperatorParameter"),Du.SymbolKind.Primitive,"Primitive"),Du.SymbolKind.Table,"Table"),Du.SymbolKind.Tuple,"Tuple"),nu(nu(Q,Du.SymbolKind.Variable,"Variable"),Du.SymbolKind.Void,"Void")),Au=function(){function u(e,t){var n,a,r,c;ru(this,u),nu(this,"_toOptionKind",(nu(nu(nu(nu(nu(nu(nu(nu(nu(nu(n={},su.CompletionKind.AggregateFunction,iu.OptionKind.FunctionAggregation),su.CompletionKind.BuiltInFunction,iu.OptionKind.FunctionScalar),su.CompletionKind.Cluster,iu.OptionKind.Database),su.CompletionKind.Column,iu.OptionKind.Column),su.CompletionKind.CommandPrefix,iu.OptionKind.Command),su.CompletionKind.Database,iu.OptionKind.Database),su.CompletionKind.DatabaseFunction,iu.OptionKind.FunctionServerSide),su.CompletionKind.Example,iu.OptionKind.Literal),su.CompletionKind.Identifier,iu.OptionKind.None),su.CompletionKind.Keyword,iu.OptionKind.Option),nu(nu(nu(nu(nu(nu(nu(nu(nu(nu(n,su.CompletionKind.LocalFunction,iu.OptionKind.FunctionLocal),su.CompletionKind.MaterialiedView,iu.OptionKind.MaterializedView),su.CompletionKind.Parameter,iu.OptionKind.Parameter),su.CompletionKind.Punctuation,iu.OptionKind.None),su.CompletionKind.QueryPrefix,iu.OptionKind.Operator),su.CompletionKind.RenderChart,iu.OptionKind.OptionRender),su.CompletionKind.ScalarInfix,iu.OptionKind.None),su.CompletionKind.ScalarPrefix,iu.OptionKind.Literal),su.CompletionKind.ScalarType,iu.OptionKind.DataType),su.CompletionKind.Syntax,iu.OptionKind.None),nu(nu(nu(nu(nu(nu(nu(nu(nu(n,su.CompletionKind.Table,iu.OptionKind.Table),su.CompletionKind.TabularPrefix,iu.OptionKind.None),su.CompletionKind.TabularSuffix,iu.OptionKind.None),su.CompletionKind.Unknown,iu.OptionKind.None),su.CompletionKind.Variable,iu.OptionKind.Parameter),su.CompletionKind.Option,iu.OptionKind.Option),su.CompletionKind.Graph,iu.OptionKind.Graph),su.CompletionKind.EntityGroup,iu.OptionKind.EntityGroup),su.CompletionKind.StoredQueryResult,iu.OptionKind.StoredQueryResult))),nu(this,"disabledCompletionItemsV2",{ladderchart:su.CompletionKind.RenderChart,pivotchart:su.CompletionKind.RenderChart,timeline:su.CompletionKind.RenderChart,timepivot:su.CompletionKind.RenderChart,"3Dchart":su.CompletionKind.RenderChart,list:su.CompletionKind.RenderChart}),nu(this,"_kustoKindtolsKind",(nu(nu(nu(nu(nu(nu(nu(nu(nu(nu(a={},iu.OptionKind.None,d.CompletionItemKind.Interface),iu.OptionKind.Operator,d.CompletionItemKind.Method),iu.OptionKind.Command,d.CompletionItemKind.Method),iu.OptionKind.Service,d.CompletionItemKind.Class),iu.OptionKind.Policy,d.CompletionItemKind.Reference),iu.OptionKind.Database,d.CompletionItemKind.Class),iu.OptionKind.Table,d.CompletionItemKind.Class),iu.OptionKind.DataType,d.CompletionItemKind.Class),iu.OptionKind.Literal,d.CompletionItemKind.Property),iu.OptionKind.Parameter,d.CompletionItemKind.Variable),nu(nu(nu(nu(nu(nu(nu(nu(nu(nu(a,iu.OptionKind.IngestionMapping,d.CompletionItemKind.Variable),iu.OptionKind.ExpressionFunction,d.CompletionItemKind.Variable),iu.OptionKind.Option,d.CompletionItemKind.Interface),iu.OptionKind.OptionKind,d.CompletionItemKind.Interface),iu.OptionKind.OptionRender,d.CompletionItemKind.Interface),iu.OptionKind.Column,d.CompletionItemKind.Function),iu.OptionKind.ColumnString,d.CompletionItemKind.Field),iu.OptionKind.ColumnNumeric,d.CompletionItemKind.Field),iu.OptionKind.ColumnDateTime,d.CompletionItemKind.Field),iu.OptionKind.ColumnTimespan,d.CompletionItemKind.Field),nu(nu(nu(nu(nu(a,iu.OptionKind.FunctionServerSide,d.CompletionItemKind.Field),iu.OptionKind.FunctionAggregation,d.CompletionItemKind.Field),iu.OptionKind.FunctionFilter,d.CompletionItemKind.Field),iu.OptionKind.FunctionScalar,d.CompletionItemKind.Field),iu.OptionKind.ClientDirective,d.CompletionItemKind.Enum))),nu(this,"_kustoKindToLsKindV2",(nu(nu(nu(nu(nu(nu(nu(nu(nu(nu(r={},su.CompletionKind.AggregateFunction,d.CompletionItemKind.Field),su.CompletionKind.BuiltInFunction,d.CompletionItemKind.Field),su.CompletionKind.Cluster,d.CompletionItemKind.Class),su.CompletionKind.Column,d.CompletionItemKind.Function),su.CompletionKind.CommandPrefix,d.CompletionItemKind.Field),su.CompletionKind.Database,d.CompletionItemKind.Class),su.CompletionKind.DatabaseFunction,d.CompletionItemKind.Field),su.CompletionKind.Example,d.CompletionItemKind.Text),su.CompletionKind.Identifier,d.CompletionItemKind.Method),su.CompletionKind.Keyword,d.CompletionItemKind.Method),nu(nu(nu(nu(nu(nu(nu(nu(nu(nu(r,su.CompletionKind.LocalFunction,d.CompletionItemKind.Field),su.CompletionKind.MaterialiedView,d.CompletionItemKind.Class),su.CompletionKind.Parameter,d.CompletionItemKind.Variable),su.CompletionKind.Punctuation,d.CompletionItemKind.Interface),su.CompletionKind.QueryPrefix,d.CompletionItemKind.Function),su.CompletionKind.RenderChart,d.CompletionItemKind.Method),su.CompletionKind.ScalarInfix,d.CompletionItemKind.Field),su.CompletionKind.ScalarPrefix,d.CompletionItemKind.Field),su.CompletionKind.ScalarType,d.CompletionItemKind.TypeParameter),su.CompletionKind.Syntax,d.CompletionItemKind.Method),nu(nu(nu(nu(nu(nu(nu(nu(nu(r,su.CompletionKind.Table,d.CompletionItemKind.Class),su.CompletionKind.TabularPrefix,d.CompletionItemKind.Field),su.CompletionKind.TabularSuffix,d.CompletionItemKind.Field),su.CompletionKind.Unknown,d.CompletionItemKind.Interface),su.CompletionKind.Variable,d.CompletionItemKind.Variable),su.CompletionKind.Option,d.CompletionItemKind.Text),su.CompletionKind.Graph,d.CompletionItemKind.Class),su.CompletionKind.EntityGroup,d.CompletionItemKind.Class),su.CompletionKind.StoredQueryResult,d.CompletionItemKind.Field))),nu(this,"_tokenKindToClassificationKind",(nu(nu(nu(nu(nu(nu(nu(nu(nu(nu(c={},Fu.TableToken,su.ClassificationKind.Table),Fu.TableColumnToken,su.ClassificationKind.Column),Fu.OperatorToken,su.ClassificationKind.QueryOperator),Fu.SubOperatorToken,su.ClassificationKind.Function),Fu.CalculatedColumnToken,su.ClassificationKind.Column),Fu.StringLiteralToken,su.ClassificationKind.Literal),Fu.FunctionNameToken,su.ClassificationKind.Function),Fu.UnknownToken,su.ClassificationKind.PlainText),Fu.CommentToken,su.ClassificationKind.Comment),Fu.PlainTextToken,su.ClassificationKind.PlainText),nu(nu(nu(nu(nu(nu(nu(nu(nu(c,Fu.DataTypeToken,su.ClassificationKind.Type),Fu.ControlCommandToken,su.ClassificationKind.PlainText),Fu.CommandPartToken,su.ClassificationKind.PlainText),Fu.QueryParametersToken,su.ClassificationKind.QueryParameter),Fu.CslCommandToken,su.ClassificationKind.Keyword),Fu.LetVariablesToken,su.ClassificationKind.Identifier),Fu.PluginToken,su.ClassificationKind.Function),Fu.BracketRangeToken,su.ClassificationKind.Keyword),Fu.ClientDirectiveToken,su.ClassificationKind.Keyword))),this._schemaCache={},this._kustoJsSchema=u.convertToKustoJsSchema(e),this.__kustoJsSchemaV2=this.convertToKustoJsSchemaV2(e),this._schema=e,this._clustersSetInGlobalState=new Set,this._nonEmptyDatabaseSetInGlobalState=new Set,this.configure(t),this._newlineAppendPipePolicy=new Kusto.Data.IntelliSense.ApplyPolicy,this._newlineAppendPipePolicy.Text="\n| "}return fu(u,[{key:"createDatabaseUniqueName",value:function(u,d){return"".concat(u,"_").concat(d)}},{key:"_kustoJsSchemaV2",get:function(){return this.__kustoJsSchemaV2},set:function(u){this.__kustoJsSchemaV2=u,this._clustersSetInGlobalState.clear(),this._nonEmptyDatabaseSetInGlobalState.clear();for(var d=0;d<u.Clusters.Count;d++){var e=this._kustoJsSchemaV2.Clusters.getItem(d);this._clustersSetInGlobalState.add(e.Name);for(var t=0;t<e.Databases.Count;t++){var n=e.Databases.getItem(t);n.Tables.Count>0&&this._nonEmptyDatabaseSetInGlobalState.add(this.createDatabaseUniqueName(e.Name,n.Name))}}}},{key:"configure",value:function(u){this._languageSettings=u;var d=this._languageSettings.completionOptions.includeExtendedSyntax;this._completionOptions=Kusto.Language.Editor.CompletionOptions.Default.WithIncludeExtendedSyntax(d).WithIncludePunctuationOnlySyntax(!1),this.createRulesProvider(this._kustoJsSchema,this._schema.clusterType)}},{key:"doComplete",value:function(u,d){return this.doCompleteV2(u,d)}},{key:"debugGlobalState",value:function(u){console.log("globals.Clusters.Count: ".concat(u.Clusters.Count));for(var d=0;d<u.Clusters.Count;d++){var e=u.Clusters.getItem(d);console.log("cluster: ".concat(e.Name)),console.log("cluster.Databases.Count: ".concat(e.Databases.Count));for(var t=0;t<e.Databases.Count;t++){var n=e.Databases.getItem(t);console.log("cluster.database: [".concat(e.Name,"].[").concat(n.Name,"]")),console.log("cluster.Databases.Tables.Count: ".concat(n.Tables.Count));for(var a=0;a<n.Tables.Count;a++){var r=n.Tables.getItem(a);console.log("cluster.database.table: [".concat(e.Name,"].[").concat(n.Name,"].[").concat(r.Name,"]"))}}}}},{key:"formatHelpTopic",value:function(u){return"**".concat(u.Name," [(view online)](").concat(u.Url,")**\n\n").concat(u.LongDescription)}},{key:"doCompleteV2",value:function(u,e){var t=this;if(!u)return Promise.resolve(d.CompletionList.create([]));var n=this.parseDocumentV2(u),a=u.offsetAt(e),r=n.GetBlockAtPosition(a).Service.GetCompletionItems(a,this._completionOptions),c=this.disabledCompletionItemsV2;this._languageSettings.disabledCompletionItems&&this._languageSettings.disabledCompletionItems.map((function(u){c[u]=su.CompletionKind.Unknown}));var f=this.toArray(r.Items).filter((function(u){return!(u&&u.MatchText&&void 0!==c[u.MatchText]&&(c[u.MatchText]===su.CompletionKind.Unknown||c[u.MatchText]===u.Kind))})).map((function(e,n){var a=new iu.CompletionOption(t._toOptionKind[e.Kind]||iu.OptionKind.None,e.DisplayText),c=t.getTopic(a),f=e.AfterText&&e.AfterText.length>0?{textToInsert:"".concat(e.EditText.replace("$","\\$"),"$0").concat(e.AfterText),format:d.InsertTextFormat.Snippet}:{textToInsert:e.EditText,format:d.InsertTextFormat.PlainText},o=f.textToInsert,i=f.format,l=d.CompletionItem.create(e.DisplayText),s=u.positionAt(r.EditStart),D=u.positionAt(r.EditStart+r.EditLength);return l.textEdit=d.TextEdit.replace(d.Range.create(s,D),o),l.filterText=e.MatchText.charAt(0).toLowerCase()+e.MatchText.slice(1),l.kind=t.kustoKindToLsKindV2(e.Kind),l.sortText=e.OrderText,l.insertTextFormat=i,l.detail=c?c.ShortDescription:void 0,l.documentation=c?{value:t.formatHelpTopic(c),kind:d.MarkupKind.Markdown}:void 0,l}));return Promise.resolve(d.CompletionList.create(f))}},{key:"getTopic",value:function(u){if(u.Kind==iu.OptionKind.FunctionScalar||u.Kind==iu.OptionKind.FunctionAggregation){var d=u.Value.indexOf("(");d>=0&&(u=new iu.CompletionOption(u.Kind,u.Value.substring(0,d)))}return iu.CslDocumentation.Instance.GetTopic(u)}},{key:"doRangeFormat",value:function(u,e){if(!u)return Promise.resolve([]);var t=u.offsetAt(e.start),n=u.offsetAt(e.end),a=this.getFormattedCommandsInDocumentV2(u,t,n);return a.originalRange&&0!==a.formattedCommands.length?Promise.resolve([d.TextEdit.replace(a.originalRange,a.formattedCommands.join(""))]):Promise.resolve([])}},{key:"doDocumentFormat",value:function(u){if(!u)return Promise.resolve([]);var e=u.positionAt(0),t=u.positionAt(u.getText().length),n=d.Range.create(e,t),a=this.getFormattedCommandsInDocumentV2(u).formattedCommands.join("");return Promise.resolve([d.TextEdit.replace(n,a)])}},{key:"doCurrentCommandFormat",value:function(u,d){var e=u.offsetAt(d),t=this.createRange(u,e-1,e+1);return this.doRangeFormat(u,t)}},{key:"doFolding",value:function(u){return u?this.getCommandsInDocument(u).then((function(d){return d.map((function(d){d.text.endsWith("\r\n")?d.absoluteEnd-=2:(d.text.endsWith("\r")||d.text.endsWith("\n"))&&--d.absoluteEnd;var e=u.positionAt(d.absoluteStart),t=u.positionAt(d.absoluteEnd);return{startLine:e.line,startCharacter:e.character,endLine:t.line,endCharacter:t.character}}))})):Promise.resolve([])}},{key:"getClusterReferences",value:function(u,d){var e,t=this.parseDocumentV2(u),n=this.getCurrentCommandV2(t,d),a=null==n||null===(e=n.Service)||void 0===e?void 0:e.GetClusterReferences();if(!a)return Promise.resolve([]);for(var r=new Set,c=0;c<a.Count;c++){var f=a.getItem(c),o=Kusto.Language.KustoFacts.GetFullHostName(f.Cluster,null);this._clustersSetInGlobalState.has(o)||r.add(o)}return Promise.resolve(Array.from(r).map((function(u){return{clusterName:u}})))}},{key:"getDatabaseReferences",value:function(u,d){var e,t=this.parseDocumentV2(u),n=this.getCurrentCommandV2(t,d),a=null==n||null===(e=n.Service)||void 0===e?void 0:e.GetDatabaseReferences();if(!a)return Promise.resolve([]);for(var r=[],c=new Set,f=0;f<a.Count;f++){var o=a.getItem(f),i=Kusto.Language.KustoFacts.GetFullHostName(o.Cluster,null),l=this.createDatabaseUniqueName(i,o.Database);if(!c.has(l))c.add(l),this._nonEmptyDatabaseSetInGlobalState.has(l)||r.push({databaseName:o.Database,clusterName:i})}return Promise.resolve(r)}},{key:"doValidation",value:function(u,d,e,t){var n=this;if(!u)return Promise.resolve([]);var a=this.parseDocumentV2(u),r=this.toArray(a.Blocks);d.length>0&&(r=this.getAffectedBlocks(r,d));var c=r.map((function(u){var d=n.toArray(u.Service.GetDiagnostics()),a=null!=e?e:n._languageSettings.enableQueryWarnings,r=null!=t?t:n._languageSettings.enableQuerySuggestions;if(a||r){var c=u.Service.GetAnalyzerDiagnostics(!0),f=n.toArray(c).filter((function(u){var d,e=a&&"Warning"===u.Severity||r&&"Suggestion"===u.Severity,t=!(null!==(d=n._languageSettings.disabledDiagnosticCodes)&&void 0!==d&&d.includes(u.Code));return e&&t}));d=d.concat(f)}return d})).reduce((function(u,d){return u.concat(d)}),[]),f=this.toLsDiagnostics(c,u);return Promise.resolve(f)}},{key:"getApplyCodeActions",value:function(u,d,e){for(var t=this.parseDocumentV2(u),n=this.getAffectedBlocks(this.toArray(t.Blocks),[{start:d,end:e}])[0].Service.GetCodeActions(d,d,0,null,!0,null,new Kusto.Language.Utils.CancellationToken),a=this.toArray(n.Actions),r=[],c=0;c<a.length;c++)r.push.apply(r,du(this.flattenCodeActions(a[c],null)));return r}},{key:"getResultActions",value:function(u,d,e){var t=this,n=this.parseDocumentV2(u),a=this.getAffectedBlocks(this.toArray(n.Blocks),[{start:d,end:e}])[0],r=this.getApplyCodeActions(u,d,e).map((function(u){var e=[],n=t.toArray(a.Service.ApplyCodeAction(u,d).Actions).find((function(u){return u instanceof Kusto.Language.Editor.ChangeTextAction}));return n&&(e=t.toArray(n.Changes).map((function(u){return{start:u.Start+a.Start,deleteLength:u.DeleteLength,insertText:u.InsertText}}))),{title:u.Title,changes:e,kind:u.Kind}})).filter((function(u){return u.changes.length}));return Promise.resolve(r)}},{key:"transformCodeActionTitle",value:function(u,d){var e=u;switch(e){case"Apply":e="Apply once";break;case"Fix All":e="Apply to all";break;case"Extract Value":e="Extract value"}if(d){var t=d.charAt(0).toUpperCase()+d.slice(1);e="".concat(e," (").concat(t,")")}return e}},{key:"flattenCodeActions",value:function(u,d){var e=[];if(u instanceof su.ApplyAction)u.Title=this.transformCodeActionTitle(u.Title,d),e.push(u);else if(u instanceof su.MenuAction)for(var t=this.toArray(u.Actions),n=0;n<t.length;n++)e.push.apply(e,du(this.flattenCodeActions(t[n],u.Title)));return e}},{key:"toLsDiagnostics",value:function(u,e){return u.filter((function(u){return u.HasLocation})).map((function(u){var t,n=e.positionAt(u.Start),a=e.positionAt(u.Start+u.Length),r=d.Range.create(n,a);switch(u.Severity){case"Suggestion":t=d.DiagnosticSeverity.Information;break;case"Warning":t=d.DiagnosticSeverity.Warning;break;default:t=d.DiagnosticSeverity.Error}return d.Diagnostic.create(r,u.Message,t,u.Code)}))}},{key:"getClassifications",value:(t=X().mark((function u(d){var e,t,n,a=this;return X().wrap((function(u){for(;;)switch(u.prev=u.next){case 0:return e=this.parseDocumentV2(d),t=this.toArray(e.Blocks),n=t.map((function(u){var d=u.Service.GetClassifications(u.Start,u.Length).Classifications;return a.toArray(d)})),u.abrupt("return",n.flatMap((function(u){return u.map((function(u){var e=d.positionAt(u.Start);return{line:e.line,character:e.character,length:u.Length,kind:u.Kind}}))})));case 4:case"end":return u.stop()}}),u,this)})),n=function(){var u=this,d=arguments;return new Promise((function(e,n){var a=t.apply(u,d);function r(u){uu(a,e,n,r,c,"next",u)}function c(u){uu(a,e,n,r,c,"throw",u)}r(void 0)}))},function(u){return n.apply(this,arguments)})},{key:"getAffectedBlocks",value:function(u,d){return u.filter((function(u){return!!u&&d.some((function(d){var e=d.start,t=d.end;return u.Start>=e&&u.Start<=t||e>=u.Start&&e<=u.End+1}))}))}},{key:"addClusterToSchema",value:function(u,d,e){var t=Kusto.Language.KustoFacts.GetHostName(d),n=this._kustoJsSchemaV2.GetCluster$1(t);if(n&&e.filter((function(u){var d=u.name;return!n.GetDatabase(d)})).forEach((function(u){var d=u.name,e=u.alternativeName,t=new Du.DatabaseSymbol.$ctor3(d,e||null,void 0,!1);n=n.AddDatabase(t)})),!n){var a=e.map((function(u){var d=u.name,e=u.alternativeName;return new Du.DatabaseSymbol.$ctor3(d,e||null,void 0,!1)})),r=new(bu(Du.DatabaseSymbol).$ctor1)(a);n=new Du.ClusterSymbol.$ctor1(t,r,!1)}return this._kustoJsSchemaV2=this._kustoJsSchemaV2.AddOrReplaceCluster(n),this._script=su.CodeScript.From$1(u.getText(),this._kustoJsSchemaV2),Promise.resolve()}},{key:"addDatabaseToSchema",value:function(d,e,t){var n=Kusto.Language.KustoFacts.GetHostName(e),a=this._kustoJsSchemaV2.GetCluster$1(n);a||(a=new Du.ClusterSymbol.$ctor1(n,null,!1));var r=u.convertToDatabaseSymbol(t);return a=a.AddOrUpdateDatabase(r),this._kustoJsSchemaV2=this._kustoJsSchemaV2.AddOrReplaceCluster(a),this._script=su.CodeScript.From$1(d.getText(),this._kustoJsSchemaV2),Promise.resolve()}},{key:"setSchema",value:function(d){if(this._schema=d,d&&"Engine"===d.clusterType){var e=this.convertToKustoJsSchemaV2(d);this._kustoJsSchemaV2=e,this._script=void 0,this._parsePropertiesV2=void 0}var t=d?u.convertToKustoJsSchema(d):void 0;return this._kustoJsSchema=t,this.createRulesProvider(t,d.clusterType),Promise.resolve()}},{key:"setParameters",value:function(d,e){var t;if("Engine"!==this._schema.clusterType)throw new Error("setParameters requires intellisense V2 and Engine cluster");this._schema.globalScalarParameters=d,this._schema.globalTabularParameters=e;var n=d.map((function(d){return u.createParameterSymbol(d)})),a=e.map((function(d){return u.createTabularParameterSymbol(d)}));this._kustoJsSchemaV2=this._kustoJsSchemaV2.WithParameters(u.toBridgeList([].concat(du(n),du(a)))),this._script=null===(t=this._script)||void 0===t?void 0:t.WithGlobals(this._kustoJsSchemaV2);var r=u.convertToKustoJsSchema(this._schema);return this._kustoJsSchema=r,this.createRulesProvider(r,this._schema.clusterType),Promise.resolve(void 0)}},{key:"setSchemaFromShowSchema",value:function(u,d,e,t,n,a){var r=this._normalizeSchema(u,d,e,a);return this.setSchema(q(q({},r),{},{globalScalarParameters:t,globalTabularParameters:n}))}},{key:"_normalizeSchema",value:function(u,d,e,t){var n=Object.keys(u.Databases).map((function(d){return u.Databases[d]})).map((function(u){var d,e=u.Name,n=u.Tables,a=u.ExternalTables,r=u.MaterializedViews,c=u.Functions,f=u.EntityGroups,o=void 0===f?{}:f,i=u.MinorVersion,l=u.MajorVersion;return{name:e,alternateName:t,minorVersion:i,majorVersion:l,entityGroups:Object.entries(o).map((function(u){var d=Z(u,2);return{name:d[0],members:d[1]}})),tables:(d=[]).concat.apply(d,du([[n,"Table"],[r,"MaterializedView"],[a,"ExternalTable"]].filter((function(u){return Z(u,1)[0]})).map((function(u){var d=Z(u,2),e=d[0],t=d[1];return Object.values(e).map((function(u){var d=u.Name,e=u.OrderedColumns;return{name:d,docstring:u.DocString,entityType:t,columns:e.map((function(u){var d=u.Name;u.Type;var e=u.DocString;return{name:d,type:u.CslType,docstring:e,examples:u.Examples}}))}}))})))),functions:Object.keys(c).map((function(u){return c[u]})).map((function(u){return{name:u.Name,body:u.Body,docstring:u.DocString,inputParameters:u.InputParameters.map((function(u){return{name:u.Name,type:u.Type,cslType:u.CslType,cslDefaultValue:u.CslDefaultValue,columns:u.Columns?u.Columns.map((function(u){return{name:u.Name,type:u.Type,cslType:u.CslType}})):u.Columns}}))}}))}}));return{clusterType:"Engine",cluster:{connectionString:d,databases:n},database:n.filter((function(u){return u.name===e}))[0]}}},{key:"normalizeSchema",value:function(u,d,e,t){return Promise.resolve(this._normalizeSchema(u,d,e,t))}},{key:"getSchema",value:function(){return Promise.resolve(this._schema)}},{key:"getCommandInContext",value:function(u,d){return this.getCommandInContextV2(u,d)}},{key:"getCommandAndLocationInContext",value:function(u,e){if(!u)return Promise.resolve(null);var t=this.parseDocumentV2(u),n=this.getCurrentCommandV2(t,e);if(!n)return Promise.resolve(null);var a=u.positionAt(n.Start),r=u.positionAt(n.End),c=d.Location.create(u.uri,d.Range.create(a,r)),f=n.Text;return Promise.resolve({text:f,location:c})}},{key:"getCommandInContextV2",value:function(u,d){if(!u)return Promise.resolve(null);var e=this.parseDocumentV2(u),t=this.getCurrentCommandV2(e,d);return t?Promise.resolve(t.Text):Promise.resolve(null)}},{key:"getCommandsInDocument",value:function(u){return u?this.getCommandsInDocumentV2(u):Promise.resolve([])}},{key:"getCommandsInDocumentV1",value:function(u){this.parseDocumentV1(u,iu.ParseMode.CommandTokensOnly);var d=this.toArray(this._parser.Results);return Promise.resolve(d.map((function(u){return{absoluteStart:u.AbsoluteStart,absoluteEnd:u.AbsoluteEnd,text:u.Text}})))}},{key:"toPlacementStyle",value:function(u){if(u)switch(u){case"None":return su.PlacementStyle.None;case"NewLine":return su.PlacementStyle.NewLine;case"Smart":return su.PlacementStyle.Smart;default:throw new Error("Unknown PlacementStyle")}}},{key:"getFormattedCommandsInDocumentV2",value:function(u,d,e){var t=this,n=this.parseDocumentV2(u),a=this.toArray(n.Blocks).filter((function(u){if(!u.Text||""==u.Text.trim())return!1;if(null==d||null==e)return!0;for(var t=u.End,n=u.Text,a=n.length-1;a>=0&&("\r"==n[a]||"\n"==n[a]);a--)t--;return u.Start>d&&u.Start<e||(t>d&&t<e||(u.Start<=d&&t>=e||void 0))}));return 0===a.length?{formattedCommands:[]}:{formattedCommands:a.map((function(u){var n,a,r=t._languageSettings.formatter,c=Kusto.Language.Editor.FormattingOptions.Default.WithIndentationSize(null!==(n=null==r?void 0:r.indentationSize)&&void 0!==n?n:4).WithInsertMissingTokens(!1).WithPipeOperatorStyle(null!==(a=t.toPlacementStyle(null==r?void 0:r.pipeOperatorStyle))&&void 0!==a?a:su.PlacementStyle.Smart).WithSemicolonStyle(Kusto.Language.Editor.PlacementStyle.None).WithBrackettingStyle(su.BrackettingStyle.Diagonal);return null==d||null==e||d===u.Start&&u.End,u.Service.GetFormattedText(c).Text})),originalRange:this.createRange(u,a[0].Start,a[a.length-1].End)}}},{key:"getCommandsInDocumentV2",value:function(u){var d=this.parseDocumentV2(u),e=this.toArray(d.Blocks).filter((function(u){return""!=u.Text.trim()}));return Promise.resolve(e.map((function(u){return{absoluteStart:u.Start,absoluteEnd:u.End,text:u.Text}})))}},{key:"getClientDirective",value:function(u){var d={v:null},e=iu.CslCommandParser.IsClientDirective(u,d);return Promise.resolve({isClientDirective:e,directiveWithoutLeadingComments:d.v})}},{key:"getAdminCommand",value:function(u){var d={v:null},e=iu.CslCommandParser.IsAdminCommand$1(u,d);return Promise.resolve({isAdminCommand:e,adminCommandWithoutLeadingComments:d.v})}},{key:"findDefinition",value:function(u,e){if(!u)return Promise.resolve([]);var t=this.parseDocumentV2(u),n=u.offsetAt(e),a=this.getCurrentCommandV2(t,n);if(!a)return Promise.resolve([]);var r=a.Service.GetRelatedElements(u.offsetAt(e)),c=this.toArray(r.Elements)[0];if(!c)return Promise.resolve([]);var f=u.positionAt(c.Start),o=u.positionAt(c.End),i=d.Range.create(f,o),l=d.Location.create(u.uri,i);return Promise.resolve([l])}},{key:"findReferences",value:function(u,e){if(!u)return Promise.resolve([]);var t=this.parseDocumentV2(u),n=u.offsetAt(e),a=this.getCurrentCommandV2(t,n);if(!a)return Promise.resolve([]);var r=a.Service.GetRelatedElements(u.offsetAt(e)),c=this.toArray(r.Elements);if(!c||0==c.length)return Promise.resolve([]);var f=c.map((function(e){var t=u.positionAt(e.Start),n=u.positionAt(e.End),a=d.Range.create(t,n);return d.Location.create(u.uri,a)}));return Promise.resolve(f)}},{key:"getQueryParams",value:function(u,d){if(!u)return Promise.resolve([]);var e=this.parseAndAnalyze(u,d),t=this.toArray(e.Syntax.GetDescendants(Kusto.Language.Syntax.QueryParametersStatement));if(!t||0==t.length)return Promise.resolve([]);var n=[];return t.forEach((function(u){u.WalkElements((function(u){return u.ReferencedSymbol&&u.ReferencedSymbol.Type?n.push({name:u.ReferencedSymbol.Name,type:u.ReferencedSymbol.Type.Name}):void 0}))})),Promise.resolve(n)}},{key:"getRenderInfo",value:function(u,d){var e=this,t=this.parseAndAnalyze(u,d);if(!t)return Promise.resolve(void 0);var n=this.toArray(t.Syntax.GetDescendants(Kusto.Language.Syntax.RenderOperator));if(!n||0===n.length)return Promise.resolve(void 0);var a=n[0],r=a.TextStart,c=a.End,f=a.ChartType.ValueText,o=a.WithClause;if(!o){var i={options:{visualization:f},location:{startOffset:r,endOffset:c}};return Promise.resolve(i)}var l={options:q({visualization:f},this.toArray(o.Properties).reduce((function(u,d){var t=d.Element$1.Name.SimpleName;switch(t){case"xcolumn":var n=d.Element$1.Expression.ReferencedSymbol.Name;u[t]=n;break;case"ycolumns":case"anomalycolumns":var a=e.toArray(d.Element$1.Expression.Names).map((function(u){return u.Element$1.SimpleName}));u[t]=a;break;case"ymin":case"ymax":var r=parseFloat(d.Element$1.Expression.ConstantValue);u[t]=r;break;case"title":case"xtitle":case"ytitle":case"visualization":case"series":var c=d.Element$1.Expression.ConstantValue;u[t]=c;break;case"xaxis":case"yaxis":var f=d.Element$1.Expression.ConstantValue;u[t]=f;break;case"legend":var o=d.Element$1.Expression.ConstantValue;u[t]=o;break;case"ysplit":var i=d.Element$1.Expression.ConstantValue;u[t]=i;break;case"accumulate":var l=d.Element$1.Expression.ConstantValue;u[t]=l;break;case"kind":var s=d.Element$1.Expression.ConstantValue;u[t]=s;break;default:Cu(t)}return u}),{})),location:{startOffset:r,endOffset:c}};return Promise.resolve(l)}},{key:"getReferencedSymbols",value:function(u,d){var e=this.parseAndAnalyze(u,d);e||Promise.resolve([]);var t=this.toArray(e.Syntax.GetDescendants(Kusto.Language.Syntax.Expression)).filter((function(u){return null!==u.ReferencedSymbol})).map((function(u){return u.ReferencedSymbol})).map((function(u){var d;return{name:u.Name,kind:null!==(d=hu[u.Kind])&&void 0!==d?d:"".concat(u.Kind),display:"".concat(u.Name," (").concat(u.AlternateName,")")}}));return Promise.resolve(t)}},{key:"getReferencedGlobalParams",value:function(u,d){var e=this.parseAndAnalyze(u,d);e||Promise.resolve([]);var t=this.toArray(this._kustoJsSchemaV2.Parameters),n=this.toArray(e.Syntax.GetDescendants(Kusto.Language.Syntax.Expression)).filter((function(u){return null!==u.ReferencedSymbol})).map((function(u){return u.ReferencedSymbol})).filter((function(u){return t.filter((function(d){return d===u})).length>0})).map((function(u){return{name:u.Name,type:u.Type.Name}}));return Promise.resolve(n)}},{key:"getGlobalParams",value:function(u){var d=this.toArray(this._kustoJsSchemaV2.Parameters).map((function(u){return{name:u.Name,type:u.Type.Name}}));return Promise.resolve(d)}},{key:"doRename",value:function(u,e,t){if(!u)return Promise.resolve(void 0);var n=this.parseDocumentV2(u),a=u.offsetAt(e),r=this.getCurrentCommandV2(n,a);if(!r)return Promise.resolve(void 0);var c=r.Service.GetRelatedElements(u.offsetAt(e)),f=this.toArray(c.Elements),o=f.filter((function(u){return u.Kind==su.RelatedElementKind.Declaration}));if(!o||0==o.length)return Promise.resolve(void 0);var i=f.map((function(e){var n=u.positionAt(e.Start),a=u.positionAt(e.End),r=d.Range.create(n,a);return d.TextEdit.replace(r,t)})),l={changes:nu({},u.uri,i)};return Promise.resolve(l)}},{key:"doHover",value:function(u,d){if(!u)return Promise.resolve(void 0);var e=this.parseDocumentV2(u),t=u.offsetAt(d),n=this.getCurrentCommandV2(e,t);if(!n)return Promise.resolve(void 0);if(!n.Service.IsFeatureSupported(su.CodeServiceFeatures.QuickInfo,t))return Promise.resolve(void 0);var a=n.Service.GetQuickInfo(t);if(!a||!a.Items)return Promise.resolve(void 0);var r=this.toArray(a.Items);if(!r)return Promise.resolve(void 0);var c=(r=r.filter((function(u){return u.Kind!==su.QuickInfoKind.Error&&u.Kind!==su.QuickInfoKind.Suggestion&&u.Kind!==su.QuickInfoKind.Warning}))).map((function(u){return u.Text.replace("\n\n","\n* * *\n")})).join("\n* * *\n");return Promise.resolve({contents:c})}},{key:"convertToKustoJsSchemaV2",value:function(d){var e,t,n=this._schemaCache[d.cluster.connectionString];n||(this._schemaCache[d.cluster.connectionString]={},n=this._schemaCache[d.cluster.connectionString]);var a=d.cluster.databases.reduce((function(u,d){return u[d.name]=d}),{});Object.keys(n).map((function(u){a[u]||delete n.dbName}));var r=mu.Default,c=d.database?d.database.name:void 0,f=void 0,o=d.cluster.databases.map((function(d){var e=d.name===c,t=n[d.name];if(!t||t.database.majorVersion<d.majorVersion||e&&!t.includesFunctions){var a=u.convertToDatabaseSymbol(d);n[d.name]={database:d,symbol:a,includesFunctions:e}}var r=n[d.name].symbol;return d.name===c&&(f=r),r})),i=d.cluster.connectionString.match(/(.*\/\/)?([^\/;]*)/)[2],l=i.split(i.includes(".kusto")?".kusto":".")[0],s=new Du.ClusterSymbol.ctor(l,o);r=r.WithCluster(s),f&&(r=r.WithDatabase(f));var D=(null!==(e=d.globalScalarParameters)&&void 0!==e?e:[]).map((function(d){return u.createParameterSymbol(d)})),m=(null!==(t=d.globalTabularParameters)&&void 0!==t?t:[]).map((function(d){return u.createTabularParameterSymbol(d)}));return(m.length||D.length)&&(r=r.WithParameters(u.toBridgeList([].concat(du(D),du(m))))),r}},{key:"getClassificationsFromParseResult",value:function(){var u=this,d=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.toArray(this._parser.Results).map((function(d){return u.toArray(d.Tokens)})).reduce((function(u,d){return u.concat(d)}),[]).map((function(e){return new su.ClassifiedRange(u.tokenKindToClassificationKind(e.TokenKind),e.AbsoluteStart+d,e.Length)}))}},{key:"parseTextV1",value:function(u,d){this._parser.Parse("Engine"===this._schema.clusterType?this._rulesProvider:null,u,d)}},{key:"parseDocumentV1",value:function(u,d){this._parsePropertiesV1&&!this._parsePropertiesV1.isParseNeeded(u,this._rulesProvider,d)||(this.parseTextV1(u.getText(),d),this._parsePropertiesV1=new pu(u.version,u.uri,this._rulesProvider,d))}},{key:"parseDocumentV2",value:function(u){return this._parsePropertiesV2&&!this._parsePropertiesV2.isParseNeeded(u,this._rulesProvider)||(this._script?this._script=this._script.WithText(u.getText()):this._script=su.CodeScript.From$1(u.getText(),this._kustoJsSchemaV2),this._parsePropertiesV2=new pu(u.version,u.uri)),this._script}},{key:"getCurrentCommand",value:function(u,d){var e=this.toArray(this._parser.Results),t=e.filter((function(u){return u.AbsoluteStart<=d&&u.AbsoluteEnd>=d}))[0];return t||(t=e.filter((function(u){return u.AbsoluteStart<=d&&u.AbsoluteEnd+1>=d}))[0])&&!t.Text.endsWith("\r\n\r\n")?t:null}},{key:"getCurrentCommandV2",value:function(u,d){return u.GetBlockAtPosition(d)}},{key:"getTextToInsert",value:function(u,e){var t=u.GetBeforeApplyInfo(e.Value),n=u.GetAfterApplyInfo(e.Value),a=t.Text||""+e.Value+n.Text||"",r=d.InsertTextFormat.PlainText;if(n.OffsetToken&&n.OffsetPosition){var c=a.indexOf(n.OffsetToken);c>=0&&(a=this.insertToString(a,"$0",c-a.length+n.OffsetPosition),r=d.InsertTextFormat.Snippet)}else n.OffsetPosition&&(a=this.insertToString(a,"$0",n.OffsetPosition),r=d.InsertTextFormat.Snippet);return{insertText:a,insertTextFormat:r}}},{key:"insertToString",value:function(u,d,e){var t=u.length+e;return e>=0||t<0?u:u.substring(0,t)+d+u.substring(t)}},{key:"getCommandWithoutLastWord",value:function(u){var d=G("[\\w_]*$","s");return u.replace(d,"")}},{key:"createRulesProvider",value:function(u,d){var e=new(bu(String)),t=new(bu(String));if(this._parser=new iu.CslCommandParser,"Engine"!=d)if("DataManagement"!==d){var n=u,a=n.accounts,r=n.services,c=n.connectionString;new iu.KustoIntelliSenseAccountEntity,new iu.KustoIntelliSenseServiceEntity,this._rulesProvider=new iu.ClusterManagerIntelliSenseRulesProvider.$ctor1(new Bridge.ArrayEnumerable(a),new Bridge.ArrayEnumerable(r),c)}else this._rulesProvider=new iu.DataManagerIntelliSenseRulesProvider(null);else{var f=u;this._rulesProvider=this._languageSettings&&this._languageSettings.includeControlCommands?new iu.CslIntelliSenseRulesProvider.$ctor1(f.Cluster,f,e,t,null,!0,!0):new iu.CslQueryIntelliSenseRulesProvider.$ctor1(f.Cluster,f,e,t,null,null,null)}}},{key:"kustoKindToLsKind",value:function(u){var e=this._kustoKindtolsKind[u];return e||d.CompletionItemKind.Variable}},{key:"kustoKindToLsKindV2",value:function(u){var e=this._kustoKindToLsKindV2[u];return e||d.CompletionItemKind.Variable}},{key:"createRange",value:function(u,e,t){return d.Range.create(u.positionAt(e),u.positionAt(t))}},{key:"toArray",value:function(u){return Bridge.toArray(u)}},{key:"tokenKindToClassificationKind",value:function(u){return this._tokenKindToClassificationKind[u]||su.ClassificationKind.PlainText}},{key:"parseAndAnalyze",value:function(u,d){if(u){var e=this.parseDocumentV2(u),t=e.Text;if(void 0!==d){var n=this.getCurrentCommandV2(e,d);if(!n)return;t=n.Text}return Kusto.Language.KustoCode.ParseAndAnalyze(t,this._kustoJsSchemaV2)}}}],[{key:"dummySchema",get:function(){return{clusterType:"Engine",cluster:{connectionString:"",databases:[]},database:void 0}}},{key:"convertToEntityDataType",value:function(u){}},{key:"convertToKustoJsSchema",value:function(u){switch(u.clusterType){case"Engine":var d=u.database?u.database.name:void 0,t=new iu.KustoIntelliSenseClusterEntity,n=void 0;t.ConnectionString=u.cluster.connectionString;var a=[];return u.cluster.databases.forEach((function(u){var t=new iu.KustoIntelliSenseDatabaseEntity;t.Name=u.name;var r=[];u.tables.forEach((function(u){var d=new iu.KustoIntelliSenseTableEntity;d.Name=u.name;var t=[];u.columns.forEach((function(u){var d=new iu.KustoIntelliSenseColumnEntity;d.Name=u.name,d.TypeCode=iu.EntityDataType[e.getEntityDataTypeFromCslType(u.type)],t.push(d)})),d.Columns=new Bridge.ArrayEnumerable(t),r.push(d)}));var c=[];u.functions.forEach((function(u){var d=new iu.KustoIntelliSenseFunctionEntity;d.Name=u.name,d.CallName=e.getCallName(u),d.Expression=e.getExpression(u),c.push(d)})),t.Tables=new Bridge.ArrayEnumerable(r),t.Functions=new Bridge.ArrayEnumerable(c),a.push(t),u.name==d&&(n=t)})),t.Databases=new Bridge.ArrayEnumerable(a),new iu.KustoIntelliSenseQuerySchema(t,n);case"ClusterManager":return{accounts:u.accounts.map((function(u){var d=new iu.KustoIntelliSenseAccountEntity;return d.Name=u,d})),services:u.services.map((function(u){var d=new iu.KustoIntelliSenseServiceEntity;return d.Name=u,d})),connectionString:u.connectionString};case"DataManagement":return;default:return Cu(u)}}},{key:"scalarParametersToSignature",value:function(u){var d=u.map((function(u){return"".concat(u.name,": ").concat(u.cslType)})).join(", ");return"(".concat(d,")")}},{key:"inputParameterToSignature",value:function(u){var d=this,e=u.map((function(u){if(u.columns){var e=d.scalarParametersToSignature(u.columns);return"".concat(u.name,": ").concat(e)}return"".concat(u.name,": ").concat(u.cslType)})).join(", ");return"(".concat(e,")")}},{key:"toLetStatement",value:function(u){var d=this.inputParameterToSignature(u.inputParameters);return"let ".concat(u.name," = ").concat(d," ").concat(u.body)}},{key:"createColumnSymbol",value:function(d){return new Du.ColumnSymbol(d.name,Du.ScalarTypes.GetSymbol(e.getCslTypeNameFromClrType(d.type)),d.docstring,null,null,d.examples?u.toBridgeList(d.examples):null)}},{key:"createParameterSymbol",value:function(u){var d,t=Kusto.Language.Symbols.ScalarTypes.GetSymbol(e.getCslTypeNameFromClrType(u.type));return new Du.ParameterSymbol(u.name,t,null!==(d=u.docstring)&&void 0!==d?d:null)}},{key:"createTabularParameterSymbol",value:function(d){var e=d.columns.map((function(d){return u.createColumnSymbol(d)})),t=new Kusto.Language.Symbols.TableSymbol.$ctor4(d.name,e);return new Du.ParameterSymbol(d.name,t,d.docstring)}},{key:"createParameter",value:function(d){if(!d.columns){var t,n=Kusto.Language.Symbols.ScalarTypes.GetSymbol(e.getCslTypeNameFromClrType(d.type)),a=d.cslDefaultValue&&"string"==typeof d.cslDefaultValue?lu.QueryParser.ParseLiteral$1(d.cslDefaultValue):void 0;return new Du.Parameter.$ctor3(d.name,n,null,null,d.examples?u.toBridgeList(d.examples):null,!1,null,1,1,a,null!==(t=d.docstring)&&void 0!==t?t:null)}if(0==d.columns.length)return new Du.Parameter.ctor(d.name,Du.ParameterTypeKind.Tabular,Du.ArgumentKind.Expression,null,null,!1,null,1,1,null,null);var r=new Du.TableSymbol.ctor(d.columns.map((function(d){return u.createColumnSymbol(d)})));return new Du.Parameter.$ctor2(d.name,r)}},{key:"convertToDatabaseSymbol",value:function(u){var d=(u.tables||[]).map(this.createTableSymbol),e=(u.functions||[]).map(this.createFunctionSymbol),t=(u.entityGroups||[]).map(this.createEntityGroupSymbol);return new Du.DatabaseSymbol.$ctor2(u.name,u.alternateName||null,d.concat(e).concat(t))}},{key:"trimTrailingNewlineFromRange",value:function(u,e,t,n){for(var a=u.length-1;"\r"===u[a]||"\n"===u[a];)--a;var r=e+a+1,c=t.positionAt(r);return d.Range.create(n.start,c)}},{key:"toBridgeList",value:function(u){return new(System.Collections.Generic.List$1(System.Object).$ctor1)(u)}},{key:"createFunctionSymbol",value:function(d){var e=d.inputParameters.map((function(d){return u.createParameter(d)}));return new Du.FunctionSymbol.$ctor14(d.name,d.body,u.toBridgeList(e),d.docstring)}},{key:"createTableSymbol",value:function(d){var e,t=d.name,n=d.columns,a=d.entityType,r=d.docstring,c=function(u,d){if(null==u)return{};var e,t,n=function(u,d){if(null==u)return{};var e={};for(var t in u)if({}.hasOwnProperty.call(u,t)){if(d.indexOf(t)>=0)continue;e[t]=u[t]}return e}(u,d);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(u);for(t=0;t<a.length;t++)e=a[t],d.indexOf(e)>=0||{}.propertyIsEnumerable.call(u,e)&&(n[e]=u[e])}return n}(d,H),f=new Bridge.ArrayEnumerable(n.map((function(d){return u.createColumnSymbol(d)})));switch(a){case"MaterializedViewTable":var o=null!==(e=c.mvQuery)&&void 0!==e?e:null;return new Du.MaterializedViewSymbol.$ctor2(t,f,o,r);case"ExternalTable":return new Du.ExternalTableSymbol.$ctor3(t,f,r);default:return new Du.TableSymbol.$ctor6(t,f,r)}}},{key:"createEntityGroupSymbol",value:function(u){return new Du.EntityGroupSymbol.$ctor3(u.name,u.members.join(),null)}}]);var t,n}(),Eu=new Au(Au.dummySchema,{includeControlCommands:!0,completionOptions:{includeExtendedSyntax:!1}});function vu(u){return vu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(u){return typeof u}:function(u){return u&&"function"==typeof Symbol&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u},vu(u)}function gu(u,d){var e="undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(!e){if(Array.isArray(u)||(e=function(u,d){if(u){if("string"==typeof u)return yu(u,d);var e={}.toString.call(u).slice(8,-1);return"Object"===e&&u.constructor&&(e=u.constructor.name),"Map"===e||"Set"===e?Array.from(u):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?yu(u,d):void 0}}(u))||d&&u&&"number"==typeof u.length){e&&(u=e);var t=0,n=function(){};return{s:n,n:function(){return t>=u.length?{done:!0}:{done:!1,value:u[t++]}},e:function(u){throw u},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,r=!0,c=!1;return{s:function(){e=e.call(u)},n:function(){var u=e.next();return r=u.done,u},e:function(u){c=!0,a=u},f:function(){try{r||null==e.return||e.return()}finally{if(c)throw a}}}}function yu(u,d){(null==d||d>u.length)&&(d=u.length);for(var e=0,t=Array(d);e<d;e++)t[e]=u[e];return t}function Su(u,d){for(var e=0;e<d.length;e++){var t=d[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(u,Bu(t.key),t)}}function Bu(u){var d=function(u,d){if("object"!=vu(u)||!u)return u;var e=u[Symbol.toPrimitive];if(void 0!==e){var t=e.call(u,d||"default");if("object"!=vu(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===d?String:Number)(u)}(u,"string");return"symbol"==vu(d)?d:d+""}var ku=function(){return u=function u(d,e){!function(u,d){if(!(u instanceof d))throw new TypeError("Cannot call a class as a function")}(this,u),this._ctx=d,this._languageSettings=e.languageSettings,this._languageService=Eu,this._languageService.configure(this._languageSettings)},e=[{key:"setSchema",value:function(u){return this._languageService.setSchema(u)}},{key:"addClusterToSchema",value:function(u,d,e){var t=this._getTextDocument(u);return t?this._languageService.addClusterToSchema(t,d,e):(console.error("addClusterToSchema: document is ".concat(t,". uri is ").concat(u)),Promise.resolve())}},{key:"addDatabaseToSchema",value:function(u,d,e){var t=this._getTextDocument(u);return t?this._languageService.addDatabaseToSchema(t,d,e):(console.error("addDatabaseToSchema: document is ".concat(t,". uri is ").concat(u)),Promise.resolve())}},{key:"setSchemaFromShowSchema",value:function(u,d,e){return this._languageService.setSchemaFromShowSchema(u,d,e)}},{key:"normalizeSchema",value:function(u,d,e){return this._languageService.normalizeSchema(u,d,e)}},{key:"getSchema",value:function(){return this._languageService.getSchema()}},{key:"getCommandInContext",value:function(u,d){var e=this._getTextDocument(u);if(!e)return console.error("getCommandInContext: document is ".concat(e,". uri is ").concat(u)),null;var t=this._languageService.getCommandInContext(e,d);return void 0===t?null:t}},{key:"getQueryParams",value:function(u,d){var e=this._getTextDocument(u);if(!e)return console.error("getQueryParams: document is ".concat(e,". uri is ").concat(u)),null;var t=this._languageService.getQueryParams(e,d);return void 0===t?null:t}},{key:"getGlobalParams",value:function(u){var d=this._getTextDocument(u);if(!d)return console.error("getGLobalParams: document is ".concat(d,". uri is ").concat(u)),null;var e=this._languageService.getGlobalParams(d);return void 0===e?null:e}},{key:"getReferencedSymbols",value:function(u,d){var e=this._getTextDocument(u);if(!e)return console.error("getReferencedGlobalParams: document is ".concat(e,". uri is ").concat(u)),null;var t=this._languageService.getReferencedSymbols(e,d);return void 0===t?null:t}},{key:"getReferencedGlobalParams",value:function(u,d){var e=this._getTextDocument(u);if(!e)return console.error("getReferencedGlobalParams: document is ".concat(e,". uri is ").concat(u)),null;var t=this._languageService.getReferencedGlobalParams(e,d);return void 0===t?null:t}},{key:"getRenderInfo",value:function(u,d){var e=this._getTextDocument(u);return e||console.error("getRenderInfo: document is ".concat(e,". uri is ").concat(u)),this._languageService.getRenderInfo(e,d).then((function(u){return u||null}))}},{key:"getCommandAndLocationInContext",value:function(u,d){var e=this._getTextDocument(u);return e?this._languageService.getCommandAndLocationInContext(e,d).then((function(u){if(!u)return null;var d=u.text,e=u.location.range,t=e.start,n=e.end;return{range:{startLineNumber:t.line+1,startColumn:t.character+1,endLineNumber:n.line+1,endColumn:n.character+1},text:d}})):(console.error("getCommandAndLocationInContext: document is ".concat(e,". uri is ").concat(u)),Promise.resolve(null))}},{key:"getCommandsInDocument",value:function(u){var d=this._getTextDocument(u);return d?this._languageService.getCommandsInDocument(d):(console.error("getCommandInDocument: document is ".concat(d,". uri is ").concat(u)),null)}},{key:"doComplete",value:function(u,d){var e=this._getTextDocument(u);return e?this._languageService.doComplete(e,d):null}},{key:"doValidation",value:function(u,d,e,t){var n=this._getTextDocument(u);return this._languageService.doValidation(n,d,e,t)}},{key:"getResultActions",value:function(u,d,e){var t=this._getTextDocument(u);return this._languageService.getResultActions(t,d,e)}},{key:"doRangeFormat",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.doRangeFormat(e,d)}},{key:"doFolding",value:function(u){var d=this._getTextDocument(u);return this._languageService.doFolding(d)}},{key:"doDocumentFormat",value:function(u){var d=this._getTextDocument(u);return this._languageService.doDocumentFormat(d)}},{key:"doCurrentCommandFormat",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.doCurrentCommandFormat(e,d)}},{key:"getClassifications",value:function(u){var d=this._getTextDocument(u);return this._languageService.getClassifications(d)}},{key:"getClientDirective",value:function(u){return this._languageService.getClientDirective(u)}},{key:"getAdminCommand",value:function(u){return this._languageService.getAdminCommand(u)}},{key:"findDefinition",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.findDefinition(e,d)}},{key:"findReferences",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.findReferences(e,d)}},{key:"doRename",value:function(u,d,e){var t=this._getTextDocument(u);return this._languageService.doRename(t,d,e)}},{key:"doHover",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.doHover(e,d)}},{key:"setParameters",value:function(u,d){return this._languageService.setParameters(u,d)}},{key:"getClusterReferences",value:function(u,d){var e=this._getTextDocument(u);return e?this._languageService.getClusterReferences(e,d):Promise.resolve(null)}},{key:"getDatabaseReferences",value:function(u,d){var e=this._getTextDocument(u);return e?this._languageService.getDatabaseReferences(e,d):Promise.resolve(null)}},{key:"_getTextDocument",value:function(u){var e,t=gu(this._ctx.getMirrorModels());try{for(t.s();!(e=t.n()).done;){var n=e.value;if(n.uri.toString()===u)return d.TextDocument.create(u,this._languageId,n.version,n.getValue())}}catch(u){t.e(u)}finally{t.f()}return null}}],e&&Su(u.prototype,e),t&&Su(u,t),Object.defineProperty(u,"prototype",{writable:!1}),u;var u,e,t}();u.KustoWorkerImpl=ku,u.create=function(u,d){return new ku(u,d)}}));
17
+ */(u)||function(u,d){var e=null==u?null:"undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(null!=e){var t,n,a,r,c=[],f=!0,o=!1;try{if(a=(e=e.call(u)).next,0===d){if(Object(e)!==e)return;f=!1}else for(;!(f=(t=a.call(e)).done)&&(c.push(t.value),c.length!==d);f=!0);}catch(u){o=!0,n=u}finally{try{if(!f&&null!=e.return&&(r=e.return(),Object(r)!==r))return}finally{if(o)throw n}}return c}}(u,d)||M(u,d)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function M(u,d){if(u){if("string"==typeof u)return $(u,d);var e={}.toString.call(u).slice(8,-1);return"Object"===e&&u.constructor&&(e=u.constructor.name),"Map"===e||"Set"===e?Array.from(u):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?$(u,d):void 0}}function $(u,d){(null==d||d>u.length)&&(d=u.length);for(var e=0,t=Array(d);e<d;e++)t[e]=u[e];return t}function U(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}var z=U([{name:"C",alias:"Other",isBmpLast:!0,bmp:"\0--Ÿ­͸͹΀-΃΋΍΢԰՗՘֋֌֐׈-׏׫-׮׵-؅؜۝܎܏݋݌޲-޿߻߼࠮࠯࠿࡜࡝࡟࡫-࡯࢏-ࢗ࣢঄঍঎঑঒঩঱঳-঵঺঻৅৆৉৊৏-৖৘-৛৞৤৥৿਀਄਋-਎਑਒਩਱਴਷਺਻਽੃-੆੉੊੎-੐੒-੘੝੟-੥੷-઀઄઎઒઩઱઴઺઻૆૊૎૏૑-૟૤૥૲-૸଀଄଍଎଑଒଩଱଴଺଻୅୆୉୊୎-୔୘-୛୞୤୥୸-஁஄஋-஍஑஖-஘஛஝஠-஢஥-஧஫-஭஺-஽௃-௅௉௎௏௑-௖௘-௥௻-௿఍఑఩఺఻౅౉౎-౔౗౛౜౞౟౤౥౰-౶಍಑಩಴಺಻೅೉೎-೔೗-೜೟೤೥೰ೳ-೿഍഑൅൉൐-൓൤൥඀඄඗-඙඲඼඾඿෇-෉෋-෎෕෗෠-෥෰෱෵-฀฻-฾๜-຀຃຅຋຤຦຾຿໅໇໎໏໚໛໠-໿཈཭-཰྘྽࿍࿛-࿿჆჈-჌჎჏቉቎቏቗቙቞቟኉኎኏኱኶኷኿዁዆዇዗጑጖጗፛፜፽-፿᎚-᎟᏶᏷᏾᏿᚝-᚟᛹-᛿᜖-᜞᜷-᜿᝔-᝟᝭᝱᝴-᝿៞៟៪-៯៺-៿᠎᠚-᠟᡹-᡿᢫-᢯᣶-᣿᤟᤬-᤯᤼-᤿᥁-᥃᥮᥯᥵-᥿᦬-᦯᧊-᧏᧛-᧝᨜᨝᩟᩽᩾᪊-᪏᪚-᪟᪮᪯᫏-᫿᭍-᭏᭿᯴-᯻᰸-᰺᱊-᱌Ᲊ-᲏᲻᲼᳈-᳏᳻-᳿἖἗἞἟὆὇὎὏὘὚὜὞὾὿᾵῅῔῕῜῰῱῵῿​-‏‪-‮⁠-⁲⁳₏₝-₟⃁-⃏⃱-⃿↌-↏␧-␿⑋-⑟⭴⭵⮖⳴-⳸⴦⴨-⴬⴮⴯⵨-⵮⵱-⵾⶗-⶟⶧⶯⶷⶿⷇⷏⷗⷟⹞-⹿⺚⻴-⻿⿖-⿯⿼-⿿぀゗゘㄀-㄄㄰㆏㇤-㇯㈟꒍-꒏꓇-꓏꘬-꘿꛸-꛿Ɤ-꟏꟒꟔Ꟛ-꟱꠭-꠯꠺-꠿꡸-꡿꣆-꣍꣚-꣟꥔-꥞꥽-꥿꧎꧚-꧝꧿꨷-꨿꩎꩏꩚꩛꫃-꫚꫷-꬀꬇꬈꬏꬐꬗-꬟꬧꬯꭬-꭯꯮꯯꯺-꯿힤-힯퟇-퟊퟼-﩮﩯﫚-﫿﬇-﬒﬘-﬜﬷﬽﬿﭂﭅﯃-﯒﶐﶑﷈-﷎﷐-﷯︚-︟﹓﹧﹬-﹯﹵﻽-＀﾿-￁￈￉￐￑￘￙￝-￟￧￯-￾￿",astral:"\ud800[\udc0c\udc27\udc3b\udc3e\udc4e\udc4f\udc5e-\udc7f\udcfb-\udcff\udd03-\udd06\udd34-\udd36\udd8f\udd9d-\udd9f\udda1-\uddcf\uddfe-\ude7f\ude9d-\ude9f\uded1-\udedf\udefc-\udeff\udf24-\udf2c\udf4b-\udf4f\udf7b-\udf7f\udf9e\udfc4-\udfc7\udfd6-\udfff]|\ud801[\udc9e\udc9f\udcaa-\udcaf\udcd4-\udcd7\udcfc-\udcff\udd28-\udd2f\udd64-\udd6e\udd7b\udd8b\udd93\udd96\udda2\uddb2\uddba\uddbd-\uddff\udf37-\udf3f\udf56-\udf5f\udf68-\udf7f\udf86\udfb1\udfbb-\udfff]|\ud802[\udc06\udc07\udc09\udc36\udc39-\udc3b\udc3d\udc3e\udc56\udc9f-\udca6\udcb0-\udcdf\udcf3\udcf6-\udcfa\udd1c-\udd1e\udd3a-\udd3e\udd40-\udd7f\uddb8-\uddbb\uddd0\uddd1\ude04\ude07-\ude0b\ude14\ude18\ude36\ude37\ude3b-\ude3e\ude49-\ude4f\ude59-\ude5f\udea0-\udebf\udee7-\udeea\udef7-\udeff\udf36-\udf38\udf56\udf57\udf73-\udf77\udf92-\udf98\udf9d-\udfa8\udfb0-\udfff]|\ud803[\udc49-\udc7f\udcb3-\udcbf\udcf3-\udcf9\udd28-\udd2f\udd3a-\ude5f\ude7f\udeaa\udeae\udeaf\udeb2-\udeff\udf28-\udf2f\udf5a-\udf6f\udf8a-\udfaf\udfcc-\udfdf\udff7-\udfff]|\ud804[\udc4e-\udc51\udc76-\udc7e\udcbd\udcc3-\udccf\udce9-\udcef\udcfa-\udcff\udd35\udd48-\udd4f\udd77-\udd7f\udde0\uddf5-\uddff\ude12\ude3f-\ude7f\ude87\ude89\ude8e\ude9e\udeaa-\udeaf\udeeb-\udeef\udefa-\udeff\udf04\udf0d\udf0e\udf11\udf12\udf29\udf31\udf34\udf3a\udf45\udf46\udf49\udf4a\udf4e\udf4f\udf51-\udf56\udf58-\udf5c\udf64\udf65\udf6d-\udf6f\udf75-\udfff]|\ud805[\udc5c\udc62-\udc7f\udcc8-\udccf\udcda-\udd7f\uddb6\uddb7\uddde-\uddff\ude45-\ude4f\ude5a-\ude5f\ude6d-\ude7f\udeba-\udebf\udeca-\udeff\udf1b\udf1c\udf2c-\udf2f\udf47-\udfff]|\ud806[\udc3c-\udc9f\udcf3-\udcfe\udd07\udd08\udd0a\udd0b\udd14\udd17\udd36\udd39\udd3a\udd47-\udd4f\udd5a-\udd9f\udda8\udda9\uddd8\uddd9\udde5-\uddff\ude48-\ude4f\udea3-\udeaf\udef9-\udfff]|\ud807[\udc09\udc37\udc46-\udc4f\udc6d-\udc6f\udc90\udc91\udca8\udcb7-\udcff\udd07\udd0a\udd37-\udd39\udd3b\udd3e\udd48-\udd4f\udd5a-\udd5f\udd66\udd69\udd8f\udd92\udd99-\udd9f\uddaa-\udedf\udef9-\udfaf\udfb1-\udfbf\udff2-\udffe]|\ud808[\udf9a-\udfff]|\ud809[\udc6f\udc75-\udc7f\udd44-\udfff]|[\ud80a\ud80e-\ud810\ud812-\ud819\ud824-\ud82a\ud82d\ud82e\ud830-\ud832\ud83f\ud87b-\ud87d\ud87f\ud885-\udb3f\udb41-\udbff][\udc00-\udfff]|\ud80b[\udc00-\udf8f\udff3-\udfff]|\ud80d[\udc2f-\udfff]|\ud811[\ude47-\udfff]|\ud81a[\ude39-\ude3f\ude5f\ude6a-\ude6d\udebf\udeca-\udecf\udeee\udeef\udef6-\udeff\udf46-\udf4f\udf5a\udf62\udf78-\udf7c\udf90-\udfff]|\ud81b[\udc00-\ude3f\ude9b-\udeff\udf4b-\udf4e\udf88-\udf8e\udfa0-\udfdf\udfe5-\udfef\udff2-\udfff]|\ud821[\udff8-\udfff]|\ud823[\udcd6-\udcff\udd09-\udfff]|\ud82b[\udc00-\udfef\udff4\udffc\udfff]|\ud82c[\udd23-\udd4f\udd53-\udd63\udd68-\udd6f\udefc-\udfff]|\ud82f[\udc6b-\udc6f\udc7d-\udc7f\udc89-\udc8f\udc9a\udc9b\udca0-\udfff]|\ud833[\udc00-\udeff\udf2e\udf2f\udf47-\udf4f\udfc4-\udfff]|\ud834[\udcf6-\udcff\udd27\udd28\udd73-\udd7a\uddeb-\uddff\ude46-\udedf\udef4-\udeff\udf57-\udf5f\udf79-\udfff]|\ud835[\udc55\udc9d\udca0\udca1\udca3\udca4\udca7\udca8\udcad\udcba\udcbc\udcc4\udd06\udd0b\udd0c\udd15\udd1d\udd3a\udd3f\udd45\udd47-\udd49\udd51\udea6\udea7\udfcc\udfcd]|\ud836[\ude8c-\ude9a\udea0\udeb0-\udfff]|\ud837[\udc00-\udeff\udf1f-\udfff]|\ud838[\udc07\udc19\udc1a\udc22\udc25\udc2b-\udcff\udd2d-\udd2f\udd3e\udd3f\udd4a-\udd4d\udd50-\ude8f\udeaf-\udebf\udefa-\udefe\udf00-\udfff]|\ud839[\udc00-\udfdf\udfe7\udfec\udfef\udfff]|\ud83a[\udcc5\udcc6\udcd7-\udcff\udd4c-\udd4f\udd5a-\udd5d\udd60-\udfff]|\ud83b[\udc00-\udc70\udcb5-\udd00\udd3e-\uddff\ude04\ude20\ude23\ude25\ude26\ude28\ude33\ude38\ude3a\ude3c-\ude41\ude43-\ude46\ude48\ude4a\ude4c\ude50\ude53\ude55\ude56\ude58\ude5a\ude5c\ude5e\ude60\ude63\ude65\ude66\ude6b\ude73\ude78\ude7d\ude7f\ude8a\ude9c-\udea0\udea4\udeaa\udebc-\udeef\udef2-\udfff]|\ud83c[\udc2c-\udc2f\udc94-\udc9f\udcaf\udcb0\udcc0\udcd0\udcf6-\udcff\uddae-\udde5\ude03-\ude0f\ude3c-\ude3f\ude49-\ude4f\ude52-\ude5f\ude66-\udeff]|\ud83d[\uded8-\udedc\udeed-\udeef\udefd-\udeff\udf74-\udf7f\udfd9-\udfdf\udfec-\udfef\udff1-\udfff]|\ud83e[\udc0c-\udc0f\udc48-\udc4f\udc5a-\udc5f\udc88-\udc8f\udcae\udcaf\udcb2-\udcff\ude54-\ude5f\ude6e\ude6f\ude75-\ude77\ude7d-\ude7f\ude87-\ude8f\udead-\udeaf\udebb-\udebf\udec6-\udecf\udeda-\udedf\udee8-\udeef\udef7-\udeff\udf93\udfcb-\udfef\udffa-\udfff]|\ud869[\udee0-\udeff]|\ud86d[\udf39-\udf3f]|\ud86e[\udc1e\udc1f]|\ud873[\udea2-\udeaf]|\ud87a[\udfe1-\udfff]|\ud87e[\ude1e-\udfff]|\ud884[\udf4b-\udfff]|\udb40[\udc00-\udcff\uddf0-\udfff]"},{name:"Cc",alias:"Control",bmp:"\0--Ÿ"},{name:"Cf",alias:"Format",bmp:"­؀-؅؜۝܏࢐࢑࣢᠎​-‏‪-‮⁠-⁤⁦-\ufeff-",astral:"\ud804[\udcbd\udccd]|\ud80d[\udc30-\udc38]|\ud82f[\udca0-\udca3]|\ud834[\udd73-\udd7a]|\udb40[\udc01\udc20-\udc7f]"},{name:"Cn",alias:"Unassigned",bmp:"͸͹΀-΃΋΍΢԰՗՘֋֌֐׈-׏׫-׮׵-׿܎݋݌޲-޿߻߼࠮࠯࠿࡜࡝࡟࡫-࡯࢏࢒-ࢗ঄঍঎঑঒঩঱঳-঵঺঻৅৆৉৊৏-৖৘-৛৞৤৥৿਀਄਋-਎਑਒਩਱਴਷਺਻਽੃-੆੉੊੎-੐੒-੘੝੟-੥੷-઀઄઎઒઩઱઴઺઻૆૊૎૏૑-૟૤૥૲-૸଀଄଍଎଑଒଩଱଴଺଻୅୆୉୊୎-୔୘-୛୞୤୥୸-஁஄஋-஍஑஖-஘஛஝஠-஢஥-஧஫-஭஺-஽௃-௅௉௎௏௑-௖௘-௥௻-௿఍఑఩఺఻౅౉౎-౔౗౛౜౞౟౤౥౰-౶಍಑಩಴಺಻೅೉೎-೔೗-೜೟೤೥೰ೳ-೿഍഑൅൉൐-൓൤൥඀඄඗-඙඲඼඾඿෇-෉෋-෎෕෗෠-෥෰෱෵-฀฻-฾๜-຀຃຅຋຤຦຾຿໅໇໎໏໚໛໠-໿཈཭-཰྘྽࿍࿛-࿿჆჈-჌჎჏቉቎቏቗቙቞቟኉኎኏኱኶኷኿዁዆዇዗጑጖጗፛፜፽-፿᎚-᎟᏶᏷᏾᏿᚝-᚟᛹-᛿᜖-᜞᜷-᜿᝔-᝟᝭᝱᝴-᝿៞៟៪-៯៺-៿᠚-᠟᡹-᡿᢫-᢯᣶-᣿᤟᤬-᤯᤼-᤿᥁-᥃᥮᥯᥵-᥿᦬-᦯᧊-᧏᧛-᧝᨜᨝᩟᩽᩾᪊-᪏᪚-᪟᪮᪯᫏-᫿᭍-᭏᭿᯴-᯻᰸-᰺᱊-᱌Ᲊ-᲏᲻᲼᳈-᳏᳻-᳿἖἗἞἟὆὇὎὏὘὚὜὞὾὿᾵῅῔῕῜῰῱῵῿⁥⁲⁳₏₝-₟⃁-⃏⃱-⃿↌-↏␧-␿⑋-⑟⭴⭵⮖⳴-⳸⴦⴨-⴬⴮⴯⵨-⵮⵱-⵾⶗-⶟⶧⶯⶷⶿⷇⷏⷗⷟⹞-⹿⺚⻴-⻿⿖-⿯⿼-⿿぀゗゘㄀-㄄㄰㆏㇤-㇯㈟꒍-꒏꓇-꓏꘬-꘿꛸-꛿Ɤ-꟏꟒꟔Ꟛ-꟱꠭-꠯꠺-꠿꡸-꡿꣆-꣍꣚-꣟꥔-꥞꥽-꥿꧎꧚-꧝꧿꨷-꨿꩎꩏꩚꩛꫃-꫚꫷-꬀꬇꬈꬏꬐꬗-꬟꬧꬯꭬-꭯꯮꯯꯺-꯿힤-힯퟇-퟊퟼-퟿﩮﩯﫚-﫿﬇-﬒﬘-﬜﬷﬽﬿﭂﭅﯃-﯒﶐﶑﷈-﷎﷐-﷯︚-︟﹓﹧﹬-﹯﹵﻽﻾＀﾿-￁￈￉￐￑￘￙￝-￟￧￯-￸￾￿",astral:"\ud800[\udc0c\udc27\udc3b\udc3e\udc4e\udc4f\udc5e-\udc7f\udcfb-\udcff\udd03-\udd06\udd34-\udd36\udd8f\udd9d-\udd9f\udda1-\uddcf\uddfe-\ude7f\ude9d-\ude9f\uded1-\udedf\udefc-\udeff\udf24-\udf2c\udf4b-\udf4f\udf7b-\udf7f\udf9e\udfc4-\udfc7\udfd6-\udfff]|\ud801[\udc9e\udc9f\udcaa-\udcaf\udcd4-\udcd7\udcfc-\udcff\udd28-\udd2f\udd64-\udd6e\udd7b\udd8b\udd93\udd96\udda2\uddb2\uddba\uddbd-\uddff\udf37-\udf3f\udf56-\udf5f\udf68-\udf7f\udf86\udfb1\udfbb-\udfff]|\ud802[\udc06\udc07\udc09\udc36\udc39-\udc3b\udc3d\udc3e\udc56\udc9f-\udca6\udcb0-\udcdf\udcf3\udcf6-\udcfa\udd1c-\udd1e\udd3a-\udd3e\udd40-\udd7f\uddb8-\uddbb\uddd0\uddd1\ude04\ude07-\ude0b\ude14\ude18\ude36\ude37\ude3b-\ude3e\ude49-\ude4f\ude59-\ude5f\udea0-\udebf\udee7-\udeea\udef7-\udeff\udf36-\udf38\udf56\udf57\udf73-\udf77\udf92-\udf98\udf9d-\udfa8\udfb0-\udfff]|\ud803[\udc49-\udc7f\udcb3-\udcbf\udcf3-\udcf9\udd28-\udd2f\udd3a-\ude5f\ude7f\udeaa\udeae\udeaf\udeb2-\udeff\udf28-\udf2f\udf5a-\udf6f\udf8a-\udfaf\udfcc-\udfdf\udff7-\udfff]|\ud804[\udc4e-\udc51\udc76-\udc7e\udcc3-\udccc\udcce\udccf\udce9-\udcef\udcfa-\udcff\udd35\udd48-\udd4f\udd77-\udd7f\udde0\uddf5-\uddff\ude12\ude3f-\ude7f\ude87\ude89\ude8e\ude9e\udeaa-\udeaf\udeeb-\udeef\udefa-\udeff\udf04\udf0d\udf0e\udf11\udf12\udf29\udf31\udf34\udf3a\udf45\udf46\udf49\udf4a\udf4e\udf4f\udf51-\udf56\udf58-\udf5c\udf64\udf65\udf6d-\udf6f\udf75-\udfff]|\ud805[\udc5c\udc62-\udc7f\udcc8-\udccf\udcda-\udd7f\uddb6\uddb7\uddde-\uddff\ude45-\ude4f\ude5a-\ude5f\ude6d-\ude7f\udeba-\udebf\udeca-\udeff\udf1b\udf1c\udf2c-\udf2f\udf47-\udfff]|\ud806[\udc3c-\udc9f\udcf3-\udcfe\udd07\udd08\udd0a\udd0b\udd14\udd17\udd36\udd39\udd3a\udd47-\udd4f\udd5a-\udd9f\udda8\udda9\uddd8\uddd9\udde5-\uddff\ude48-\ude4f\udea3-\udeaf\udef9-\udfff]|\ud807[\udc09\udc37\udc46-\udc4f\udc6d-\udc6f\udc90\udc91\udca8\udcb7-\udcff\udd07\udd0a\udd37-\udd39\udd3b\udd3e\udd48-\udd4f\udd5a-\udd5f\udd66\udd69\udd8f\udd92\udd99-\udd9f\uddaa-\udedf\udef9-\udfaf\udfb1-\udfbf\udff2-\udffe]|\ud808[\udf9a-\udfff]|\ud809[\udc6f\udc75-\udc7f\udd44-\udfff]|[\ud80a\ud80e-\ud810\ud812-\ud819\ud824-\ud82a\ud82d\ud82e\ud830-\ud832\ud83f\ud87b-\ud87d\ud87f\ud885-\udb3f\udb41-\udb7f][\udc00-\udfff]|\ud80b[\udc00-\udf8f\udff3-\udfff]|\ud80d[\udc2f\udc39-\udfff]|\ud811[\ude47-\udfff]|\ud81a[\ude39-\ude3f\ude5f\ude6a-\ude6d\udebf\udeca-\udecf\udeee\udeef\udef6-\udeff\udf46-\udf4f\udf5a\udf62\udf78-\udf7c\udf90-\udfff]|\ud81b[\udc00-\ude3f\ude9b-\udeff\udf4b-\udf4e\udf88-\udf8e\udfa0-\udfdf\udfe5-\udfef\udff2-\udfff]|\ud821[\udff8-\udfff]|\ud823[\udcd6-\udcff\udd09-\udfff]|\ud82b[\udc00-\udfef\udff4\udffc\udfff]|\ud82c[\udd23-\udd4f\udd53-\udd63\udd68-\udd6f\udefc-\udfff]|\ud82f[\udc6b-\udc6f\udc7d-\udc7f\udc89-\udc8f\udc9a\udc9b\udca4-\udfff]|\ud833[\udc00-\udeff\udf2e\udf2f\udf47-\udf4f\udfc4-\udfff]|\ud834[\udcf6-\udcff\udd27\udd28\uddeb-\uddff\ude46-\udedf\udef4-\udeff\udf57-\udf5f\udf79-\udfff]|\ud835[\udc55\udc9d\udca0\udca1\udca3\udca4\udca7\udca8\udcad\udcba\udcbc\udcc4\udd06\udd0b\udd0c\udd15\udd1d\udd3a\udd3f\udd45\udd47-\udd49\udd51\udea6\udea7\udfcc\udfcd]|\ud836[\ude8c-\ude9a\udea0\udeb0-\udfff]|\ud837[\udc00-\udeff\udf1f-\udfff]|\ud838[\udc07\udc19\udc1a\udc22\udc25\udc2b-\udcff\udd2d-\udd2f\udd3e\udd3f\udd4a-\udd4d\udd50-\ude8f\udeaf-\udebf\udefa-\udefe\udf00-\udfff]|\ud839[\udc00-\udfdf\udfe7\udfec\udfef\udfff]|\ud83a[\udcc5\udcc6\udcd7-\udcff\udd4c-\udd4f\udd5a-\udd5d\udd60-\udfff]|\ud83b[\udc00-\udc70\udcb5-\udd00\udd3e-\uddff\ude04\ude20\ude23\ude25\ude26\ude28\ude33\ude38\ude3a\ude3c-\ude41\ude43-\ude46\ude48\ude4a\ude4c\ude50\ude53\ude55\ude56\ude58\ude5a\ude5c\ude5e\ude60\ude63\ude65\ude66\ude6b\ude73\ude78\ude7d\ude7f\ude8a\ude9c-\udea0\udea4\udeaa\udebc-\udeef\udef2-\udfff]|\ud83c[\udc2c-\udc2f\udc94-\udc9f\udcaf\udcb0\udcc0\udcd0\udcf6-\udcff\uddae-\udde5\ude03-\ude0f\ude3c-\ude3f\ude49-\ude4f\ude52-\ude5f\ude66-\udeff]|\ud83d[\uded8-\udedc\udeed-\udeef\udefd-\udeff\udf74-\udf7f\udfd9-\udfdf\udfec-\udfef\udff1-\udfff]|\ud83e[\udc0c-\udc0f\udc48-\udc4f\udc5a-\udc5f\udc88-\udc8f\udcae\udcaf\udcb2-\udcff\ude54-\ude5f\ude6e\ude6f\ude75-\ude77\ude7d-\ude7f\ude87-\ude8f\udead-\udeaf\udebb-\udebf\udec6-\udecf\udeda-\udedf\udee8-\udeef\udef7-\udeff\udf93\udfcb-\udfef\udffa-\udfff]|\ud869[\udee0-\udeff]|\ud86d[\udf39-\udf3f]|\ud86e[\udc1e\udc1f]|\ud873[\udea2-\udeaf]|\ud87a[\udfe1-\udfff]|\ud87e[\ude1e-\udfff]|\ud884[\udf4b-\udfff]|\udb40[\udc00\udc02-\udc1f\udc80-\udcff\uddf0-\udfff]|[\udbbf\udbff][\udffe\udfff]"},{name:"Co",alias:"Private_Use",bmp:"-",astral:"[\udb80-\udbbe\udbc0-\udbfe][\udc00-\udfff]|[\udbbf\udbff][\udc00-\udffd]"},{name:"Cs",alias:"Surrogate",bmp:"\ud800-\udfff"},{name:"L",alias:"Letter",bmp:"A-Za-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢄᢇ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々〆〱-〵〻〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛥꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",astral:"\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\ude80-\ude9c\udea0-\uded0\udf00-\udf1f\udf2d-\udf40\udf42-\udf49\udf50-\udf75\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf]|\ud801[\udc00-\udc9d\udcb0-\udcd3\udcd8-\udcfb\udd00-\udd27\udd30-\udd63\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc\ude00-\udf36\udf40-\udf55\udf60-\udf67\udf80-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude35\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee4\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udc80-\udcb2\udcc0-\udcf2\udd00-\udd23\ude80-\udea9\udeb0\udeb1\udf00-\udf1c\udf27\udf30-\udf45\udf70-\udf81\udfb0-\udfc4\udfe0-\udff6]|\ud804[\udc03-\udc37\udc71\udc72\udc75\udc83-\udcaf\udcd0-\udce8\udd03-\udd26\udd44\udd47\udd50-\udd72\udd76\udd83-\uddb2\uddc1-\uddc4\uddda\udddc\ude00-\ude11\ude13-\ude2b\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udede\udf05-\udf0c\udf0f\udf10\udf13-\udf28\udf2a-\udf30\udf32\udf33\udf35-\udf39\udf3d\udf50\udf5d-\udf61]|\ud805[\udc00-\udc34\udc47-\udc4a\udc5f-\udc61\udc80-\udcaf\udcc4\udcc5\udcc7\udd80-\uddae\uddd8-\udddb\ude00-\ude2f\ude44\ude80-\udeaa\udeb8\udf00-\udf1a\udf40-\udf46]|\ud806[\udc00-\udc2b\udca0-\udcdf\udcff-\udd06\udd09\udd0c-\udd13\udd15\udd16\udd18-\udd2f\udd3f\udd41\udda0-\udda7\uddaa-\uddd0\udde1\udde3\ude00\ude0b-\ude32\ude3a\ude50\ude5c-\ude89\ude9d\udeb0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc2e\udc40\udc72-\udc8f\udd00-\udd06\udd08\udd09\udd0b-\udd30\udd46\udd60-\udd65\udd67\udd68\udd6a-\udd89\udd98\udee0-\udef2\udfb0]|\ud808[\udc00-\udf99]|\ud809[\udc80-\udd43]|\ud80b[\udf90-\udff0]|[\ud80c\ud81c-\ud820\ud822\ud840-\ud868\ud86a-\ud86c\ud86f-\ud872\ud874-\ud879\ud880-\ud883][\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\ude70-\udebe\uded0-\udeed\udf00-\udf2f\udf40-\udf43\udf63-\udf77\udf7d-\udf8f]|\ud81b[\ude40-\ude7f\udf00-\udf4a\udf50\udf93-\udf9f\udfe0\udfe1\udfe3]|\ud821[\udc00-\udff7]|\ud823[\udc00-\udcd5\udd00-\udd08]|\ud82b[\udff0-\udff3\udff5-\udffb\udffd\udffe]|\ud82c[\udc00-\udd22\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud837[\udf00-\udf1e]|\ud838[\udd00-\udd2c\udd37-\udd3d\udd4e\ude90-\udead\udec0-\udeeb]|\ud839[\udfe0-\udfe6\udfe8-\udfeb\udfed\udfee\udff0-\udffe]|\ud83a[\udc00-\udcc4\udd00-\udd43\udd4b]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud869[\udc00-\udedf\udf00-\udfff]|\ud86d[\udc00-\udf38\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\ud884[\udc00-\udf4a]"},{name:"LC",alias:"Cased_Letter",bmp:"A-Za-zµÀ-ÖØ-öø-ƺƼ-ƿDŽ-ʓʕ-ʯͰ-ͳͶͷͻ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՠ-ֈႠ-ჅჇჍა-ჺჽ-ჿᎠ-Ᏽᏸ-ᏽᲀ-ᲈᲐ-ᲺᲽ-Ჿᴀ-ᴫᵫ-ᵷᵹ-ᶚḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℴℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-ⱻⱾ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭꙀ-ꙭꚀ-ꚛꜢ-ꝯꝱ-ꞇꞋ-ꞎꞐ-ꟊꟐꟑꟓꟕ-ꟙꟵꟶꟺꬰ-ꭚꭠ-ꭨꭰ-ꮿff-stﬓ-ﬗA-Za-z",astral:"\ud801[\udc00-\udc4f\udcb0-\udcd3\udcd8-\udcfb\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc]|\ud803[\udc80-\udcb2\udcc0-\udcf2]|\ud806[\udca0-\udcdf]|\ud81b[\ude40-\ude7f]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud837[\udf00-\udf09\udf0b-\udf1e]|\ud83a[\udd00-\udd43]"},{name:"Ll",alias:"Lowercase_Letter",bmp:"a-zµß-öø-ÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżž-ƀƃƅƈƌƍƒƕƙ-ƛƞơƣƥƨƪƫƭưƴƶƹƺƽ-ƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳ-ȹȼȿɀɂɇɉɋɍɏ-ʓʕ-ʯͱͳͷͻ-ͽΐά-ώϐϑϕ-ϗϙϛϝϟϡϣϥϧϩϫϭϯ-ϳϵϸϻϼа-џѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӏӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧԩԫԭԯՠ-ֈა-ჺჽ-ჿᏸ-ᏽᲀ-ᲈᴀ-ᴫᵫ-ᵷᵹ-ᶚḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕ-ẝẟạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿ-ἇἐ-ἕἠ-ἧἰ-ἷὀ-ὅὐ-ὗὠ-ὧὰ-ώᾀ-ᾇᾐ-ᾗᾠ-ᾧᾰ-ᾴᾶᾷιῂ-ῄῆῇῐ-ΐῖῗῠ-ῧῲ-ῴῶῷℊℎℏℓℯℴℹℼℽⅆ-ⅉⅎↄⰰ-ⱟⱡⱥⱦⱨⱪⱬⱱⱳⱴⱶ-ⱻⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⳬⳮⳳⴀ-ⴥⴧⴭꙁꙃꙅꙇꙉꙋꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꚙꚛꜣꜥꜧꜩꜫꜭꜯ-ꜱꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯꝱ-ꝸꝺꝼꝿꞁꞃꞅꞇꞌꞎꞑꞓ-ꞕꞗꞙꞛꞝꞟꞡꞣꞥꞧꞩꞯꞵꞷꞹꞻꞽꞿꟁꟃꟈꟊꟑꟓꟕꟗꟙꟶꟺꬰ-ꭚꭠ-ꭨꭰ-ꮿff-stﬓ-ﬗa-z",astral:"\ud801[\udc28-\udc4f\udcd8-\udcfb\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc]|\ud803[\udcc0-\udcf2]|\ud806[\udcc0-\udcdf]|\ud81b[\ude60-\ude7f]|\ud835[\udc1a-\udc33\udc4e-\udc54\udc56-\udc67\udc82-\udc9b\udcb6-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udccf\udcea-\udd03\udd1e-\udd37\udd52-\udd6b\udd86-\udd9f\uddba-\uddd3\uddee-\ude07\ude22-\ude3b\ude56-\ude6f\ude8a-\udea5\udec2-\udeda\udedc-\udee1\udefc-\udf14\udf16-\udf1b\udf36-\udf4e\udf50-\udf55\udf70-\udf88\udf8a-\udf8f\udfaa-\udfc2\udfc4-\udfc9\udfcb]|\ud837[\udf00-\udf09\udf0b-\udf1e]|\ud83a[\udd22-\udd43]"},{name:"Lm",alias:"Modifier_Letter",bmp:"ʰ-ˁˆ-ˑˠ-ˤˬˮʹͺՙـۥۦߴߵߺࠚࠤࠨࣉॱๆໆჼៗᡃᪧᱸ-ᱽᴬ-ᵪᵸᶛ-ᶿⁱⁿₐ-ₜⱼⱽⵯⸯ々〱-〵〻ゝゞー-ヾꀕꓸ-ꓽꘌꙿꚜꚝꜗ-ꜟꝰꞈꟲ-ꟴꟸꟹꧏꧦꩰꫝꫳꫴꭜ-ꭟꭩー゙゚",astral:"\ud801[\udf80-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud81a[\udf40-\udf43]|\ud81b[\udf93-\udf9f\udfe0\udfe1\udfe3]|\ud82b[\udff0-\udff3\udff5-\udffb\udffd\udffe]|\ud838[\udd37-\udd3d]|𞥋"},{name:"Lo",alias:"Other_Letter",bmp:"ªºƻǀ-ǃʔא-תׯ-ײؠ-ؿف-يٮٯٱ-ۓەۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪࠀ-ࠕࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣈऄ-हऽॐक़-ॡॲ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๅກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎᄀ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛱ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៜᠠ-ᡂᡄ-ᡸᢀ-ᢄᢇ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱷᳩ-ᳬᳮ-ᳳᳵᳶᳺℵ-ℸⴰ-ⵧⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ〆〼ぁ-ゖゟァ-ヺヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꀔꀖ-ꒌꓐ-ꓷꔀ-ꘋꘐ-ꘟꘪꘫꙮꚠ-ꛥꞏꟷꟻ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧠ-ꧤꧧ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩯꩱ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛꫜꫠ-ꫪꫲꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎יִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼヲ-ッア-ンᅠ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",astral:"\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\ude80-\ude9c\udea0-\uded0\udf00-\udf1f\udf2d-\udf40\udf42-\udf49\udf50-\udf75\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf]|\ud801[\udc50-\udc9d\udd00-\udd27\udd30-\udd63\ude00-\udf36\udf40-\udf55\udf60-\udf67]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude35\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee4\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udd00-\udd23\ude80-\udea9\udeb0\udeb1\udf00-\udf1c\udf27\udf30-\udf45\udf70-\udf81\udfb0-\udfc4\udfe0-\udff6]|\ud804[\udc03-\udc37\udc71\udc72\udc75\udc83-\udcaf\udcd0-\udce8\udd03-\udd26\udd44\udd47\udd50-\udd72\udd76\udd83-\uddb2\uddc1-\uddc4\uddda\udddc\ude00-\ude11\ude13-\ude2b\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udede\udf05-\udf0c\udf0f\udf10\udf13-\udf28\udf2a-\udf30\udf32\udf33\udf35-\udf39\udf3d\udf50\udf5d-\udf61]|\ud805[\udc00-\udc34\udc47-\udc4a\udc5f-\udc61\udc80-\udcaf\udcc4\udcc5\udcc7\udd80-\uddae\uddd8-\udddb\ude00-\ude2f\ude44\ude80-\udeaa\udeb8\udf00-\udf1a\udf40-\udf46]|\ud806[\udc00-\udc2b\udcff-\udd06\udd09\udd0c-\udd13\udd15\udd16\udd18-\udd2f\udd3f\udd41\udda0-\udda7\uddaa-\uddd0\udde1\udde3\ude00\ude0b-\ude32\ude3a\ude50\ude5c-\ude89\ude9d\udeb0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc2e\udc40\udc72-\udc8f\udd00-\udd06\udd08\udd09\udd0b-\udd30\udd46\udd60-\udd65\udd67\udd68\udd6a-\udd89\udd98\udee0-\udef2\udfb0]|\ud808[\udc00-\udf99]|\ud809[\udc80-\udd43]|\ud80b[\udf90-\udff0]|[\ud80c\ud81c-\ud820\ud822\ud840-\ud868\ud86a-\ud86c\ud86f-\ud872\ud874-\ud879\ud880-\ud883][\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\ude70-\udebe\uded0-\udeed\udf00-\udf2f\udf63-\udf77\udf7d-\udf8f]|\ud81b[\udf00-\udf4a\udf50]|\ud821[\udc00-\udff7]|\ud823[\udc00-\udcd5\udd00-\udd08]|\ud82c[\udc00-\udd22\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99]|𝼊|\ud838[\udd00-\udd2c\udd4e\ude90-\udead\udec0-\udeeb]|\ud839[\udfe0-\udfe6\udfe8-\udfeb\udfed\udfee\udff0-\udffe]|\ud83a[\udc00-\udcc4]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud869[\udc00-\udedf\udf00-\udfff]|\ud86d[\udc00-\udf38\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\ud884[\udc00-\udf4a]"},{name:"Lt",alias:"Titlecase_Letter",bmp:"DžLjNjDzᾈ-ᾏᾘ-ᾟᾨ-ᾯᾼῌῼ"},{name:"Lu",alias:"Uppercase_Letter",bmp:"A-ZÀ-ÖØ-ÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉ-ƋƎ-ƑƓƔƖ-ƘƜƝƟƠƢƤƦƧƩƬƮƯƱ-ƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶ-ǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁɃ-ɆɈɊɌɎͰͲͶͿΆΈ-ΊΌΎΏΑ-ΡΣ-ΫϏϒ-ϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽ-ЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸӺӼӾԀԂԄԆԈԊԌԎԐԒԔԖԘԚԜԞԠԢԤԦԨԪԬԮԱ-ՖႠ-ჅჇჍᎠ-ᏵᲐ-ᲺᲽ-ᲿḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẞẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸỺỼỾἈ-ἏἘ-ἝἨ-ἯἸ-ἿὈ-ὍὙὛὝὟὨ-ὯᾸ-ΆῈ-ΉῘ-ΊῨ-ῬῸ-Ώℂℇℋ-ℍℐ-ℒℕℙ-ℝℤΩℨK-ℭℰ-ℳℾℿⅅↃⰀ-ⰯⱠⱢ-ⱤⱧⱩⱫⱭ-ⱰⱲⱵⱾ-ⲀⲂⲄⲆⲈⲊⲌⲎⲐⲒⲔⲖⲘⲚⲜⲞⲠⲢⲤⲦⲨⲪⲬⲮⲰⲲⲴⲶⲸⲺⲼⲾⳀⳂⳄⳆⳈⳊⳌⳎⳐⳒⳔⳖⳘⳚⳜⳞⳠⳢⳫⳭⳲꙀꙂꙄꙆꙈꙊꙌꙎꙐꙒꙔꙖꙘꙚꙜꙞꙠꙢꙤꙦꙨꙪꙬꚀꚂꚄꚆꚈꚊꚌꚎꚐꚒꚔꚖꚘꚚꜢꜤꜦꜨꜪꜬꜮꜲꜴꜶꜸꜺꜼꜾꝀꝂꝄꝆꝈꝊꝌꝎꝐꝒꝔꝖꝘꝚꝜꝞꝠꝢꝤꝦꝨꝪꝬꝮꝹꝻꝽꝾꞀꞂꞄꞆꞋꞍꞐꞒꞖꞘꞚꞜꞞꞠꞢꞤꞦꞨꞪ-ꞮꞰ-ꞴꞶꞸꞺꞼꞾꟀꟂꟄ-ꟇꟉꟐꟖꟘꟵA-Z",astral:"\ud801[\udc00-\udc27\udcb0-\udcd3\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95]|\ud803[\udc80-\udcb2]|\ud806[\udca0-\udcbf]|\ud81b[\ude40-\ude5f]|\ud835[\udc00-\udc19\udc34-\udc4d\udc68-\udc81\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb5\udcd0-\udce9\udd04\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd38\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd6c-\udd85\udda0-\uddb9\uddd4-\udded\ude08-\ude21\ude3c-\ude55\ude70-\ude89\udea8-\udec0\udee2-\udefa\udf1c-\udf34\udf56-\udf6e\udf90-\udfa8\udfca]|\ud83a[\udd00-\udd21]"},{name:"M",alias:"Mark",bmp:"̀-ͯ҃-҉֑-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣঁ-ঃ়া-ৄেৈো-্ৗৢৣ৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑੰੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣஂா-ூெ-ைொ-்ௗఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣඁ-ඃ්ා-ුූෘ-ෟෲෳัิ-ฺ็-๎ັິ-ຼ່-ໍ༹༘༙༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏႚ-ႝ፝-፟ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝᠋-᠍᠏ᢅᢆᢩᤠ-ᤫᤰ-᤻ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼᪰-ᫎᬀ-ᬄ᬴-᭄᭫-᭳ᮀ-ᮂᮡ-ᮭ᯦-᯳ᰤ-᰷᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿⃐-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꙯-꙲ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣠-꣱ꣿꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀ꧥꨩ-ꨶꩃꩌꩍꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭ﬞ︀-️︠-︯",astral:"\ud800[\uddfd\udee0\udf76-\udf7a]|\ud802[\ude01-\ude03\ude05\ude06\ude0c-\ude0f\ude38-\ude3a\ude3f\udee5\udee6]|\ud803[\udd24-\udd27\udeab\udeac\udf46-\udf50\udf82-\udf85]|\ud804[\udc00-\udc02\udc38-\udc46\udc70\udc73\udc74\udc7f-\udc82\udcb0-\udcba\udcc2\udd00-\udd02\udd27-\udd34\udd45\udd46\udd73\udd80-\udd82\uddb3-\uddc0\uddc9-\uddcc\uddce\uddcf\ude2c-\ude37\ude3e\udedf-\udeea\udf00-\udf03\udf3b\udf3c\udf3e-\udf44\udf47\udf48\udf4b-\udf4d\udf57\udf62\udf63\udf66-\udf6c\udf70-\udf74]|\ud805[\udc35-\udc46\udc5e\udcb0-\udcc3\uddaf-\uddb5\uddb8-\uddc0\udddc\udddd\ude30-\ude40\udeab-\udeb7\udf1d-\udf2b]|\ud806[\udc2c-\udc3a\udd30-\udd35\udd37\udd38\udd3b-\udd3e\udd40\udd42\udd43\uddd1-\uddd7\uddda-\udde0\udde4\ude01-\ude0a\ude33-\ude39\ude3b-\ude3e\ude47\ude51-\ude5b\ude8a-\ude99]|\ud807[\udc2f-\udc36\udc38-\udc3f\udc92-\udca7\udca9-\udcb6\udd31-\udd36\udd3a\udd3c\udd3d\udd3f-\udd45\udd47\udd8a-\udd8e\udd90\udd91\udd93-\udd97\udef3-\udef6]|\ud81a[\udef0-\udef4\udf30-\udf36]|\ud81b[\udf4f\udf51-\udf87\udf8f-\udf92\udfe4\udff0\udff1]|\ud82f[\udc9d\udc9e]|\ud833[\udf00-\udf2d\udf30-\udf46]|\ud834[\udd65-\udd69\udd6d-\udd72\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad\ude42-\ude44]|\ud836[\ude00-\ude36\ude3b-\ude6c\ude75\ude84\ude9b-\ude9f\udea1-\udeaf]|\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23\udc24\udc26-\udc2a\udd30-\udd36\udeae\udeec-\udeef]|\ud83a[\udcd0-\udcd6\udd44-\udd4a]|\udb40[\udd00-\uddef]"},{name:"Mc",alias:"Spacing_Mark",bmp:"ःऻा-ीॉ-ौॎॏংঃা-ীেৈোৌৗਃਾ-ੀઃા-ીૉોૌଂଃାୀେୈୋୌୗாிுூெ-ைொ-ௌௗఁ-ఃు-ౄಂಃಾೀ-ೄೇೈೊೋೕೖംഃാ-ീെ-ൈൊ-ൌൗංඃා-ෑෘ-ෟෲෳ༾༿ཿါာေးျြၖၗၢ-ၤၧ-ၭႃႄႇ-ႌႏႚ-ႜ᜕᜴ាើ-ៅះៈᤣ-ᤦᤩ-ᤫᤰᤱᤳ-ᤸᨙᨚᩕᩗᩡᩣᩤᩭ-ᩲᬄᬵᬻᬽ-ᭁᭃ᭄ᮂᮡᮦᮧ᮪ᯧᯪ-ᯬᯮ᯲᯳ᰤ-ᰫᰴᰵ᳡᳷〮〯ꠣꠤꠧꢀꢁꢴ-ꣃꥒ꥓ꦃꦴꦵꦺꦻꦾ-꧀ꨯꨰꨳꨴꩍꩻꩽꫫꫮꫯꫵꯣꯤꯦꯧꯩꯪ꯬",astral:"\ud804[\udc00\udc02\udc82\udcb0-\udcb2\udcb7\udcb8\udd2c\udd45\udd46\udd82\uddb3-\uddb5\uddbf\uddc0\uddce\ude2c-\ude2e\ude32\ude33\ude35\udee0-\udee2\udf02\udf03\udf3e\udf3f\udf41-\udf44\udf47\udf48\udf4b-\udf4d\udf57\udf62\udf63]|\ud805[\udc35-\udc37\udc40\udc41\udc45\udcb0-\udcb2\udcb9\udcbb-\udcbe\udcc1\uddaf-\uddb1\uddb8-\uddbb\uddbe\ude30-\ude32\ude3b\ude3c\ude3e\udeac\udeae\udeaf\udeb6\udf20\udf21\udf26]|\ud806[\udc2c-\udc2e\udc38\udd30-\udd35\udd37\udd38\udd3d\udd40\udd42\uddd1-\uddd3\udddc-\udddf\udde4\ude39\ude57\ude58\ude97]|\ud807[\udc2f\udc3e\udca9\udcb1\udcb4\udd8a-\udd8e\udd93\udd94\udd96\udef5\udef6]|\ud81b[\udf51-\udf87\udff0\udff1]|\ud834[\udd65\udd66\udd6d-\udd72]"},{name:"Me",alias:"Enclosing_Mark",bmp:"҈҉᪾⃝-⃠⃢-⃤꙰-꙲"},{name:"Mn",alias:"Nonspacing_Mark",bmp:"̀-ͯ҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ंऺ़ु-ै्॑-ॗॢॣঁ়ু-ৄ্ৢৣ৾ਁਂ਼ੁੂੇੈੋ-੍ੑੰੱੵઁં઼ુ-ૅેૈ્ૢૣૺ-૿ଁ଼ିୁ-ୄ୍୕ୖୢୣஂீ்ఀఄ఼ా-ీె-ైొ-్ౕౖౢౣಁ಼ಿೆೌ್ೢೣഀഁ഻഼ു-ൄ്ൢൣඁ්ි-ුූัิ-ฺ็-๎ັິ-ຼ່-ໍཱ༹༘༙༵༷-ཾྀ-྄྆྇ྍ-ྗྙ-ྼ࿆ိ-ူဲ-့္်ွှၘၙၞ-ၠၱ-ၴႂႅႆႍႝ፝-፟ᜒ-᜔ᜲᜳᝒᝓᝲᝳ឴឵ិ-ួំ៉-៓៝᠋-᠍᠏ᢅᢆᢩᤠ-ᤢᤧᤨᤲ᤹-᤻ᨘᨗᨛᩖᩘ-ᩞ᩠ᩢᩥ-ᩬᩳ-᩿᩼᪰-᪽ᪿ-ᫎᬀ-ᬃ᬴ᬶ-ᬺᬼᭂ᭫-᭳ᮀᮁᮢ-ᮥᮨᮩ᮫-ᮭ᯦ᯨᯩᯭᯯ-ᯱᰬ-ᰳᰶ᰷᳐-᳔᳒-᳢᳠-᳨᳭᳴᳸᳹᷀-᷿⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〭꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠥꠦ꠬꣄ꣅ꣠-꣱ꣿꤦ-꤭ꥇ-ꥑꦀ-ꦂ꦳ꦶ-ꦹꦼꦽꧥꨩ-ꨮꨱꨲꨵꨶꩃꩌꩼꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫬꫭ꫶ꯥꯨ꯭ﬞ︀-️︠-︯",astral:"\ud800[\uddfd\udee0\udf76-\udf7a]|\ud802[\ude01-\ude03\ude05\ude06\ude0c-\ude0f\ude38-\ude3a\ude3f\udee5\udee6]|\ud803[\udd24-\udd27\udeab\udeac\udf46-\udf50\udf82-\udf85]|\ud804[\udc01\udc38-\udc46\udc70\udc73\udc74\udc7f-\udc81\udcb3-\udcb6\udcb9\udcba\udcc2\udd00-\udd02\udd27-\udd2b\udd2d-\udd34\udd73\udd80\udd81\uddb6-\uddbe\uddc9-\uddcc\uddcf\ude2f-\ude31\ude34\ude36\ude37\ude3e\udedf\udee3-\udeea\udf00\udf01\udf3b\udf3c\udf40\udf66-\udf6c\udf70-\udf74]|\ud805[\udc38-\udc3f\udc42-\udc44\udc46\udc5e\udcb3-\udcb8\udcba\udcbf\udcc0\udcc2\udcc3\uddb2-\uddb5\uddbc\uddbd\uddbf\uddc0\udddc\udddd\ude33-\ude3a\ude3d\ude3f\ude40\udeab\udead\udeb0-\udeb5\udeb7\udf1d-\udf1f\udf22-\udf25\udf27-\udf2b]|\ud806[\udc2f-\udc37\udc39\udc3a\udd3b\udd3c\udd3e\udd43\uddd4-\uddd7\uddda\udddb\udde0\ude01-\ude0a\ude33-\ude38\ude3b-\ude3e\ude47\ude51-\ude56\ude59-\ude5b\ude8a-\ude96\ude98\ude99]|\ud807[\udc30-\udc36\udc38-\udc3d\udc3f\udc92-\udca7\udcaa-\udcb0\udcb2\udcb3\udcb5\udcb6\udd31-\udd36\udd3a\udd3c\udd3d\udd3f-\udd45\udd47\udd90\udd91\udd95\udd97\udef3\udef4]|\ud81a[\udef0-\udef4\udf30-\udf36]|\ud81b[\udf4f\udf8f-\udf92\udfe4]|\ud82f[\udc9d\udc9e]|\ud833[\udf00-\udf2d\udf30-\udf46]|\ud834[\udd67-\udd69\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad\ude42-\ude44]|\ud836[\ude00-\ude36\ude3b-\ude6c\ude75\ude84\ude9b-\ude9f\udea1-\udeaf]|\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23\udc24\udc26-\udc2a\udd30-\udd36\udeae\udeec-\udeef]|\ud83a[\udcd0-\udcd6\udd44-\udd4a]|\udb40[\udd00-\uddef]"},{name:"N",alias:"Number",bmp:"0-9²³¹¼-¾٠-٩۰-۹߀-߉०-९০-৯৴-৹੦-੯૦-૯୦-୯୲-୷௦-௲౦-౯౸-౾೦-೯൘-൞൦-൸෦-෯๐-๙໐-໙༠-༳၀-၉႐-႙፩-፼ᛮ-ᛰ០-៩៰-៹᠐-᠙᥆-᥏᧐-᧚᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙⁰⁴-⁹₀-₉⅐-ↂↅ-↉①-⒛⓪-⓿❶-➓⳽〇〡-〩〸-〺㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꘠-꘩ꛦ-ꛯ꠰-꠵꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9",astral:"\ud800[\udd07-\udd33\udd40-\udd78\udd8a\udd8b\udee1-\udefb\udf20-\udf23\udf41\udf4a\udfd1-\udfd5]|\ud801[\udca0-\udca9]|\ud802[\udc58-\udc5f\udc79-\udc7f\udca7-\udcaf\udcfb-\udcff\udd16-\udd1b\uddbc\uddbd\uddc0-\uddcf\uddd2-\uddff\ude40-\ude48\ude7d\ude7e\ude9d-\ude9f\udeeb-\udeef\udf58-\udf5f\udf78-\udf7f\udfa9-\udfaf]|\ud803[\udcfa-\udcff\udd30-\udd39\ude60-\ude7e\udf1d-\udf26\udf51-\udf54\udfc5-\udfcb]|\ud804[\udc52-\udc6f\udcf0-\udcf9\udd36-\udd3f\uddd0-\uddd9\udde1-\uddf4\udef0-\udef9]|\ud805[\udc50-\udc59\udcd0-\udcd9\ude50-\ude59\udec0-\udec9\udf30-\udf3b]|\ud806[\udce0-\udcf2\udd50-\udd59]|\ud807[\udc50-\udc6c\udd50-\udd59\udda0-\udda9\udfc0-\udfd4]|\ud809[\udc00-\udc6e]|\ud81a[\ude60-\ude69\udec0-\udec9\udf50-\udf59\udf5b-\udf61]|\ud81b[\ude80-\ude96]|\ud834[\udee0-\udef3\udf60-\udf78]|\ud835[\udfce-\udfff]|\ud838[\udd40-\udd49\udef0-\udef9]|\ud83a[\udcc7-\udccf\udd50-\udd59]|\ud83b[\udc71-\udcab\udcad-\udcaf\udcb1-\udcb4\udd01-\udd2d\udd2f-\udd3d]|\ud83c[\udd00-\udd0c]|\ud83e[\udff0-\udff9]"},{name:"Nd",alias:"Decimal_Number",bmp:"0-9٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯෦-෯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꧰-꧹꩐-꩙꯰-꯹0-9",astral:"\ud801[\udca0-\udca9]|\ud803[\udd30-\udd39]|\ud804[\udc66-\udc6f\udcf0-\udcf9\udd36-\udd3f\uddd0-\uddd9\udef0-\udef9]|\ud805[\udc50-\udc59\udcd0-\udcd9\ude50-\ude59\udec0-\udec9\udf30-\udf39]|\ud806[\udce0-\udce9\udd50-\udd59]|\ud807[\udc50-\udc59\udd50-\udd59\udda0-\udda9]|\ud81a[\ude60-\ude69\udec0-\udec9\udf50-\udf59]|\ud835[\udfce-\udfff]|\ud838[\udd40-\udd49\udef0-\udef9]|\ud83a[\udd50-\udd59]|\ud83e[\udff0-\udff9]"},{name:"Nl",alias:"Letter_Number",bmp:"ᛮ-ᛰⅠ-ↂↅ-ↈ〇〡-〩〸-〺ꛦ-ꛯ",astral:"\ud800[\udd40-\udd74\udf41\udf4a\udfd1-\udfd5]|\ud809[\udc00-\udc6e]"},{name:"No",alias:"Other_Number",bmp:"²³¹¼-¾৴-৹୲-୷௰-௲౸-౾൘-൞൰-൸༪-༳፩-፼៰-៹᧚⁰⁴-⁹₀-₉⅐-⅟↉①-⒛⓪-⓿❶-➓⳽㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꠰-꠵",astral:"\ud800[\udd07-\udd33\udd75-\udd78\udd8a\udd8b\udee1-\udefb\udf20-\udf23]|\ud802[\udc58-\udc5f\udc79-\udc7f\udca7-\udcaf\udcfb-\udcff\udd16-\udd1b\uddbc\uddbd\uddc0-\uddcf\uddd2-\uddff\ude40-\ude48\ude7d\ude7e\ude9d-\ude9f\udeeb-\udeef\udf58-\udf5f\udf78-\udf7f\udfa9-\udfaf]|\ud803[\udcfa-\udcff\ude60-\ude7e\udf1d-\udf26\udf51-\udf54\udfc5-\udfcb]|\ud804[\udc52-\udc65\udde1-\uddf4]|\ud805[\udf3a\udf3b]|\ud806[\udcea-\udcf2]|\ud807[\udc5a-\udc6c\udfc0-\udfd4]|\ud81a[\udf5b-\udf61]|\ud81b[\ude80-\ude96]|\ud834[\udee0-\udef3\udf60-\udf78]|\ud83a[\udcc7-\udccf]|\ud83b[\udc71-\udcab\udcad-\udcaf\udcb1-\udcb4\udd01-\udd2d\udd2f-\udd3d]|\ud83c[\udd00-\udd0c]"},{name:"P",alias:"Punctuation",bmp:"!-#%-\\*,-\\/:;\\?@\\[-\\]_\\{\\}¡§«¶·»¿;·՚-՟։֊־׀׃׆׳״؉؊،؍؛؝-؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰৽੶૰౷಄෴๏๚๛༄-༒༔༺-༽྅࿐-࿔࿙࿚၊-၏჻፠-፨᐀᙮᚛᚜᛫-᛭᜵᜶។-៖៘-៚᠀-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᭽᭾᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‐-‧‰-⁃⁅-⁑⁓-⁞⁽⁾₍₎⌈-⌋〈〉❨-❵⟅⟆⟦-⟯⦃-⦘⧘-⧛⧼⧽⳹-⳼⳾⳿⵰⸀-⸮⸰-⹏⹒-⹝、-〃〈-】〔-〟〰〽゠・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꣼꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫﴾﴿︐-︙︰-﹒﹔-﹡﹣﹨﹪﹫!-#%-*,-/:;?@[-]_{}⦅-・",astral:"\ud800[\udd00-\udd02\udf9f\udfd0]|𐕯|\ud802[\udc57\udd1f\udd3f\ude50-\ude58\ude7f\udef0-\udef6\udf39-\udf3f\udf99-\udf9c]|\ud803[\udead\udf55-\udf59\udf86-\udf89]|\ud804[\udc47-\udc4d\udcbb\udcbc\udcbe-\udcc1\udd40-\udd43\udd74\udd75\uddc5-\uddc8\uddcd\udddb\udddd-\udddf\ude38-\ude3d\udea9]|\ud805[\udc4b-\udc4f\udc5a\udc5b\udc5d\udcc6\uddc1-\uddd7\ude41-\ude43\ude60-\ude6c\udeb9\udf3c-\udf3e]|\ud806[\udc3b\udd44-\udd46\udde2\ude3f-\ude46\ude9a-\ude9c\ude9e-\udea2]|\ud807[\udc41-\udc45\udc70\udc71\udef7\udef8\udfff]|\ud809[\udc70-\udc74]|\ud80b[\udff1\udff2]|\ud81a[\ude6e\ude6f\udef5\udf37-\udf3b\udf44]|\ud81b[\ude97-\ude9a\udfe2]|𛲟|\ud836[\ude87-\ude8b]|\ud83a[\udd5e\udd5f]"},{name:"Pc",alias:"Connector_Punctuation",bmp:"_‿⁀⁔︳︴﹍-﹏_"},{name:"Pd",alias:"Dash_Punctuation",bmp:"\\-֊־᐀᠆‐-―⸗⸚⸺⸻⹀⹝〜〰゠︱︲﹘﹣-",astral:"𐺭"},{name:"Pe",alias:"Close_Punctuation",bmp:"\\)\\]\\}༻༽᚜⁆⁾₎⌉⌋〉❩❫❭❯❱❳❵⟆⟧⟩⟫⟭⟯⦄⦆⦈⦊⦌⦎⦐⦒⦔⦖⦘⧙⧛⧽⸣⸥⸧⸩⹖⹘⹚⹜〉》」』】〕〗〙〛〞〟﴾︘︶︸︺︼︾﹀﹂﹄﹈﹚﹜﹞)]}⦆」"},{name:"Pf",alias:"Final_Punctuation",bmp:"»’”›⸃⸅⸊⸍⸝⸡"},{name:"Pi",alias:"Initial_Punctuation",bmp:"«‘‛“‟‹⸂⸄⸉⸌⸜⸠"},{name:"Po",alias:"Other_Punctuation",bmp:"!-#%-'\\*,\\.\\/:;\\?@\\¡§¶·¿;·՚-՟։׀׃׆׳״؉؊،؍؛؝-؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰৽੶૰౷಄෴๏๚๛༄-༒༔྅࿐-࿔࿙࿚၊-၏჻፠-፨᙮᛫-᛭᜵᜶។-៖៘-៚᠀-᠅᠇-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᭽᭾᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‖‗†-‧‰-‸※-‾⁁-⁃⁇-⁑⁓⁕-⁞⳹-⳼⳾⳿⵰⸀⸁⸆-⸈⸋⸎-⸖⸘⸙⸛⸞⸟⸪-⸮⸰-⸹⸼-⸿⹁⹃-⹏⹒-⹔、-〃〽・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꣼꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫︐-︖︙︰﹅﹆﹉-﹌﹐-﹒﹔-﹗﹟-﹡﹨﹪﹫!-#%-'*,./:;?@\。、・",astral:"\ud800[\udd00-\udd02\udf9f\udfd0]|𐕯|\ud802[\udc57\udd1f\udd3f\ude50-\ude58\ude7f\udef0-\udef6\udf39-\udf3f\udf99-\udf9c]|\ud803[\udf55-\udf59\udf86-\udf89]|\ud804[\udc47-\udc4d\udcbb\udcbc\udcbe-\udcc1\udd40-\udd43\udd74\udd75\uddc5-\uddc8\uddcd\udddb\udddd-\udddf\ude38-\ude3d\udea9]|\ud805[\udc4b-\udc4f\udc5a\udc5b\udc5d\udcc6\uddc1-\uddd7\ude41-\ude43\ude60-\ude6c\udeb9\udf3c-\udf3e]|\ud806[\udc3b\udd44-\udd46\udde2\ude3f-\ude46\ude9a-\ude9c\ude9e-\udea2]|\ud807[\udc41-\udc45\udc70\udc71\udef7\udef8\udfff]|\ud809[\udc70-\udc74]|\ud80b[\udff1\udff2]|\ud81a[\ude6e\ude6f\udef5\udf37-\udf3b\udf44]|\ud81b[\ude97-\ude9a\udfe2]|𛲟|\ud836[\ude87-\ude8b]|\ud83a[\udd5e\udd5f]"},{name:"Ps",alias:"Open_Punctuation",bmp:"\\(\\[\\{༺༼᚛‚„⁅⁽₍⌈⌊〈❨❪❬❮❰❲❴⟅⟦⟨⟪⟬⟮⦃⦅⦇⦉⦋⦍⦏⦑⦓⦕⦗⧘⧚⧼⸢⸤⸦⸨⹂⹕⹗⹙⹛〈《「『【〔〖〘〚〝﴿︗︵︷︹︻︽︿﹁﹃﹇﹙﹛﹝([{⦅「"},{name:"S",alias:"Symbol",bmp:"\\$\\+<->\\^`\\|~¢-¦¨©¬®-±´¸×÷˂-˅˒-˟˥-˫˭˯-˿͵΄΅϶҂֍-֏؆-؈؋؎؏۞۩۽۾߶߾߿࢈৲৳৺৻૱୰௳-௺౿൏൹฿༁-༃༓༕-༗༚-༟༴༶༸྾-࿅࿇-࿌࿎࿏࿕-࿘႞႟᎐-᎙᙭៛᥀᧞-᧿᭡-᭪᭴-᭼᾽᾿-῁῍-῏῝-῟῭-`´῾⁄⁒⁺-⁼₊-₌₠-⃀℀℁℃-℆℈℉℔№-℘℞-℣℥℧℩℮℺℻⅀-⅄⅊-⅍⅏↊↋←-⌇⌌-⌨⌫-␦⑀-⑊⒜-ⓩ─-❧➔-⟄⟇-⟥⟰-⦂⦙-⧗⧜-⧻⧾-⭳⭶-⮕⮗-⯿⳥-⳪⹐⹑⺀-⺙⺛-⻳⼀-⿕⿰-⿻〄〒〓〠〶〷〾〿゛゜㆐㆑㆖-㆟㇀-㇣㈀-㈞㈪-㉇㉐㉠-㉿㊊-㊰㋀-㏿䷀-䷿꒐-꓆꜀-꜖꜠꜡꞉꞊꠨-꠫꠶-꠹꩷-꩹꭛꭪꭫﬩﮲-﯂﵀-﵏﷏﷼-﷿﹢﹤-﹦﹩$+<->^`|~¢-₩│-○�",astral:"\ud800[\udd37-\udd3f\udd79-\udd89\udd8c-\udd8e\udd90-\udd9c\udda0\uddd0-\uddfc]|\ud802[\udc77\udc78\udec8]|𑜿|\ud807[\udfd5-\udff1]|\ud81a[\udf3c-\udf3f\udf45]|𛲜|\ud833[\udf50-\udfc3]|\ud834[\udc00-\udcf5\udd00-\udd26\udd29-\udd64\udd6a-\udd6c\udd83\udd84\udd8c-\udda9\uddae-\uddea\ude00-\ude41\ude45\udf00-\udf56]|\ud835[\udec1\udedb\udefb\udf15\udf35\udf4f\udf6f\udf89\udfa9\udfc3]|\ud836[\udc00-\uddff\ude37-\ude3a\ude6d-\ude74\ude76-\ude83\ude85\ude86]|\ud838[\udd4f\udeff]|\ud83b[\udcac\udcb0\udd2e\udef0\udef1]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbf\udcc1-\udccf\udcd1-\udcf5\udd0d-\uddad\udde6-\ude02\ude10-\ude3b\ude40-\ude48\ude50\ude51\ude60-\ude65\udf00-\udfff]|\ud83d[\udc00-\uded7\udedd-\udeec\udef0-\udefc\udf00-\udf73\udf80-\udfd8\udfe0-\udfeb\udff0]|\ud83e[\udc00-\udc0b\udc10-\udc47\udc50-\udc59\udc60-\udc87\udc90-\udcad\udcb0\udcb1\udd00-\ude53\ude60-\ude6d\ude70-\ude74\ude78-\ude7c\ude80-\ude86\ude90-\udeac\udeb0-\udeba\udec0-\udec5\uded0-\uded9\udee0-\udee7\udef0-\udef6\udf00-\udf92\udf94-\udfca]"},{name:"Sc",alias:"Currency_Symbol",bmp:"\\$¢-¥֏؋߾߿৲৳৻૱௹฿៛₠-⃀꠸﷼﹩$¢£¥₩",astral:"\ud807[\udfdd-\udfe0]|𞋿|𞲰"},{name:"Sk",alias:"Modifier_Symbol",bmp:"\\^`¨¯´¸˂-˅˒-˟˥-˫˭˯-˿͵΄΅࢈᾽᾿-῁῍-῏῝-῟῭-`´῾゛゜꜀-꜖꜠꜡꞉꞊꭛꭪꭫﮲-﯂^` ̄",astral:"\ud83c[\udffb-\udfff]"},{name:"Sm",alias:"Math_Symbol",bmp:"\\+<->\\|~¬±×÷϶؆-؈⁄⁒⁺-⁼₊-₌℘⅀-⅄⅋←-↔↚↛↠↣↦↮⇎⇏⇒⇔⇴-⋿⌠⌡⍼⎛-⎳⏜-⏡▷◁◸-◿♯⟀-⟄⟇-⟥⟰-⟿⤀-⦂⦙-⧗⧜-⧻⧾-⫿⬰-⭄⭇-⭌﬩﹢﹤-﹦+<->|~¬←-↓",astral:"\ud835[\udec1\udedb\udefb\udf15\udf35\udf4f\udf6f\udf89\udfa9\udfc3]|\ud83b[\udef0\udef1]"},{name:"So",alias:"Other_Symbol",bmp:"¦©®°҂֍֎؎؏۞۩۽۾߶৺୰௳-௸௺౿൏൹༁-༃༓༕-༗༚-༟༴༶༸྾-࿅࿇-࿌࿎࿏࿕-࿘႞႟᎐-᎙᙭᥀᧞-᧿᭡-᭪᭴-᭼℀℁℃-℆℈℉℔№℗℞-℣℥℧℩℮℺℻⅊⅌⅍⅏↊↋↕-↙↜-↟↡↢↤↥↧-↭↯-⇍⇐⇑⇓⇕-⇳⌀-⌇⌌-⌟⌢-⌨⌫-⍻⍽-⎚⎴-⏛⏢-␦⑀-⑊⒜-ⓩ─-▶▸-◀◂-◷☀-♮♰-❧➔-➿⠀-⣿⬀-⬯⭅⭆⭍-⭳⭶-⮕⮗-⯿⳥-⳪⹐⹑⺀-⺙⺛-⻳⼀-⿕⿰-⿻〄〒〓〠〶〷〾〿㆐㆑㆖-㆟㇀-㇣㈀-㈞㈪-㉇㉐㉠-㉿㊊-㊰㋀-㏿䷀-䷿꒐-꓆꠨-꠫꠶꠷꠹꩷-꩹﵀-﵏﷏﷽-﷿¦│■○�",astral:"\ud800[\udd37-\udd3f\udd79-\udd89\udd8c-\udd8e\udd90-\udd9c\udda0\uddd0-\uddfc]|\ud802[\udc77\udc78\udec8]|𑜿|\ud807[\udfd5-\udfdc\udfe1-\udff1]|\ud81a[\udf3c-\udf3f\udf45]|𛲜|\ud833[\udf50-\udfc3]|\ud834[\udc00-\udcf5\udd00-\udd26\udd29-\udd64\udd6a-\udd6c\udd83\udd84\udd8c-\udda9\uddae-\uddea\ude00-\ude41\ude45\udf00-\udf56]|\ud836[\udc00-\uddff\ude37-\ude3a\ude6d-\ude74\ude76-\ude83\ude85\ude86]|𞅏|\ud83b[\udcac\udd2e]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbf\udcc1-\udccf\udcd1-\udcf5\udd0d-\uddad\udde6-\ude02\ude10-\ude3b\ude40-\ude48\ude50\ude51\ude60-\ude65\udf00-\udffa]|\ud83d[\udc00-\uded7\udedd-\udeec\udef0-\udefc\udf00-\udf73\udf80-\udfd8\udfe0-\udfeb\udff0]|\ud83e[\udc00-\udc0b\udc10-\udc47\udc50-\udc59\udc60-\udc87\udc90-\udcad\udcb0\udcb1\udd00-\ude53\ude60-\ude6d\ude70-\ude74\ude78-\ude7c\ude80-\ude86\ude90-\udeac\udeb0-\udeba\udec0-\udec5\uded0-\uded9\udee0-\udee7\udef0-\udef6\udf00-\udf92\udf94-\udfca]"},{name:"Z",alias:"Separator",bmp:"    - \u2028\u2029   "},{name:"Zl",alias:"Line_Separator",bmp:"\u2028"},{name:"Zp",alias:"Paragraph_Separator",bmp:"\u2029"},{name:"Zs",alias:"Space_Separator",bmp:"    -    "}]),W=U([{name:"ASCII",bmp:"\0-"},{name:"Alphabetic",bmp:"A-Za-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͅͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈְ-ׇֽֿׁׂׅׄא-תׯ-ײؐ-ؚؠ-ٗٙ-ٟٮ-ۓە-ۜۡ-ۭۨ-ۯۺ-ۼۿܐ-ܿݍ-ޱߊ-ߪߴߵߺࠀ-ࠗࠚ-ࠬࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉࣔ-ࣣࣟ-ࣰࣩ-ऻऽ-ौॎ-ॐॕ-ॣॱ-ঃঅ-ঌএঐও-নপ-রলশ-হঽ-ৄেৈোৌৎৗড়ঢ়য়-ৣৰৱৼਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਾ-ੂੇੈੋੌੑਖ਼-ੜਫ਼ੰ-ੵઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽ-ૅે-ૉોૌૐૠ-ૣૹ-ૼଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽ-ୄେୈୋୌୖୗଡ଼ଢ଼ୟ-ୣୱஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-ௌௐௗఀ-ఃఅ-ఌఎ-ఐఒ-నప-హఽ-ౄె-ైొ-ౌౕౖౘ-ౚౝౠ-ౣಀ-ಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೄೆ-ೈೊ-ೌೕೖೝೞೠ-ೣೱೲഀ-ഌഎ-ഐഒ-ഺഽ-ൄെ-ൈൊ-ൌൎൔ-ൗൟ-ൣൺ-ൿඁ-ඃඅ-ඖක-නඳ-රලව-ෆා-ුූෘ-ෟෲෳก-ฺเ-ๆํກຂຄຆ-ຊຌ-ຣລວ-ູົ-ຽເ-ໄໆໍໜ-ໟༀཀ-ཇཉ-ཬཱ-ཱྀྈ-ྗྙ-ྼက-ံးျ-ဿၐ-ႏႚ-ႝႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜓᜟ-ᜳᝀ-ᝓᝠ-ᝬᝮ-ᝰᝲᝳក-ឳា-ៈៗៜᠠ-ᡸᢀ-ᢪᢰ-ᣵᤀ-ᤞᤠ-ᤫᤰ-ᤸᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨛᨠ-ᩞᩡ-ᩴᪧᪿᫀᫌ-ᫎᬀ-ᬳᬵ-ᭃᭅ-ᭌᮀ-ᮩᮬ-ᮯᮺ-ᯥᯧ-ᯱᰀ-ᰶᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿᷧ-ᷴḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⒶ-ⓩⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⷠ-ⷿⸯ々-〇〡-〩〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙴ-ꙻꙿ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠅꠇ-ꠧꡀ-ꡳꢀ-ꣃꣅꣲ-ꣷꣻꣽ-ꣿꤊ-ꤪꤰ-ꥒꥠ-ꥼꦀ-ꦲꦴ-ꦿꧏꧠ-ꧯꧺ-ꧾꨀ-ꨶꩀ-ꩍꩠ-ꩶꩺ-ꪾꫀꫂꫛ-ꫝꫠ-ꫯꫲ-ꫵꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯪ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",astral:"\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\udd40-\udd74\ude80-\ude9c\udea0-\uded0\udf00-\udf1f\udf2d-\udf4a\udf50-\udf7a\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf\udfd1-\udfd5]|\ud801[\udc00-\udc9d\udcb0-\udcd3\udcd8-\udcfb\udd00-\udd27\udd30-\udd63\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc\ude00-\udf36\udf40-\udf55\udf60-\udf67\udf80-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udc60-\udc76\udc80-\udc9e\udce0-\udcf2\udcf4\udcf5\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00-\ude03\ude05\ude06\ude0c-\ude13\ude15-\ude17\ude19-\ude35\ude60-\ude7c\ude80-\ude9c\udec0-\udec7\udec9-\udee4\udf00-\udf35\udf40-\udf55\udf60-\udf72\udf80-\udf91]|\ud803[\udc00-\udc48\udc80-\udcb2\udcc0-\udcf2\udd00-\udd27\ude80-\udea9\udeab\udeac\udeb0\udeb1\udf00-\udf1c\udf27\udf30-\udf45\udf70-\udf81\udfb0-\udfc4\udfe0-\udff6]|\ud804[\udc00-\udc45\udc71-\udc75\udc82-\udcb8\udcc2\udcd0-\udce8\udd00-\udd32\udd44-\udd47\udd50-\udd72\udd76\udd80-\uddbf\uddc1-\uddc4\uddce\uddcf\uddda\udddc\ude00-\ude11\ude13-\ude34\ude37\ude3e\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea8\udeb0-\udee8\udf00-\udf03\udf05-\udf0c\udf0f\udf10\udf13-\udf28\udf2a-\udf30\udf32\udf33\udf35-\udf39\udf3d-\udf44\udf47\udf48\udf4b\udf4c\udf50\udf57\udf5d-\udf63]|\ud805[\udc00-\udc41\udc43-\udc45\udc47-\udc4a\udc5f-\udc61\udc80-\udcc1\udcc4\udcc5\udcc7\udd80-\uddb5\uddb8-\uddbe\uddd8-\udddd\ude00-\ude3e\ude40\ude44\ude80-\udeb5\udeb8\udf00-\udf1a\udf1d-\udf2a\udf40-\udf46]|\ud806[\udc00-\udc38\udca0-\udcdf\udcff-\udd06\udd09\udd0c-\udd13\udd15\udd16\udd18-\udd35\udd37\udd38\udd3b\udd3c\udd3f-\udd42\udda0-\udda7\uddaa-\uddd7\uddda-\udddf\udde1\udde3\udde4\ude00-\ude32\ude35-\ude3e\ude50-\ude97\ude9d\udeb0-\udef8]|\ud807[\udc00-\udc08\udc0a-\udc36\udc38-\udc3e\udc40\udc72-\udc8f\udc92-\udca7\udca9-\udcb6\udd00-\udd06\udd08\udd09\udd0b-\udd36\udd3a\udd3c\udd3d\udd3f-\udd41\udd43\udd46\udd47\udd60-\udd65\udd67\udd68\udd6a-\udd8e\udd90\udd91\udd93-\udd96\udd98\udee0-\udef6\udfb0]|\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e\udc80-\udd43]|\ud80b[\udf90-\udff0]|[\ud80c\ud81c-\ud820\ud822\ud840-\ud868\ud86a-\ud86c\ud86f-\ud872\ud874-\ud879\ud880-\ud883][\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38\ude40-\ude5e\ude70-\udebe\uded0-\udeed\udf00-\udf2f\udf40-\udf43\udf63-\udf77\udf7d-\udf8f]|\ud81b[\ude40-\ude7f\udf00-\udf4a\udf4f-\udf87\udf8f-\udf9f\udfe0\udfe1\udfe3\udff0\udff1]|\ud821[\udc00-\udff7]|\ud823[\udc00-\udcd5\udd00-\udd08]|\ud82b[\udff0-\udff3\udff5-\udffb\udffd\udffe]|\ud82c[\udc00-\udd22\udd50-\udd52\udd64-\udd67\udd70-\udefb]|\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99\udc9e]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud837[\udf00-\udf1e]|\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23\udc24\udc26-\udc2a\udd00-\udd2c\udd37-\udd3d\udd4e\ude90-\udead\udec0-\udeeb]|\ud839[\udfe0-\udfe6\udfe8-\udfeb\udfed\udfee\udff0-\udffe]|\ud83a[\udc00-\udcc4\udd00-\udd43\udd47\udd4b]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud83c[\udd30-\udd49\udd50-\udd69\udd70-\udd89]|\ud869[\udc00-\udedf\udf00-\udfff]|\ud86d[\udc00-\udf38\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\ud884[\udc00-\udf4a]"},{name:"Any",isBmpLast:!0,bmp:"\0-￿",astral:"[\ud800-\udbff][\udc00-\udfff]"},{name:"Default_Ignorable_Code_Point",bmp:"­͏؜ᅟᅠ឴឵᠋-᠏​-‏‪-‮⁠-ㅤ︀-️\ufeffᅠ￰-￸",astral:"\ud82f[\udca0-\udca3]|\ud834[\udd73-\udd7a]|[\udb40-\udb43][\udc00-\udfff]"},{name:"Lowercase",bmp:"a-zªµºß-öø-ÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżž-ƀƃƅƈƌƍƒƕƙ-ƛƞơƣƥƨƪƫƭưƴƶƹƺƽ-ƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳ-ȹȼȿɀɂɇɉɋɍɏ-ʓʕ-ʸˀˁˠ-ˤͅͱͳͷͺ-ͽΐά-ώϐϑϕ-ϗϙϛϝϟϡϣϥϧϩϫϭϯ-ϳϵϸϻϼа-џѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӏӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧԩԫԭԯՠ-ֈა-ჺჽ-ჿᏸ-ᏽᲀ-ᲈᴀ-ᶿḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕ-ẝẟạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿ-ἇἐ-ἕἠ-ἧἰ-ἷὀ-ὅὐ-ὗὠ-ὧὰ-ώᾀ-ᾇᾐ-ᾗᾠ-ᾧᾰ-ᾴᾶᾷιῂ-ῄῆῇῐ-ΐῖῗῠ-ῧῲ-ῴῶῷⁱⁿₐ-ₜℊℎℏℓℯℴℹℼℽⅆ-ⅉⅎⅰ-ⅿↄⓐ-ⓩⰰ-ⱟⱡⱥⱦⱨⱪⱬⱱⱳⱴⱶ-ⱽⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⳬⳮⳳⴀ-ⴥⴧⴭꙁꙃꙅꙇꙉꙋꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꚙꚛ-ꚝꜣꜥꜧꜩꜫꜭꜯ-ꜱꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯ-ꝸꝺꝼꝿꞁꞃꞅꞇꞌꞎꞑꞓ-ꞕꞗꞙꞛꞝꞟꞡꞣꞥꞧꞩꞯꞵꞷꞹꞻꞽꞿꟁꟃꟈꟊꟑꟓꟕꟗꟙꟶꟸ-ꟺꬰ-ꭚꭜ-ꭨꭰ-ꮿff-stﬓ-ﬗa-z",astral:"\ud801[\udc28-\udc4f\udcd8-\udcfb\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc\udf80\udf83-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud803[\udcc0-\udcf2]|\ud806[\udcc0-\udcdf]|\ud81b[\ude60-\ude7f]|\ud835[\udc1a-\udc33\udc4e-\udc54\udc56-\udc67\udc82-\udc9b\udcb6-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udccf\udcea-\udd03\udd1e-\udd37\udd52-\udd6b\udd86-\udd9f\uddba-\uddd3\uddee-\ude07\ude22-\ude3b\ude56-\ude6f\ude8a-\udea5\udec2-\udeda\udedc-\udee1\udefc-\udf14\udf16-\udf1b\udf36-\udf4e\udf50-\udf55\udf70-\udf88\udf8a-\udf8f\udfaa-\udfc2\udfc4-\udfc9\udfcb]|\ud837[\udf00-\udf09\udf0b-\udf1e]|\ud83a[\udd22-\udd43]"},{name:"Noncharacter_Code_Point",bmp:"﷐-﷯￾￿",astral:"[\ud83f\ud87f\ud8bf\ud8ff\ud93f\ud97f\ud9bf\ud9ff\uda3f\uda7f\udabf\udaff\udb3f\udb7f\udbbf\udbff][\udffe\udfff]"},{name:"Uppercase",bmp:"A-ZÀ-ÖØ-ÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉ-ƋƎ-ƑƓƔƖ-ƘƜƝƟƠƢƤƦƧƩƬƮƯƱ-ƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶ-ǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁɃ-ɆɈɊɌɎͰͲͶͿΆΈ-ΊΌΎΏΑ-ΡΣ-ΫϏϒ-ϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽ-ЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸӺӼӾԀԂԄԆԈԊԌԎԐԒԔԖԘԚԜԞԠԢԤԦԨԪԬԮԱ-ՖႠ-ჅჇჍᎠ-ᏵᲐ-ᲺᲽ-ᲿḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẞẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸỺỼỾἈ-ἏἘ-ἝἨ-ἯἸ-ἿὈ-ὍὙὛὝὟὨ-ὯᾸ-ΆῈ-ΉῘ-ΊῨ-ῬῸ-Ώℂℇℋ-ℍℐ-ℒℕℙ-ℝℤΩℨK-ℭℰ-ℳℾℿⅅⅠ-ⅯↃⒶ-ⓏⰀ-ⰯⱠⱢ-ⱤⱧⱩⱫⱭ-ⱰⱲⱵⱾ-ⲀⲂⲄⲆⲈⲊⲌⲎⲐⲒⲔⲖⲘⲚⲜⲞⲠⲢⲤⲦⲨⲪⲬⲮⲰⲲⲴⲶⲸⲺⲼⲾⳀⳂⳄⳆⳈⳊⳌⳎⳐⳒⳔⳖⳘⳚⳜⳞⳠⳢⳫⳭⳲꙀꙂꙄꙆꙈꙊꙌꙎꙐꙒꙔꙖꙘꙚꙜꙞꙠꙢꙤꙦꙨꙪꙬꚀꚂꚄꚆꚈꚊꚌꚎꚐꚒꚔꚖꚘꚚꜢꜤꜦꜨꜪꜬꜮꜲꜴꜶꜸꜺꜼꜾꝀꝂꝄꝆꝈꝊꝌꝎꝐꝒꝔꝖꝘꝚꝜꝞꝠꝢꝤꝦꝨꝪꝬꝮꝹꝻꝽꝾꞀꞂꞄꞆꞋꞍꞐꞒꞖꞘꞚꞜꞞꞠꞢꞤꞦꞨꞪ-ꞮꞰ-ꞴꞶꞸꞺꞼꞾꟀꟂꟄ-ꟇꟉꟐꟖꟘꟵA-Z",astral:"\ud801[\udc00-\udc27\udcb0-\udcd3\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95]|\ud803[\udc80-\udcb2]|\ud806[\udca0-\udcbf]|\ud81b[\ude40-\ude5f]|\ud835[\udc00-\udc19\udc34-\udc4d\udc68-\udc81\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb5\udcd0-\udce9\udd04\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd38\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd6c-\udd85\udda0-\uddb9\uddd4-\udded\ude08-\ude21\ude3c-\ude55\ude70-\ude89\udea8-\udec0\udee2-\udefa\udf1c-\udf34\udf56-\udf6e\udf90-\udfa8\udfca]|\ud83a[\udd00-\udd21]|\ud83c[\udd30-\udd49\udd50-\udd69\udd70-\udd89]"},{name:"White_Space",bmp:"\t-\r …   - \u2028\u2029   "}]),J=U([{name:"Adlam",astral:"\ud83a[\udd00-\udd4b\udd50-\udd59\udd5e\udd5f]"},{name:"Ahom",astral:"\ud805[\udf00-\udf1a\udf1d-\udf2b\udf30-\udf46]"},{name:"Anatolian_Hieroglyphs",astral:"\ud811[\udc00-\ude46]"},{name:"Arabic",bmp:"؀-؄؆-؋؍-ؚ؜-؞ؠ-ؿف-يٖ-ٯٱ-ۜ۞-ۿݐ-ݿࡰ-ࢎ࢐࢑࢘-ࣣ࣡-ࣿﭐ-﯂ﯓ-ﴽ﵀-ﶏﶒ-ﷇ﷏ﷰ-﷿ﹰ-ﹴﹶ-ﻼ",astral:"\ud803[\ude60-\ude7e]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb\udef0\udef1]"},{name:"Armenian",bmp:"Ա-Ֆՙ-֊֍-֏ﬓ-ﬗ"},{name:"Avestan",astral:"\ud802[\udf00-\udf35\udf39-\udf3f]"},{name:"Balinese",bmp:"ᬀ-ᭌ᭐-᭾"},{name:"Bamum",bmp:"ꚠ-꛷",astral:"\ud81a[\udc00-\ude38]"},{name:"Bassa_Vah",astral:"\ud81a[\uded0-\udeed\udef0-\udef5]"},{name:"Batak",bmp:"ᯀ-᯳᯼-᯿"},{name:"Bengali",bmp:"ঀ-ঃঅ-ঌএঐও-নপ-রলশ-হ়-ৄেৈো-ৎৗড়ঢ়য়-ৣ০-৾"},{name:"Bhaiksuki",astral:"\ud807[\udc00-\udc08\udc0a-\udc36\udc38-\udc45\udc50-\udc6c]"},{name:"Bopomofo",bmp:"˪˫ㄅ-ㄯㆠ-ㆿ"},{name:"Brahmi",astral:"\ud804[\udc00-\udc4d\udc52-\udc75\udc7f]"},{name:"Braille",bmp:"⠀-⣿"},{name:"Buginese",bmp:"ᨀ-ᨛ᨞᨟"},{name:"Buhid",bmp:"ᝀ-ᝓ"},{name:"Canadian_Aboriginal",bmp:"᐀-ᙿᢰ-ᣵ",astral:"\ud806[\udeb0-\udebf]"},{name:"Carian",astral:"\ud800[\udea0-\uded0]"},{name:"Caucasian_Albanian",astral:"\ud801[\udd30-\udd63\udd6f]"},{name:"Chakma",astral:"\ud804[\udd00-\udd34\udd36-\udd47]"},{name:"Cham",bmp:"ꨀ-ꨶꩀ-ꩍ꩐-꩙꩜-꩟"},{name:"Cherokee",bmp:"Ꭰ-Ᏽᏸ-ᏽꭰ-ꮿ"},{name:"Chorasmian",astral:"\ud803[\udfb0-\udfcb]"},{name:"Common",bmp:"\0-@\\[-`\\{-©«-¹»-¿×÷ʹ-˟˥-˩ˬ-˿ʹ;΅·؅،؛؟ـ۝࣢।॥฿࿕-࿘჻᛫-᛭᜵᜶᠂᠃᠅᳓᳡ᳩ-ᳬᳮ-ᳳᳵ-᳷ᳺ -​‎-⁤⁦-⁰⁴-⁾₀-₎₠-⃀℀-℥℧-℩ℬ-ℱℳ-⅍⅏-⅟↉-↋←-␦⑀-⑊①-⟿⤀-⭳⭶-⮕⮗-⯿⸀-⹝⿰-⿻ -〄〆〈-〠〰-〷〼-〿゛゜゠・ー㆐-㆟㇀-㇣㈠-㉟㉿-㋏㋿㍘-㏿䷀-䷿꜀-꜡ꞈ-꞊꠰-꠹꤮ꧏ꭛꭪꭫﴾﴿︐-︙︰-﹒﹔-﹦﹨-﹫\ufeff!-@[-`{-・ー゙゚¢-₩│-○-�",astral:"\ud800[\udd00-\udd02\udd07-\udd33\udd37-\udd3f\udd90-\udd9c\uddd0-\uddfc\udee1-\udefb]|\ud82f[\udca0-\udca3]|\ud833[\udf50-\udfc3]|\ud834[\udc00-\udcf5\udd00-\udd26\udd29-\udd66\udd6a-\udd7a\udd83\udd84\udd8c-\udda9\uddae-\uddea\udee0-\udef3\udf00-\udf56\udf60-\udf78]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udfcb\udfce-\udfff]|\ud83b[\udc71-\udcb4\udd01-\udd3d]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbf\udcc1-\udccf\udcd1-\udcf5\udd00-\uddad\udde6-\uddff\ude01\ude02\ude10-\ude3b\ude40-\ude48\ude50\ude51\ude60-\ude65\udf00-\udfff]|\ud83d[\udc00-\uded7\udedd-\udeec\udef0-\udefc\udf00-\udf73\udf80-\udfd8\udfe0-\udfeb\udff0]|\ud83e[\udc00-\udc0b\udc10-\udc47\udc50-\udc59\udc60-\udc87\udc90-\udcad\udcb0\udcb1\udd00-\ude53\ude60-\ude6d\ude70-\ude74\ude78-\ude7c\ude80-\ude86\ude90-\udeac\udeb0-\udeba\udec0-\udec5\uded0-\uded9\udee0-\udee7\udef0-\udef6\udf00-\udf92\udf94-\udfca\udff0-\udff9]|\udb40[\udc01\udc20-\udc7f]"},{name:"Coptic",bmp:"Ϣ-ϯⲀ-ⳳ⳹-⳿"},{name:"Cuneiform",astral:"\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e\udc70-\udc74\udc80-\udd43]"},{name:"Cypriot",astral:"\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f]"},{name:"Cypro_Minoan",astral:"\ud80b[\udf90-\udff2]"},{name:"Cyrillic",bmp:"Ѐ-҄҇-ԯᲀ-ᲈᴫᵸⷠ-ⷿꙀ-ꚟ︮︯"},{name:"Deseret",astral:"\ud801[\udc00-\udc4f]"},{name:"Devanagari",bmp:"ऀ-ॐॕ-ॣ०-ॿ꣠-ꣿ"},{name:"Dives_Akuru",astral:"\ud806[\udd00-\udd06\udd09\udd0c-\udd13\udd15\udd16\udd18-\udd35\udd37\udd38\udd3b-\udd46\udd50-\udd59]"},{name:"Dogra",astral:"\ud806[\udc00-\udc3b]"},{name:"Duployan",astral:"\ud82f[\udc00-\udc6a\udc70-\udc7c\udc80-\udc88\udc90-\udc99\udc9c-\udc9f]"},{name:"Egyptian_Hieroglyphs",astral:"\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e\udc30-\udc38]"},{name:"Elbasan",astral:"\ud801[\udd00-\udd27]"},{name:"Elymaic",astral:"\ud803[\udfe0-\udff6]"},{name:"Ethiopic",bmp:"ሀ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፝-፼ᎀ-᎙ⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮ",astral:"\ud839[\udfe0-\udfe6\udfe8-\udfeb\udfed\udfee\udff0-\udffe]"},{name:"Georgian",bmp:"Ⴀ-ჅჇჍა-ჺჼ-ჿᲐ-ᲺᲽ-Ჿⴀ-ⴥⴧⴭ"},{name:"Glagolitic",bmp:"Ⰰ-ⱟ",astral:"\ud838[\udc00-\udc06\udc08-\udc18\udc1b-\udc21\udc23\udc24\udc26-\udc2a]"},{name:"Gothic",astral:"\ud800[\udf30-\udf4a]"},{name:"Grantha",astral:"\ud804[\udf00-\udf03\udf05-\udf0c\udf0f\udf10\udf13-\udf28\udf2a-\udf30\udf32\udf33\udf35-\udf39\udf3c-\udf44\udf47\udf48\udf4b-\udf4d\udf50\udf57\udf5d-\udf63\udf66-\udf6c\udf70-\udf74]"},{name:"Greek",bmp:"Ͱ-ͳ͵-ͷͺ-ͽͿ΄ΆΈ-ΊΌΎ-ΡΣ-ϡϰ-Ͽᴦ-ᴪᵝ-ᵡᵦ-ᵪᶿἀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ῄῆ-ΐῖ-Ί῝-`ῲ-ῴῶ-῾Ωꭥ",astral:"\ud800[\udd40-\udd8e\udda0]|\ud834[\ude00-\ude45]"},{name:"Gujarati",bmp:"ઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હ઼-ૅે-ૉો-્ૐૠ-ૣ૦-૱ૹ-૿"},{name:"Gunjala_Gondi",astral:"\ud807[\udd60-\udd65\udd67\udd68\udd6a-\udd8e\udd90\udd91\udd93-\udd98\udda0-\udda9]"},{name:"Gurmukhi",bmp:"ਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹ਼ਾ-ੂੇੈੋ-੍ੑਖ਼-ੜਫ਼੦-੶"},{name:"Han",bmp:"⺀-⺙⺛-⻳⼀-⿕々〇〡-〩〸-〻㐀-䶿一-鿿豈-舘並-龎",astral:"\ud81b[\udfe2\udfe3\udff0\udff1]|[\ud840-\ud868\ud86a-\ud86c\ud86f-\ud872\ud874-\ud879\ud880-\ud883][\udc00-\udfff]|\ud869[\udc00-\udedf\udf00-\udfff]|\ud86d[\udc00-\udf38\udf40-\udfff]|\ud86e[\udc00-\udc1d\udc20-\udfff]|\ud873[\udc00-\udea1\udeb0-\udfff]|\ud87a[\udc00-\udfe0]|\ud87e[\udc00-\ude1d]|\ud884[\udc00-\udf4a]"},{name:"Hangul",bmp:"ᄀ-ᇿ〮〯ㄱ-ㆎ㈀-㈞㉠-㉾ꥠ-ꥼ가-힣ힰ-ퟆퟋ-ퟻᅠ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ"},{name:"Hanifi_Rohingya",astral:"\ud803[\udd00-\udd27\udd30-\udd39]"},{name:"Hanunoo",bmp:"ᜠ-᜴"},{name:"Hatran",astral:"\ud802[\udce0-\udcf2\udcf4\udcf5\udcfb-\udcff]"},{name:"Hebrew",bmp:"֑-ׇא-תׯ-״יִ-זּטּ-לּמּנּסּףּפּצּ-ﭏ"},{name:"Hiragana",bmp:"ぁ-ゖゝ-ゟ",astral:"\ud82c[\udc01-\udd1f\udd50-\udd52]|🈀"},{name:"Imperial_Aramaic",astral:"\ud802[\udc40-\udc55\udc57-\udc5f]"},{name:"Inherited",bmp:"̀-ًͯ҅҆-ٰٕ॑-॔᪰-ᫎ᳐-᳔᳒-᳢᳠-᳨᳭᳴᳸᳹᷀-᷿‌‍⃐-〪⃰-゙゚〭︀-️︠-︭",astral:"\ud800[\uddfd\udee0]|𑌻|\ud833[\udf00-\udf2d\udf30-\udf46]|\ud834[\udd67-\udd69\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad]|\udb40[\udd00-\uddef]"},{name:"Inscriptional_Pahlavi",astral:"\ud802[\udf60-\udf72\udf78-\udf7f]"},{name:"Inscriptional_Parthian",astral:"\ud802[\udf40-\udf55\udf58-\udf5f]"},{name:"Javanese",bmp:"ꦀ-꧍꧐-꧙꧞꧟"},{name:"Kaithi",astral:"\ud804[\udc80-\udcc2\udccd]"},{name:"Kannada",bmp:"ಀ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹ಼-ೄೆ-ೈೊ-್ೕೖೝೞೠ-ೣ೦-೯ೱೲ"},{name:"Katakana",bmp:"ァ-ヺヽ-ヿㇰ-ㇿ㋐-㋾㌀-㍗ヲ-ッア-ン",astral:"\ud82b[\udff0-\udff3\udff5-\udffb\udffd\udffe]|\ud82c[\udc00\udd20-\udd22\udd64-\udd67]"},{name:"Kayah_Li",bmp:"꤀-꤭꤯"},{name:"Kharoshthi",astral:"\ud802[\ude00-\ude03\ude05\ude06\ude0c-\ude13\ude15-\ude17\ude19-\ude35\ude38-\ude3a\ude3f-\ude48\ude50-\ude58]"},{name:"Khitan_Small_Script",astral:"𖿤|\ud822[\udf00-\udfff]|\ud823[\udc00-\udcd5]"},{name:"Khmer",bmp:"ក-៝០-៩៰-៹᧠-᧿"},{name:"Khojki",astral:"\ud804[\ude00-\ude11\ude13-\ude3e]"},{name:"Khudawadi",astral:"\ud804[\udeb0-\udeea\udef0-\udef9]"},{name:"Lao",bmp:"ກຂຄຆ-ຊຌ-ຣລວ-ຽເ-ໄໆ່-ໍ໐-໙ໜ-ໟ"},{name:"Latin",bmp:"A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꟿꬰ-ꭚꭜ-ꭤꭦ-ꭩff-stA-Za-z",astral:"\ud801[\udf80-\udf85\udf87-\udfb0\udfb2-\udfba]|\ud837[\udf00-\udf1e]"},{name:"Lepcha",bmp:"ᰀ-᰷᰻-᱉ᱍ-ᱏ"},{name:"Limbu",bmp:"ᤀ-ᤞᤠ-ᤫᤰ-᤻᥀᥄-᥏"},{name:"Linear_A",astral:"\ud801[\ude00-\udf36\udf40-\udf55\udf60-\udf67]"},{name:"Linear_B",astral:"\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa]"},{name:"Lisu",bmp:"ꓐ-꓿",astral:"𑾰"},{name:"Lycian",astral:"\ud800[\ude80-\ude9c]"},{name:"Lydian",astral:"\ud802[\udd20-\udd39\udd3f]"},{name:"Mahajani",astral:"\ud804[\udd50-\udd76]"},{name:"Makasar",astral:"\ud807[\udee0-\udef8]"},{name:"Malayalam",bmp:"ഀ-ഌഎ-ഐഒ-ൄെ-ൈൊ-൏ൔ-ൣ൦-ൿ"},{name:"Mandaic",bmp:"ࡀ-࡛࡞"},{name:"Manichaean",astral:"\ud802[\udec0-\udee6\udeeb-\udef6]"},{name:"Marchen",astral:"\ud807[\udc70-\udc8f\udc92-\udca7\udca9-\udcb6]"},{name:"Masaram_Gondi",astral:"\ud807[\udd00-\udd06\udd08\udd09\udd0b-\udd36\udd3a\udd3c\udd3d\udd3f-\udd47\udd50-\udd59]"},{name:"Medefaidrin",astral:"\ud81b[\ude40-\ude9a]"},{name:"Meetei_Mayek",bmp:"ꫠ-꫶ꯀ-꯭꯰-꯹"},{name:"Mende_Kikakui",astral:"\ud83a[\udc00-\udcc4\udcc7-\udcd6]"},{name:"Meroitic_Cursive",astral:"\ud802[\udda0-\uddb7\uddbc-\uddcf\uddd2-\uddff]"},{name:"Meroitic_Hieroglyphs",astral:"\ud802[\udd80-\udd9f]"},{name:"Miao",astral:"\ud81b[\udf00-\udf4a\udf4f-\udf87\udf8f-\udf9f]"},{name:"Modi",astral:"\ud805[\ude00-\ude44\ude50-\ude59]"},{name:"Mongolian",bmp:"᠀᠁᠄᠆-᠙ᠠ-ᡸᢀ-ᢪ",astral:"\ud805[\ude60-\ude6c]"},{name:"Mro",astral:"\ud81a[\ude40-\ude5e\ude60-\ude69\ude6e\ude6f]"},{name:"Multani",astral:"\ud804[\ude80-\ude86\ude88\ude8a-\ude8d\ude8f-\ude9d\ude9f-\udea9]"},{name:"Myanmar",bmp:"က-႟ꧠ-ꧾꩠ-ꩿ"},{name:"Nabataean",astral:"\ud802[\udc80-\udc9e\udca7-\udcaf]"},{name:"Nandinagari",astral:"\ud806[\udda0-\udda7\uddaa-\uddd7\uddda-\udde4]"},{name:"New_Tai_Lue",bmp:"ᦀ-ᦫᦰ-ᧉ᧐-᧚᧞᧟"},{name:"Newa",astral:"\ud805[\udc00-\udc5b\udc5d-\udc61]"},{name:"Nko",bmp:"߀-ߺ߽-߿"},{name:"Nushu",astral:"𖿡|\ud82c[\udd70-\udefb]"},{name:"Nyiakeng_Puachue_Hmong",astral:"\ud838[\udd00-\udd2c\udd30-\udd3d\udd40-\udd49\udd4e\udd4f]"},{name:"Ogham",bmp:" -᚜"},{name:"Ol_Chiki",bmp:"᱐-᱿"},{name:"Old_Hungarian",astral:"\ud803[\udc80-\udcb2\udcc0-\udcf2\udcfa-\udcff]"},{name:"Old_Italic",astral:"\ud800[\udf00-\udf23\udf2d-\udf2f]"},{name:"Old_North_Arabian",astral:"\ud802[\ude80-\ude9f]"},{name:"Old_Permic",astral:"\ud800[\udf50-\udf7a]"},{name:"Old_Persian",astral:"\ud800[\udfa0-\udfc3\udfc8-\udfd5]"},{name:"Old_Sogdian",astral:"\ud803[\udf00-\udf27]"},{name:"Old_South_Arabian",astral:"\ud802[\ude60-\ude7f]"},{name:"Old_Turkic",astral:"\ud803[\udc00-\udc48]"},{name:"Old_Uyghur",astral:"\ud803[\udf70-\udf89]"},{name:"Oriya",bmp:"ଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହ଼-ୄେୈୋ-୍୕-ୗଡ଼ଢ଼ୟ-ୣ୦-୷"},{name:"Osage",astral:"\ud801[\udcb0-\udcd3\udcd8-\udcfb]"},{name:"Osmanya",astral:"\ud801[\udc80-\udc9d\udca0-\udca9]"},{name:"Pahawh_Hmong",astral:"\ud81a[\udf00-\udf45\udf50-\udf59\udf5b-\udf61\udf63-\udf77\udf7d-\udf8f]"},{name:"Palmyrene",astral:"\ud802[\udc60-\udc7f]"},{name:"Pau_Cin_Hau",astral:"\ud806[\udec0-\udef8]"},{name:"Phags_Pa",bmp:"ꡀ-꡷"},{name:"Phoenician",astral:"\ud802[\udd00-\udd1b\udd1f]"},{name:"Psalter_Pahlavi",astral:"\ud802[\udf80-\udf91\udf99-\udf9c\udfa9-\udfaf]"},{name:"Rejang",bmp:"ꤰ-꥓꥟"},{name:"Runic",bmp:"ᚠ-ᛪᛮ-ᛸ"},{name:"Samaritan",bmp:"ࠀ-࠭࠰-࠾"},{name:"Saurashtra",bmp:"ꢀ-ꣅ꣎-꣙"},{name:"Sharada",astral:"\ud804[\udd80-\udddf]"},{name:"Shavian",astral:"\ud801[\udc50-\udc7f]"},{name:"Siddham",astral:"\ud805[\udd80-\uddb5\uddb8-\udddd]"},{name:"SignWriting",astral:"\ud836[\udc00-\ude8b\ude9b-\ude9f\udea1-\udeaf]"},{name:"Sinhala",bmp:"ඁ-ඃඅ-ඖක-නඳ-රලව-ෆ්ා-ුූෘ-ෟ෦-෯ෲ-෴",astral:"\ud804[\udde1-\uddf4]"},{name:"Sogdian",astral:"\ud803[\udf30-\udf59]"},{name:"Sora_Sompeng",astral:"\ud804[\udcd0-\udce8\udcf0-\udcf9]"},{name:"Soyombo",astral:"\ud806[\ude50-\udea2]"},{name:"Sundanese",bmp:"ᮀ-ᮿ᳀-᳇"},{name:"Syloti_Nagri",bmp:"ꠀ-꠬"},{name:"Syriac",bmp:"܀-܍܏-݊ݍ-ݏࡠ-ࡪ"},{name:"Tagalog",bmp:"ᜀ-᜕ᜟ"},{name:"Tagbanwa",bmp:"ᝠ-ᝬᝮ-ᝰᝲᝳ"},{name:"Tai_Le",bmp:"ᥐ-ᥭᥰ-ᥴ"},{name:"Tai_Tham",bmp:"ᨠ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪠-᪭"},{name:"Tai_Viet",bmp:"ꪀ-ꫂꫛ-꫟"},{name:"Takri",astral:"\ud805[\ude80-\udeb9\udec0-\udec9]"},{name:"Tamil",bmp:"ஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-்ௐௗ௦-௺",astral:"\ud807[\udfc0-\udff1\udfff]"},{name:"Tangsa",astral:"\ud81a[\ude70-\udebe\udec0-\udec9]"},{name:"Tangut",astral:"𖿠|[\ud81c-\ud820][\udc00-\udfff]|\ud821[\udc00-\udff7]|\ud822[\udc00-\udeff]|\ud823[\udd00-\udd08]"},{name:"Telugu",bmp:"ఀ-ఌఎ-ఐఒ-నప-హ఼-ౄె-ైొ-్ౕౖౘ-ౚౝౠ-ౣ౦-౯౷-౿"},{name:"Thaana",bmp:"ހ-ޱ"},{name:"Thai",bmp:"ก-ฺเ-๛"},{name:"Tibetan",bmp:"ༀ-ཇཉ-ཬཱ-ྗྙ-ྼ྾-࿌࿎-࿔࿙࿚"},{name:"Tifinagh",bmp:"ⴰ-ⵧⵯ⵰⵿"},{name:"Tirhuta",astral:"\ud805[\udc80-\udcc7\udcd0-\udcd9]"},{name:"Toto",astral:"\ud838[\ude90-\udeae]"},{name:"Ugaritic",astral:"\ud800[\udf80-\udf9d\udf9f]"},{name:"Vai",bmp:"ꔀ-ꘫ"},{name:"Vithkuqi",astral:"\ud801[\udd70-\udd7a\udd7c-\udd8a\udd8c-\udd92\udd94\udd95\udd97-\udda1\udda3-\uddb1\uddb3-\uddb9\uddbb\uddbc]"},{name:"Wancho",astral:"\ud838[\udec0-\udef9\udeff]"},{name:"Warang_Citi",astral:"\ud806[\udca0-\udcf2\udcff]"},{name:"Yezidi",astral:"\ud803[\ude80-\udea9\udeab-\udead\udeb0\udeb1]"},{name:"Yi",bmp:"ꀀ-ꒌ꒐-꓆"},{name:"Zanabazar_Square",astral:"\ud806[\ude00-\ude47]"}]);if(function(u){var d="xregexp",e=/(\()(?!\?)|\\([1-9]\d*)|\\[\s\S]|\[(?:[^\\\]]|\\[\s\S])*\]/g,t=u.union([/\({{([\w$]+)}}\)|{{([\w$]+)}}/,e],"g",{conjunction:"or"});function n(u){var d=/^(?:\(\?:\))*\^/,e=/\$(?:\(\?:\))*$/;return d.test(u)&&e.test(u)&&e.test(u.replace(/\\[\s\S]/g,""))?u.replace(d,"").replace(e,""):u}function a(e,t){var n=t?"x":"";return u.isRegExp(e)?e[d]&&e[d].captureNames?e:u(e.source,n):u(e,n)}function r(d){return d instanceof RegExp?d:u.escape(d)}function c(u,d,e){return u["subpattern".concat(e)]=d,u}function f(u,d,e){return u+(d<e.length-1?"{{subpattern".concat(d,"}}"):"")}u.tag=function(d){return function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];var o=n.map(r).reduce(c,{}),i=e.raw.map(f).join("");return u.build(i,o,d)}},u.build=function(r,c,f){var o=(f=f||"").includes("x"),i=/^\(\?([\w$]+)\)/.exec(r);i&&(f=u._clipDuplicates(f+i[1]));var l={};for(var s in c)if(c.hasOwnProperty(s)){var D=a(c[s],o);l[s]={pattern:n(D.source),names:D[d].captureNames||[]}}var m,b=a(r,o),C=0,p=0,F=[0],h=b[d].captureNames||[],A=b.source.replace(t,(function(u,d,t,n,a){var r,c,f,o=d||t;if(o){if(!l.hasOwnProperty(o))throw new ReferenceError("Undefined property ".concat(u));d?(r=h[p],F[++p]=++C,c="(?<".concat(r||o,">")):c="(?:",m=C;var i=l[o].pattern.replace(e,(function(u,d,e){if(d){if(r=l[o].names[C-m],++C,r)return"(?<".concat(r,">")}else if(e)return f=+e-1,l[o].names[f]?"\\k<".concat(l[o].names[f],">"):"\\".concat(+e+m);return u}));return"".concat(c).concat(i,")")}if(n){if(r=h[p],F[++p]=++C,r)return"(?<".concat(r,">")}else if(a)return h[f=+a-1]?"\\k<".concat(h[f],">"):"\\".concat(F[+a]);return u}));return u(A,f)}}(G),function(u){function d(u,d,e,t){return{name:u,value:d,start:e,end:t}}u.matchRecursive=function(e,t,n,a,r){r=r||{};var c,f=(a=a||"").includes("g"),o=a.includes("y"),i=a.replace(/y/g,"");t=u(t,i),n=u(n,i);var l=r.escapeChar;if(l){if(l.length>1)throw new Error("Cannot use more than one escape character");l=u.escape(l),c=new RegExp("(?:".concat(l,"[\\S\\s]|(?:(?!").concat(u.union([t,n],"",{conjunction:"or"}).source,")[^").concat(l,"])+)+"),a.replace(u._hasNativeFlag("s")?/[^imsu]/g:/[^imu]/g,""))}for(var s,D,m,b,C=0,p=0,F=0,h=0,A=r.valueNames,E=[];;){if(l&&(F+=(u.exec(e,c,F,"sticky")||[""])[0].length),m=u.exec(e,t,F),b=u.exec(e,n,F),m&&b&&(m.index<=b.index?b=null:m=null),m||b)F=(p=(m||b).index)+(m||b)[0].length;else if(!C)break;if(o&&!C&&p>h)break;if(m)C||(s=p,D=F),C+=1;else if(b&&C){if(!(C-=1)&&(A?(A[0]&&s>h&&E.push(d(A[0],e.slice(h,s),h,s)),A[1]&&E.push(d(A[1],e.slice(s,D),s,D)),A[2]&&E.push(d(A[2],e.slice(D,p),D,p)),A[3]&&E.push(d(A[3],e.slice(p,F),p,F))):E.push(e.slice(D,p)),h=F,!f))break}else{var g=r.unbalanced||"error";if("skip"!==g&&"skip-lazy"!==g){if("error"===g){var v=b?p:s;throw new Error("Unbalanced ".concat(b?"right":"left"," delimiter found in string at position ").concat(v))}throw new Error("Unsupported value for unbalanced: ".concat(g))}if(b)b=null;else{if("skip"===g)F=s+(u.exec(e,t,s,"sticky")[0].length||1);else F=s+1;C=0}}p===F&&(F+=1)}return f&&E.length>0&&!o&&A&&A[0]&&e.length>h&&E.push(d(A[0],e.slice(h),h,e.length)),E}}(G),function(u){var d={},e={},t=u._dec,n=u._hex,a=u._pad4;function r(u){return u.replace(/[- _]+/g,"").toLowerCase()}function c(u){var d=/^\\[xu](.+)/.exec(u);return d?t(d[1]):u.charCodeAt("\\"===u[0]?1:0)}function f(e){var t,r,f;return d[e]["b!"]||(d[e]["b!"]=(t=d[e].bmp,r="",f=-1,u.forEach(t,/(\\x..|\\u....|\\?[\s\S])(?:-(\\x..|\\u....|\\?[\s\S]))?/,(function(u){var d=c(u[1]);d>f+1&&(r+="\\u".concat(a(n(f+1))),d>f+2&&(r+="-\\u".concat(a(n(d-1))))),f=c(u[2]||u[1])})),f<65535&&(r+="\\u".concat(a(n(f+1))),f<65534&&(r+="-\\uFFFF")),r))}function o(u,e){var t=e?"a!":"a=";return d[u][t]||(d[u][t]=function(u,e){var t=d[u],n="";return t.bmp&&!t.isBmpLast&&(n="[".concat(t.bmp,"]").concat(t.astral?"|":"")),t.astral&&(n+=t.astral),t.isBmpLast&&t.bmp&&(n+="".concat(t.astral?"|":"","[").concat(t.bmp,"]")),e?"(?:(?!".concat(n,")(?:[\ud800-\udbff][\udc00-\udfff]|[\0-￿]))"):"(?:".concat(n,")")}(u,e))}u.addToken(/\\([pP])(?:{(\^?)(?:(\w+)=)?([^}]*)}|([A-Za-z]))/,(function(u,t,n){var a="Unknown Unicode token ",c=j(u,6),i=c[0],l=c[1],s=c[2],D=c[3],m=c[4],b=c[5],C="P"===l||!!s,p=n.includes("A"),F=r(b||m),h=d[F];if("P"===l&&s)throw new SyntaxError("Invalid double negation "+i);if(!d.hasOwnProperty(F))throw new SyntaxError(a+i);if(D&&(!e[D]||!e[D][F]))throw new SyntaxError(a+i);if(h.inverseOf){if(F=r(h.inverseOf),!d.hasOwnProperty(F))throw new ReferenceError("".concat("Unicode token missing data "+i," -> ").concat(h.inverseOf));h=d[F],C=!C}if(!h.bmp&&!p)throw new SyntaxError("Astral mode required for Unicode token "+i);if(p){if("class"===t)throw new SyntaxError("Astral mode does not support Unicode tokens within character classes");return o(F,C)}return"class"===t?C?f(F):h.bmp:"".concat((C?"[^":"[")+h.bmp,"]")}),{scope:"all",optionalFlags:"A",leadChar:"\\"}),u.addUnicodeData=function(t,n){n&&(e[n]={});var a,c=function(u,d){var e="undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(!e){if(Array.isArray(u)||(e=M(u))||d&&u&&"number"==typeof u.length){e&&(u=e);var t=0,n=function(){};return{s:n,n:function(){return t>=u.length?{done:!0}:{done:!1,value:u[t++]}},e:function(u){throw u},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,r=!0,c=!1;return{s:function(){e=e.call(u)},n:function(){var u=e.next();return r=u.done,u},e:function(u){c=!0,a=u},f:function(){try{r||null==e.return||e.return()}finally{if(c)throw a}}}}(t);try{for(c.s();!(a=c.n()).done;){var f=a.value;if(!f.name)throw new Error("Unicode token requires name");if(!(f.inverseOf||f.bmp||f.astral))throw new Error("Unicode token has no character data "+f.name);var o=r(f.name);if(d[o]=f,n&&(e[n][o]=!0),f.alias){var i=r(f.alias);d[i]=f,n&&(e[n][i]=!0)}}}catch(u){c.e(u)}finally{c.f()}u.cache.flush("patterns")},u._getUnicodeProperty=function(u){var e=r(u);return d[e]}}(G),function(u){if(!u.addUnicodeData)throw new ReferenceError("Unicode Base must be loaded before Unicode Categories");u.addUnicodeData(z)}(G),function(u){if(!u.addUnicodeData)throw new ReferenceError("Unicode Base must be loaded before Unicode Properties");var d=W;d.push({name:"Assigned",inverseOf:"Cn"}),u.addUnicodeData(d)}(G),function(u){if(!u.addUnicodeData)throw new ReferenceError("Unicode Base must be loaded before Unicode Scripts");u.addUnicodeData(J,"Script")}(G),"undefined"==typeof document){const u=(self.MonacoEnvironment?.baseUrl||"../../../")+"vs/language/kusto/";importScripts(u+"bridge.min.js",u+"kusto.javascript.client.min.js",u+"newtonsoft.json.min.js",u+"Kusto.Language.Bridge.min.js")}var Q,H=["name","columns","entityType","docstring"];function Z(u,d){return function(u){if(Array.isArray(u))return u}(u)||function(u,d){var e=null==u?null:"undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(null!=e){var t,n,a,r,c=[],f=!0,o=!1;try{if(a=(e=e.call(u)).next,0===d){if(Object(e)!==e)return;f=!1}else for(;!(f=(t=a.call(e)).done)&&(c.push(t.value),c.length!==d);f=!0);}catch(u){o=!0,n=u}finally{try{if(!f&&null!=e.return&&(r=e.return(),Object(r)!==r))return}finally{if(o)throw n}}return c}}(u,d)||tu(u,d)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Y(u,d){var e=Object.keys(u);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(u);d&&(t=t.filter((function(d){return Object.getOwnPropertyDescriptor(u,d).enumerable}))),e.push.apply(e,t)}return e}function q(u){for(var d=1;d<arguments.length;d++){var e=null!=arguments[d]?arguments[d]:{};d%2?Y(Object(e),!0).forEach((function(d){au(u,d,e[d])})):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(e)):Y(Object(e)).forEach((function(d){Object.defineProperty(u,d,Object.getOwnPropertyDescriptor(e,d))}))}return u}function X(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */X=function(){return d};var u,d={},e=Object.prototype,t=e.hasOwnProperty,n=Object.defineProperty||function(u,d,e){u[d]=e.value},a="function"==typeof Symbol?Symbol:{},r=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",f=a.toStringTag||"@@toStringTag";function o(u,d,e){return Object.defineProperty(u,d,{value:e,enumerable:!0,configurable:!0,writable:!0}),u[d]}try{o({},"")}catch(u){o=function(u,d,e){return u[d]=e}}function i(u,d,e,t){var a=d&&d.prototype instanceof p?d:p,r=Object.create(a.prototype),c=new K(t||[]);return n(r,"_invoke",{value:B(u,e,c)}),r}function l(u,d,e){try{return{type:"normal",arg:u.call(d,e)}}catch(u){return{type:"throw",arg:u}}}d.wrap=i;var s="suspendedStart",D="suspendedYield",m="executing",b="completed",C={};function p(){}function F(){}function h(){}var A={};o(A,r,(function(){return this}));var E=Object.getPrototypeOf,g=E&&E(E(w([])));g&&g!==e&&t.call(g,r)&&(A=g);var v=h.prototype=p.prototype=Object.create(A);function y(u){["next","throw","return"].forEach((function(d){o(u,d,(function(u){return this._invoke(d,u)}))}))}function S(u,d){function e(n,a,r,c){var f=l(u[n],u,a);if("throw"!==f.type){var o=f.arg,i=o.value;return i&&"object"==ru(i)&&t.call(i,"__await")?d.resolve(i.__await).then((function(u){e("next",u,r,c)}),(function(u){e("throw",u,r,c)})):d.resolve(i).then((function(u){o.value=u,r(o)}),(function(u){return e("throw",u,r,c)}))}c(f.arg)}var a;n(this,"_invoke",{value:function(u,t){function n(){return new d((function(d,n){e(u,t,d,n)}))}return a=a?a.then(n,n):n()}})}function B(d,e,t){var n=s;return function(a,r){if(n===m)throw Error("Generator is already running");if(n===b){if("throw"===a)throw r;return{value:u,done:!0}}for(t.method=a,t.arg=r;;){var c=t.delegate;if(c){var f=k(c,t);if(f){if(f===C)continue;return f}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if(n===s)throw n=b,t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);n=m;var o=l(d,e,t);if("normal"===o.type){if(n=t.done?b:D,o.arg===C)continue;return{value:o.arg,done:t.done}}"throw"===o.type&&(n=b,t.method="throw",t.arg=o.arg)}}}function k(d,e){var t=e.method,n=d.iterator[t];if(n===u)return e.delegate=null,"throw"===t&&d.iterator.return&&(e.method="return",e.arg=u,k(d,e),"throw"===e.method)||"return"!==t&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+t+"' method")),C;var a=l(n,d.iterator,e.arg);if("throw"===a.type)return e.method="throw",e.arg=a.arg,e.delegate=null,C;var r=a.arg;return r?r.done?(e[d.resultName]=r.value,e.next=d.nextLoc,"return"!==e.method&&(e.method="next",e.arg=u),e.delegate=null,C):r:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,C)}function x(u){var d={tryLoc:u[0]};1 in u&&(d.catchLoc=u[1]),2 in u&&(d.finallyLoc=u[2],d.afterLoc=u[3]),this.tryEntries.push(d)}function T(u){var d=u.completion||{};d.type="normal",delete d.arg,u.completion=d}function K(u){this.tryEntries=[{tryLoc:"root"}],u.forEach(x,this),this.reset(!0)}function w(d){if(d||""===d){var e=d[r];if(e)return e.call(d);if("function"==typeof d.next)return d;if(!isNaN(d.length)){var n=-1,a=function e(){for(;++n<d.length;)if(t.call(d,n))return e.value=d[n],e.done=!1,e;return e.value=u,e.done=!0,e};return a.next=a}}throw new TypeError(ru(d)+" is not iterable")}return F.prototype=h,n(v,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:F,configurable:!0}),F.displayName=o(h,f,"GeneratorFunction"),d.isGeneratorFunction=function(u){var d="function"==typeof u&&u.constructor;return!!d&&(d===F||"GeneratorFunction"===(d.displayName||d.name))},d.mark=function(u){return Object.setPrototypeOf?Object.setPrototypeOf(u,h):(u.__proto__=h,o(u,f,"GeneratorFunction")),u.prototype=Object.create(v),u},d.awrap=function(u){return{__await:u}},y(S.prototype),o(S.prototype,c,(function(){return this})),d.AsyncIterator=S,d.async=function(u,e,t,n,a){void 0===a&&(a=Promise);var r=new S(i(u,e,t,n),a);return d.isGeneratorFunction(e)?r:r.next().then((function(u){return u.done?u.value:r.next()}))},y(v),o(v,f,"Generator"),o(v,r,(function(){return this})),o(v,"toString",(function(){return"[object Generator]"})),d.keys=function(u){var d=Object(u),e=[];for(var t in d)e.push(t);return e.reverse(),function u(){for(;e.length;){var t=e.pop();if(t in d)return u.value=t,u.done=!1,u}return u.done=!0,u}},d.values=w,K.prototype={constructor:K,reset:function(d){if(this.prev=0,this.next=0,this.sent=this._sent=u,this.done=!1,this.delegate=null,this.method="next",this.arg=u,this.tryEntries.forEach(T),!d)for(var e in this)"t"===e.charAt(0)&&t.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=u)},stop:function(){this.done=!0;var u=this.tryEntries[0].completion;if("throw"===u.type)throw u.arg;return this.rval},dispatchException:function(d){if(this.done)throw d;var e=this;function n(t,n){return c.type="throw",c.arg=d,e.next=t,n&&(e.method="next",e.arg=u),!!n}for(var a=this.tryEntries.length-1;a>=0;--a){var r=this.tryEntries[a],c=r.completion;if("root"===r.tryLoc)return n("end");if(r.tryLoc<=this.prev){var f=t.call(r,"catchLoc"),o=t.call(r,"finallyLoc");if(f&&o){if(this.prev<r.catchLoc)return n(r.catchLoc,!0);if(this.prev<r.finallyLoc)return n(r.finallyLoc)}else if(f){if(this.prev<r.catchLoc)return n(r.catchLoc,!0)}else{if(!o)throw Error("try statement without catch or finally");if(this.prev<r.finallyLoc)return n(r.finallyLoc)}}}},abrupt:function(u,d){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc<=this.prev&&t.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var a=n;break}}a&&("break"===u||"continue"===u)&&a.tryLoc<=d&&d<=a.finallyLoc&&(a=null);var r=a?a.completion:{};return r.type=u,r.arg=d,a?(this.method="next",this.next=a.finallyLoc,C):this.complete(r)},complete:function(u,d){if("throw"===u.type)throw u.arg;return"break"===u.type||"continue"===u.type?this.next=u.arg:"return"===u.type?(this.rval=this.arg=u.arg,this.method="return",this.next="end"):"normal"===u.type&&d&&(this.next=d),C},finish:function(u){for(var d=this.tryEntries.length-1;d>=0;--d){var e=this.tryEntries[d];if(e.finallyLoc===u)return this.complete(e.completion,e.afterLoc),T(e),C}},catch:function(u){for(var d=this.tryEntries.length-1;d>=0;--d){var e=this.tryEntries[d];if(e.tryLoc===u){var t=e.completion;if("throw"===t.type){var n=t.arg;T(e)}return n}}throw Error("illegal catch attempt")},delegateYield:function(d,e,t){return this.delegate={iterator:w(d),resultName:e,nextLoc:t},"next"===this.method&&(this.arg=u),C}},d}function uu(u,d,e,t,n,a,r){try{var c=u[a](r),f=c.value}catch(u){return void e(u)}c.done?d(f):Promise.resolve(f).then(t,n)}function du(u){return function(){var d=this,e=arguments;return new Promise((function(t,n){var a=u.apply(d,e);function r(u){uu(a,t,n,r,c,"next",u)}function c(u){uu(a,t,n,r,c,"throw",u)}r(void 0)}))}}function eu(u){return function(u){if(Array.isArray(u))return nu(u)}(u)||function(u){if("undefined"!=typeof Symbol&&null!=u[Symbol.iterator]||null!=u["@@iterator"])return Array.from(u)}(u)||tu(u)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function tu(u,d){if(u){if("string"==typeof u)return nu(u,d);var e={}.toString.call(u).slice(8,-1);return"Object"===e&&u.constructor&&(e=u.constructor.name),"Map"===e||"Set"===e?Array.from(u):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?nu(u,d):void 0}}function nu(u,d){(null==d||d>u.length)&&(d=u.length);for(var e=0,t=Array(d);e<d;e++)t[e]=u[e];return t}function au(u,d,e){return(d=iu(d))in u?Object.defineProperty(u,d,{value:e,enumerable:!0,configurable:!0,writable:!0}):u[d]=e,u}function ru(u){return ru="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(u){return typeof u}:function(u){return u&&"function"==typeof Symbol&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u},ru(u)}function cu(u,d){if(!(u instanceof d))throw new TypeError("Cannot call a class as a function")}function fu(u,d){for(var e=0;e<d.length;e++){var t=d[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(u,iu(t.key),t)}}function ou(u,d,e){return d&&fu(u.prototype,d),e&&fu(u,e),Object.defineProperty(u,"prototype",{writable:!1}),u}function iu(u){var d=function(u,d){if("object"!=ru(u)||!u)return u;var e=u[Symbol.toPrimitive];if(void 0!==e){var t=e.call(u,d||"default");if("object"!=ru(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===d?String:Number)(u)}(u,"string");return"symbol"==ru(d)?d:d+""}var lu=Kusto.Data.IntelliSense,su=Kusto.Language.Parsing,Du=Kusto.Language.Editor,mu=Kusto.Language.Symbols,bu=Kusto.Language.GlobalState,Cu=System.Collections.Generic.List$1;function pu(u){throw new Error("Unexpected object: "+u)}var Fu=function(){return ou((function u(d,e,t,n){cu(this,u),this.version=d,this.uri=e,this.rulesProvider=t,this.parseMode=n}),[{key:"isParseNeeded",value:function(u,d,e){return!(u.uri===this.uri&&(!d||d===this.rulesProvider)&&u.version<=this.version&&e&&e<=this.parseMode)}}])}(),hu=function(u){return u[u.TableToken=2]="TableToken",u[u.TableColumnToken=4]="TableColumnToken",u[u.OperatorToken=8]="OperatorToken",u[u.SubOperatorToken=16]="SubOperatorToken",u[u.CalculatedColumnToken=32]="CalculatedColumnToken",u[u.StringLiteralToken=64]="StringLiteralToken",u[u.FunctionNameToken=128]="FunctionNameToken",u[u.UnknownToken=256]="UnknownToken",u[u.CommentToken=512]="CommentToken",u[u.PlainTextToken=1024]="PlainTextToken",u[u.DataTypeToken=2048]="DataTypeToken",u[u.ControlCommandToken=4096]="ControlCommandToken",u[u.CommandPartToken=8192]="CommandPartToken",u[u.QueryParametersToken=16384]="QueryParametersToken",u[u.CslCommandToken=32768]="CslCommandToken",u[u.LetVariablesToken=65536]="LetVariablesToken",u[u.PluginToken=131072]="PluginToken",u[u.BracketRangeToken=262144]="BracketRangeToken",u[u.ClientDirectiveToken=524288]="ClientDirectiveToken",u}({}),Au=(au(au(au(au(au(au(au(au(au(au(Q={},mu.SymbolKind.Cluster,"Cluster"),mu.SymbolKind.Column,"Column"),mu.SymbolKind.Command,"Command"),mu.SymbolKind.Database,"Database"),mu.SymbolKind.EntityGroup,"EntityGroup"),mu.SymbolKind.EntityGroupElement,"EntityGroupElement"),mu.SymbolKind.Error,"Error"),mu.SymbolKind.Function,"Function"),mu.SymbolKind.Graph,"Graph"),mu.SymbolKind.Group,"Group"),au(au(au(au(au(au(au(au(au(au(Q,mu.SymbolKind.MaterializedView,"MaterializedView"),mu.SymbolKind.None,"None"),mu.SymbolKind.Operator,"Operator"),mu.SymbolKind.Option,"Option"),mu.SymbolKind.Parameter,"Parameter"),mu.SymbolKind.Pattern,"Pattern"),mu.SymbolKind.QueryOperatorParameter,"QueryOperatorParameter"),mu.SymbolKind.Primitive,"Primitive"),mu.SymbolKind.Table,"Table"),mu.SymbolKind.Tuple,"Tuple"),au(au(Q,mu.SymbolKind.Variable,"Variable"),mu.SymbolKind.Void,"Void")),Eu=function(){function u(e,t){var n,a,r,c;cu(this,u),au(this,"_toOptionKind",(au(au(au(au(au(au(au(au(au(au(n={},Du.CompletionKind.AggregateFunction,lu.OptionKind.FunctionAggregation),Du.CompletionKind.BuiltInFunction,lu.OptionKind.FunctionScalar),Du.CompletionKind.Cluster,lu.OptionKind.Database),Du.CompletionKind.Column,lu.OptionKind.Column),Du.CompletionKind.CommandPrefix,lu.OptionKind.Command),Du.CompletionKind.Database,lu.OptionKind.Database),Du.CompletionKind.DatabaseFunction,lu.OptionKind.FunctionServerSide),Du.CompletionKind.Example,lu.OptionKind.Literal),Du.CompletionKind.Identifier,lu.OptionKind.None),Du.CompletionKind.Keyword,lu.OptionKind.Option),au(au(au(au(au(au(au(au(au(au(n,Du.CompletionKind.LocalFunction,lu.OptionKind.FunctionLocal),Du.CompletionKind.MaterialiedView,lu.OptionKind.MaterializedView),Du.CompletionKind.Parameter,lu.OptionKind.Parameter),Du.CompletionKind.Punctuation,lu.OptionKind.None),Du.CompletionKind.QueryPrefix,lu.OptionKind.Operator),Du.CompletionKind.RenderChart,lu.OptionKind.OptionRender),Du.CompletionKind.ScalarInfix,lu.OptionKind.None),Du.CompletionKind.ScalarPrefix,lu.OptionKind.Literal),Du.CompletionKind.ScalarType,lu.OptionKind.DataType),Du.CompletionKind.Syntax,lu.OptionKind.None),au(au(au(au(au(au(au(au(au(n,Du.CompletionKind.Table,lu.OptionKind.Table),Du.CompletionKind.TabularPrefix,lu.OptionKind.None),Du.CompletionKind.TabularSuffix,lu.OptionKind.None),Du.CompletionKind.Unknown,lu.OptionKind.None),Du.CompletionKind.Variable,lu.OptionKind.Parameter),Du.CompletionKind.Option,lu.OptionKind.Option),Du.CompletionKind.Graph,lu.OptionKind.Graph),Du.CompletionKind.EntityGroup,lu.OptionKind.EntityGroup),Du.CompletionKind.StoredQueryResult,lu.OptionKind.StoredQueryResult))),au(this,"disabledCompletionItemsV2",{ladderchart:Du.CompletionKind.RenderChart,pivotchart:Du.CompletionKind.RenderChart,timeline:Du.CompletionKind.RenderChart,timepivot:Du.CompletionKind.RenderChart,"3Dchart":Du.CompletionKind.RenderChart,list:Du.CompletionKind.RenderChart}),au(this,"_kustoKindtolsKind",(au(au(au(au(au(au(au(au(au(au(a={},lu.OptionKind.None,d.CompletionItemKind.Interface),lu.OptionKind.Operator,d.CompletionItemKind.Method),lu.OptionKind.Command,d.CompletionItemKind.Method),lu.OptionKind.Service,d.CompletionItemKind.Class),lu.OptionKind.Policy,d.CompletionItemKind.Reference),lu.OptionKind.Database,d.CompletionItemKind.Class),lu.OptionKind.Table,d.CompletionItemKind.Class),lu.OptionKind.DataType,d.CompletionItemKind.Class),lu.OptionKind.Literal,d.CompletionItemKind.Property),lu.OptionKind.Parameter,d.CompletionItemKind.Variable),au(au(au(au(au(au(au(au(au(au(a,lu.OptionKind.IngestionMapping,d.CompletionItemKind.Variable),lu.OptionKind.ExpressionFunction,d.CompletionItemKind.Variable),lu.OptionKind.Option,d.CompletionItemKind.Interface),lu.OptionKind.OptionKind,d.CompletionItemKind.Interface),lu.OptionKind.OptionRender,d.CompletionItemKind.Interface),lu.OptionKind.Column,d.CompletionItemKind.Function),lu.OptionKind.ColumnString,d.CompletionItemKind.Field),lu.OptionKind.ColumnNumeric,d.CompletionItemKind.Field),lu.OptionKind.ColumnDateTime,d.CompletionItemKind.Field),lu.OptionKind.ColumnTimespan,d.CompletionItemKind.Field),au(au(au(au(au(a,lu.OptionKind.FunctionServerSide,d.CompletionItemKind.Field),lu.OptionKind.FunctionAggregation,d.CompletionItemKind.Field),lu.OptionKind.FunctionFilter,d.CompletionItemKind.Field),lu.OptionKind.FunctionScalar,d.CompletionItemKind.Field),lu.OptionKind.ClientDirective,d.CompletionItemKind.Enum))),au(this,"_kustoKindToLsKindV2",(au(au(au(au(au(au(au(au(au(au(r={},Du.CompletionKind.AggregateFunction,d.CompletionItemKind.Field),Du.CompletionKind.BuiltInFunction,d.CompletionItemKind.Field),Du.CompletionKind.Cluster,d.CompletionItemKind.Class),Du.CompletionKind.Column,d.CompletionItemKind.Function),Du.CompletionKind.CommandPrefix,d.CompletionItemKind.Field),Du.CompletionKind.Database,d.CompletionItemKind.Class),Du.CompletionKind.DatabaseFunction,d.CompletionItemKind.Field),Du.CompletionKind.Example,d.CompletionItemKind.Text),Du.CompletionKind.Identifier,d.CompletionItemKind.Method),Du.CompletionKind.Keyword,d.CompletionItemKind.Method),au(au(au(au(au(au(au(au(au(au(r,Du.CompletionKind.LocalFunction,d.CompletionItemKind.Field),Du.CompletionKind.MaterialiedView,d.CompletionItemKind.Class),Du.CompletionKind.Parameter,d.CompletionItemKind.Variable),Du.CompletionKind.Punctuation,d.CompletionItemKind.Interface),Du.CompletionKind.QueryPrefix,d.CompletionItemKind.Function),Du.CompletionKind.RenderChart,d.CompletionItemKind.Method),Du.CompletionKind.ScalarInfix,d.CompletionItemKind.Field),Du.CompletionKind.ScalarPrefix,d.CompletionItemKind.Field),Du.CompletionKind.ScalarType,d.CompletionItemKind.TypeParameter),Du.CompletionKind.Syntax,d.CompletionItemKind.Method),au(au(au(au(au(au(au(au(au(r,Du.CompletionKind.Table,d.CompletionItemKind.Class),Du.CompletionKind.TabularPrefix,d.CompletionItemKind.Field),Du.CompletionKind.TabularSuffix,d.CompletionItemKind.Field),Du.CompletionKind.Unknown,d.CompletionItemKind.Interface),Du.CompletionKind.Variable,d.CompletionItemKind.Variable),Du.CompletionKind.Option,d.CompletionItemKind.Text),Du.CompletionKind.Graph,d.CompletionItemKind.Class),Du.CompletionKind.EntityGroup,d.CompletionItemKind.Class),Du.CompletionKind.StoredQueryResult,d.CompletionItemKind.Field))),au(this,"_tokenKindToClassificationKind",(au(au(au(au(au(au(au(au(au(au(c={},hu.TableToken,Du.ClassificationKind.Table),hu.TableColumnToken,Du.ClassificationKind.Column),hu.OperatorToken,Du.ClassificationKind.QueryOperator),hu.SubOperatorToken,Du.ClassificationKind.Function),hu.CalculatedColumnToken,Du.ClassificationKind.Column),hu.StringLiteralToken,Du.ClassificationKind.Literal),hu.FunctionNameToken,Du.ClassificationKind.Function),hu.UnknownToken,Du.ClassificationKind.PlainText),hu.CommentToken,Du.ClassificationKind.Comment),hu.PlainTextToken,Du.ClassificationKind.PlainText),au(au(au(au(au(au(au(au(au(c,hu.DataTypeToken,Du.ClassificationKind.Type),hu.ControlCommandToken,Du.ClassificationKind.PlainText),hu.CommandPartToken,Du.ClassificationKind.PlainText),hu.QueryParametersToken,Du.ClassificationKind.QueryParameter),hu.CslCommandToken,Du.ClassificationKind.Keyword),hu.LetVariablesToken,Du.ClassificationKind.Identifier),hu.PluginToken,Du.ClassificationKind.Function),hu.BracketRangeToken,Du.ClassificationKind.Keyword),hu.ClientDirectiveToken,Du.ClassificationKind.Keyword))),this._schemaCache={},this._kustoJsSchema=u.convertToKustoJsSchema(e),this.__kustoJsSchemaV2=this.convertToKustoJsSchemaV2(e),this._schema=e,this._clustersSetInGlobalState=new Set,this._nonEmptyDatabaseSetInGlobalState=new Set,this.configure(t),this._newlineAppendPipePolicy=new Kusto.Data.IntelliSense.ApplyPolicy,this._newlineAppendPipePolicy.Text="\n| "}return ou(u,[{key:"createDatabaseUniqueName",value:function(u,d){return"".concat(u,"_").concat(d)}},{key:"_kustoJsSchemaV2",get:function(){return this.__kustoJsSchemaV2},set:function(u){this.__kustoJsSchemaV2=u,this._clustersSetInGlobalState.clear(),this._nonEmptyDatabaseSetInGlobalState.clear();for(var d=0;d<u.Clusters.Count;d++){var e=this._kustoJsSchemaV2.Clusters.getItem(d);this._clustersSetInGlobalState.add(e.Name);for(var t=0;t<e.Databases.Count;t++){var n=e.Databases.getItem(t);n.Tables.Count>0&&this._nonEmptyDatabaseSetInGlobalState.add(this.createDatabaseUniqueName(e.Name,n.Name))}}}},{key:"configure",value:function(u){this._languageSettings=u;var d=this._languageSettings.completionOptions.includeExtendedSyntax;this._completionOptions=Kusto.Language.Editor.CompletionOptions.Default.WithIncludeExtendedSyntax(d).WithIncludePunctuationOnlySyntax(!1),this.createRulesProvider(this._kustoJsSchema,this._schema.clusterType)}},{key:"doComplete",value:function(u,d){return this.doCompleteV2(u,d)}},{key:"debugGlobalState",value:function(u){console.log("globals.Clusters.Count: ".concat(u.Clusters.Count));for(var d=0;d<u.Clusters.Count;d++){var e=u.Clusters.getItem(d);console.log("cluster: ".concat(e.Name)),console.log("cluster.Databases.Count: ".concat(e.Databases.Count));for(var t=0;t<e.Databases.Count;t++){var n=e.Databases.getItem(t);console.log("cluster.database: [".concat(e.Name,"].[").concat(n.Name,"]")),console.log("cluster.Databases.Tables.Count: ".concat(n.Tables.Count));for(var a=0;a<n.Tables.Count;a++){var r=n.Tables.getItem(a);console.log("cluster.database.table: [".concat(e.Name,"].[").concat(n.Name,"].[").concat(r.Name,"]"))}}}}},{key:"formatHelpTopic",value:function(u){return"**".concat(u.Name," [(view online)](").concat(u.Url,")**\n\n").concat(u.LongDescription)}},{key:"doCompleteV2",value:function(u,e){var t=this;if(!u)return Promise.resolve(d.CompletionList.create([]));var n=this.parseDocumentV2(u),a=u.offsetAt(e),r=n.GetBlockAtPosition(a).Service.GetCompletionItems(a,this._completionOptions),c=this.disabledCompletionItemsV2;this._languageSettings.disabledCompletionItems&&this._languageSettings.disabledCompletionItems.map((function(u){c[u]=Du.CompletionKind.Unknown}));var f=this.toArray(r.Items).filter((function(u){return!(u&&u.MatchText&&void 0!==c[u.MatchText]&&(c[u.MatchText]===Du.CompletionKind.Unknown||c[u.MatchText]===u.Kind))})).map((function(e,n){var a=new lu.CompletionOption(t._toOptionKind[e.Kind]||lu.OptionKind.None,e.DisplayText),c=t.getTopic(a),f=e.AfterText&&e.AfterText.length>0?{textToInsert:"".concat(e.EditText.replace("$","\\$"),"$0").concat(e.AfterText),format:d.InsertTextFormat.Snippet}:{textToInsert:e.EditText,format:d.InsertTextFormat.PlainText},o=f.textToInsert,i=f.format,l=d.CompletionItem.create(e.DisplayText),s=u.positionAt(r.EditStart),D=u.positionAt(r.EditStart+r.EditLength);return l.textEdit=d.TextEdit.replace(d.Range.create(s,D),o),l.filterText=e.MatchText.charAt(0).toLowerCase()+e.MatchText.slice(1),l.kind=t.kustoKindToLsKindV2(e.Kind),l.sortText=e.OrderText,l.insertTextFormat=i,l.detail=c?c.ShortDescription:void 0,l.documentation=c?{value:t.formatHelpTopic(c),kind:d.MarkupKind.Markdown}:void 0,l}));return Promise.resolve(d.CompletionList.create(f))}},{key:"getTopic",value:function(u){if(u.Kind==lu.OptionKind.FunctionScalar||u.Kind==lu.OptionKind.FunctionAggregation){var d=u.Value.indexOf("(");d>=0&&(u=new lu.CompletionOption(u.Kind,u.Value.substring(0,d)))}return lu.CslDocumentation.Instance.GetTopic(u)}},{key:"doRangeFormat",value:function(u,e){if(!u)return Promise.resolve([]);var t=u.offsetAt(e.start),n=u.offsetAt(e.end),a=this.getFormattedCommandsInDocumentV2(u,t,n);return a.originalRange&&0!==a.formattedCommands.length?Promise.resolve([d.TextEdit.replace(a.originalRange,a.formattedCommands.join(""))]):Promise.resolve([])}},{key:"doDocumentFormat",value:function(u){if(!u)return Promise.resolve([]);var e=u.positionAt(0),t=u.positionAt(u.getText().length),n=d.Range.create(e,t),a=this.getFormattedCommandsInDocumentV2(u).formattedCommands.join("");return Promise.resolve([d.TextEdit.replace(n,a)])}},{key:"doCurrentCommandFormat",value:function(u,d){var e=u.offsetAt(d),t=this.createRange(u,e-1,e+1);return this.doRangeFormat(u,t)}},{key:"doFolding",value:function(u){return u?this.getCommandsInDocument(u).then((function(d){return d.map((function(d){d.text.endsWith("\r\n")?d.absoluteEnd-=2:(d.text.endsWith("\r")||d.text.endsWith("\n"))&&--d.absoluteEnd;var e=u.positionAt(d.absoluteStart),t=u.positionAt(d.absoluteEnd);return{startLine:e.line,startCharacter:e.character,endLine:t.line,endCharacter:t.character}}))})):Promise.resolve([])}},{key:"getClusterReferences",value:function(u,d){var e,t=this.parseDocumentV2(u),n=this.getCurrentCommandV2(t,d),a=null==n||null===(e=n.Service)||void 0===e?void 0:e.GetClusterReferences();if(!a)return Promise.resolve([]);for(var r=new Set,c=0;c<a.Count;c++){var f=a.getItem(c),o=Kusto.Language.KustoFacts.GetFullHostName(f.Cluster,null);this._clustersSetInGlobalState.has(o)||r.add(o)}return Promise.resolve(Array.from(r).map((function(u){return{clusterName:u}})))}},{key:"getDatabaseReferences",value:function(u,d){var e,t=this.parseDocumentV2(u),n=this.getCurrentCommandV2(t,d),a=null==n||null===(e=n.Service)||void 0===e?void 0:e.GetDatabaseReferences();if(!a)return Promise.resolve([]);for(var r=[],c=new Set,f=0;f<a.Count;f++){var o=a.getItem(f),i=Kusto.Language.KustoFacts.GetFullHostName(o.Cluster,null),l=this.createDatabaseUniqueName(i,o.Database);if(!c.has(l))c.add(l),this._nonEmptyDatabaseSetInGlobalState.has(l)||r.push({databaseName:o.Database,clusterName:i})}return Promise.resolve(r)}},{key:"doValidation",value:function(u,d,e,t){var n=this;if(!u)return Promise.resolve([]);var a=this.parseDocumentV2(u),r=this.toArray(a.Blocks);d.length>0&&(r=this.getAffectedBlocks(r,d));var c=r.map((function(u){var d=n.toArray(u.Service.GetDiagnostics()),a=null!=e?e:n._languageSettings.enableQueryWarnings,r=null!=t?t:n._languageSettings.enableQuerySuggestions;if(a||r){var c=u.Service.GetAnalyzerDiagnostics(!0),f=n.toArray(c).filter((function(u){var d,e=a&&"Warning"===u.Severity||r&&"Suggestion"===u.Severity,t=!(null!==(d=n._languageSettings.disabledDiagnosticCodes)&&void 0!==d&&d.includes(u.Code));return e&&t}));d=d.concat(f)}return d})).reduce((function(u,d){return u.concat(d)}),[]),f=this.toLsDiagnostics(c,u);return Promise.resolve(f)}},{key:"getApplyCodeActions",value:function(u,d,e){for(var t=this.parseDocumentV2(u),n=this.getAffectedBlocks(this.toArray(t.Blocks),[{start:d,end:e}])[0].Service.GetCodeActions(d,d,0,null,!0,null,new Kusto.Language.Utils.CancellationToken),a=this.toArray(n.Actions),r=[],c=0;c<a.length;c++)r.push.apply(r,eu(this.flattenCodeActions(a[c],null)));return r}},{key:"getResultActions",value:function(u,d,e){var t=this,n=this.parseDocumentV2(u),a=this.getAffectedBlocks(this.toArray(n.Blocks),[{start:d,end:e}])[0],r=this.getApplyCodeActions(u,d,e).map((function(u){var e=[],n=t.toArray(a.Service.ApplyCodeAction(u,d).Actions).find((function(u){return u instanceof Kusto.Language.Editor.ChangeTextAction}));return n&&(e=t.toArray(n.Changes).map((function(u){return{start:u.Start+a.Start,deleteLength:u.DeleteLength,insertText:u.InsertText}}))),{title:u.Title,changes:e,kind:u.Kind}})).filter((function(u){return u.changes.length}));return Promise.resolve(r)}},{key:"transformCodeActionTitle",value:function(u,d){var e=u;switch(e){case"Apply":e="Apply once";break;case"Fix All":e="Apply to all";break;case"Extract Value":e="Extract value"}if(d){var t=d.charAt(0).toUpperCase()+d.slice(1);e="".concat(e," (").concat(t,")")}return e}},{key:"flattenCodeActions",value:function(u,d){var e=[];if(u instanceof Du.ApplyAction)u.Title=this.transformCodeActionTitle(u.Title,d),e.push(u);else if(u instanceof Du.MenuAction)for(var t=this.toArray(u.Actions),n=0;n<t.length;n++)e.push.apply(e,eu(this.flattenCodeActions(t[n],u.Title)));return e}},{key:"toLsDiagnostics",value:function(u,e){return u.filter((function(u){return u.HasLocation})).map((function(u){var t,n=e.positionAt(u.Start),a=e.positionAt(u.Start+u.Length),r=d.Range.create(n,a);switch(u.Severity){case"Suggestion":t=d.DiagnosticSeverity.Information;break;case"Warning":t=d.DiagnosticSeverity.Warning;break;default:t=d.DiagnosticSeverity.Error}return d.Diagnostic.create(r,u.Message,t,u.Code)}))}},{key:"getClassifications",value:(n=du(X().mark((function u(d){var e,t,n,a=this;return X().wrap((function(u){for(;;)switch(u.prev=u.next){case 0:return e=this.parseDocumentV2(d),t=this.toArray(e.Blocks),n=t.map((function(u){var d=u.Service.GetClassifications(u.Start,u.Length).Classifications;return a.toArray(d)})),u.abrupt("return",n.flatMap((function(u){return u.map((function(u){var e=d.positionAt(u.Start);return{line:e.line,character:e.character,length:u.Length,kind:u.Kind}}))})));case 4:case"end":return u.stop()}}),u,this)}))),function(u){return n.apply(this,arguments)})},{key:"getAffectedBlocks",value:function(u,d){return u.filter((function(u){return!!u&&d.some((function(d){var e=d.start,t=d.end;return u.Start>=e&&u.Start<=t||e>=u.Start&&e<=u.End+1}))}))}},{key:"addClusterToSchema",value:function(u,d,e){var t=Kusto.Language.KustoFacts.GetHostName(d),n=this._kustoJsSchemaV2.GetCluster$1(t);if(n&&e.filter((function(u){var d=u.name;return!n.GetDatabase(d)})).forEach((function(u){var d=u.name,e=u.alternativeName,t=new mu.DatabaseSymbol.$ctor3(d,e||null,void 0,!1);n=n.AddDatabase(t)})),!n){var a=e.map((function(u){var d=u.name,e=u.alternativeName;return new mu.DatabaseSymbol.$ctor3(d,e||null,void 0,!1)})),r=new(Cu(mu.DatabaseSymbol).$ctor1)(a);n=new mu.ClusterSymbol.$ctor1(t,r,!1)}return this._kustoJsSchemaV2=this._kustoJsSchemaV2.AddOrReplaceCluster(n),this._script=Du.CodeScript.From$1(u.getText(),this._kustoJsSchemaV2),Promise.resolve()}},{key:"addDatabaseToSchema",value:function(d,e,t){var n=Kusto.Language.KustoFacts.GetHostName(e),a=this._kustoJsSchemaV2.GetCluster$1(n);a||(a=new mu.ClusterSymbol.$ctor1(n,null,!1));var r=u.convertToDatabaseSymbol(t);return a=a.AddOrUpdateDatabase(r),this._kustoJsSchemaV2=this._kustoJsSchemaV2.AddOrReplaceCluster(a),this._script=Du.CodeScript.From$1(d.getText(),this._kustoJsSchemaV2),Promise.resolve()}},{key:"setSchema",value:function(d){if(this._schema=d,d&&"Engine"===d.clusterType){var e=this.convertToKustoJsSchemaV2(d);this._kustoJsSchemaV2=e,this._script=void 0,this._parsePropertiesV2=void 0}var t=d?u.convertToKustoJsSchema(d):void 0;return this._kustoJsSchema=t,this.createRulesProvider(t,d.clusterType),Promise.resolve()}},{key:"setParameters",value:function(d,e){var t;if("Engine"!==this._schema.clusterType)throw new Error("setParameters requires intellisense V2 and Engine cluster");this._schema.globalScalarParameters=d,this._schema.globalTabularParameters=e;var n=d.map((function(d){return u.createParameterSymbol(d)})),a=e.map((function(d){return u.createTabularParameterSymbol(d)}));this._kustoJsSchemaV2=this._kustoJsSchemaV2.WithParameters(u.toBridgeList([].concat(eu(n),eu(a)))),this._script=null===(t=this._script)||void 0===t?void 0:t.WithGlobals(this._kustoJsSchemaV2);var r=u.convertToKustoJsSchema(this._schema);return this._kustoJsSchema=r,this.createRulesProvider(r,this._schema.clusterType),Promise.resolve(void 0)}},{key:"setSchemaFromShowSchema",value:function(u,d,e,t,n,a){var r=this._normalizeSchema(u,d,e,a);return this.setSchema(q(q({},r),{},{globalScalarParameters:t,globalTabularParameters:n}))}},{key:"_normalizeSchema",value:function(u,d,e,t){var n=Object.keys(u.Databases).map((function(d){return u.Databases[d]})).map((function(u){var d,e=u.Name,n=u.Tables,a=u.ExternalTables,r=u.MaterializedViews,c=u.Functions,f=u.EntityGroups,o=void 0===f?{}:f,i=u.MinorVersion,l=u.MajorVersion;return{name:e,alternateName:t,minorVersion:i,majorVersion:l,entityGroups:Object.entries(o).map((function(u){var d=Z(u,2);return{name:d[0],members:d[1]}})),tables:(d=[]).concat.apply(d,eu([[n,"Table"],[r,"MaterializedView"],[a,"ExternalTable"]].filter((function(u){return Z(u,1)[0]})).map((function(u){var d=Z(u,2),e=d[0],t=d[1];return Object.values(e).map((function(u){var d=u.Name,e=u.OrderedColumns;return{name:d,docstring:u.DocString,entityType:t,columns:e.map((function(u){var d=u.Name;u.Type;var e=u.DocString;return{name:d,type:u.CslType,docstring:e,examples:u.Examples}}))}}))})))),functions:Object.keys(c).map((function(u){return c[u]})).map((function(u){return{name:u.Name,body:u.Body,docstring:u.DocString,inputParameters:u.InputParameters.map((function(u){return{name:u.Name,type:u.Type,cslType:u.CslType,cslDefaultValue:u.CslDefaultValue,columns:u.Columns?u.Columns.map((function(u){return{name:u.Name,type:u.Type,cslType:u.CslType}})):u.Columns}}))}}))}}));return{clusterType:"Engine",cluster:{connectionString:d,databases:n},database:n.filter((function(u){return u.name===e}))[0]}}},{key:"normalizeSchema",value:function(u,d,e,t){return Promise.resolve(this._normalizeSchema(u,d,e,t))}},{key:"getSchema",value:function(){return Promise.resolve(this._schema)}},{key:"getCommandInContext",value:function(u,d){return this.getCommandInContextV2(u,d)}},{key:"getCommandAndLocationInContext",value:function(u,e){if(!u)return Promise.resolve(null);var t=this.parseDocumentV2(u),n=this.getCurrentCommandV2(t,e);if(!n)return Promise.resolve(null);var a=u.positionAt(n.Start),r=u.positionAt(n.End),c=d.Location.create(u.uri,d.Range.create(a,r)),f=n.Text;return Promise.resolve({text:f,location:c})}},{key:"getCommandInContextV2",value:function(u,d){if(!u)return Promise.resolve(null);var e=this.parseDocumentV2(u),t=this.getCurrentCommandV2(e,d);return t?Promise.resolve(t.Text):Promise.resolve(null)}},{key:"getCommandsInDocument",value:function(u){return u?this.getCommandsInDocumentV2(u):Promise.resolve([])}},{key:"getCommandsInDocumentV1",value:function(u){this.parseDocumentV1(u,lu.ParseMode.CommandTokensOnly);var d=this.toArray(this._parser.Results);return Promise.resolve(d.map((function(u){return{absoluteStart:u.AbsoluteStart,absoluteEnd:u.AbsoluteEnd,text:u.Text}})))}},{key:"toPlacementStyle",value:function(u){if(u)switch(u){case"None":return Du.PlacementStyle.None;case"NewLine":return Du.PlacementStyle.NewLine;case"Smart":return Du.PlacementStyle.Smart;default:throw new Error("Unknown PlacementStyle")}}},{key:"getFormattedCommandsInDocumentV2",value:function(u,d,e){var t=this,n=this.parseDocumentV2(u),a=this.toArray(n.Blocks).filter((function(u){if(!u.Text||""==u.Text.trim())return!1;if(null==d||null==e)return!0;for(var t=u.End,n=u.Text,a=n.length-1;a>=0&&("\r"==n[a]||"\n"==n[a]);a--)t--;return u.Start>d&&u.Start<e||(t>d&&t<e||(u.Start<=d&&t>=e||void 0))}));return 0===a.length?{formattedCommands:[]}:{formattedCommands:a.map((function(u){var n,a,r=t._languageSettings.formatter,c=Kusto.Language.Editor.FormattingOptions.Default.WithIndentationSize(null!==(n=null==r?void 0:r.indentationSize)&&void 0!==n?n:4).WithInsertMissingTokens(!1).WithPipeOperatorStyle(null!==(a=t.toPlacementStyle(null==r?void 0:r.pipeOperatorStyle))&&void 0!==a?a:Du.PlacementStyle.Smart).WithSemicolonStyle(Kusto.Language.Editor.PlacementStyle.None).WithBrackettingStyle(Du.BrackettingStyle.Diagonal);return null==d||null==e||d===u.Start&&u.End,u.Service.GetFormattedText(c).Text})),originalRange:this.createRange(u,a[0].Start,a[a.length-1].End)}}},{key:"getCommandsInDocumentV2",value:function(u){var d=this.parseDocumentV2(u),e=this.toArray(d.Blocks).filter((function(u){return""!=u.Text.trim()}));return Promise.resolve(e.map((function(u){return{absoluteStart:u.Start,absoluteEnd:u.End,text:u.Text}})))}},{key:"getClientDirective",value:function(u){var d={v:null},e=lu.CslCommandParser.IsClientDirective(u,d);return Promise.resolve({isClientDirective:e,directiveWithoutLeadingComments:d.v})}},{key:"getAdminCommand",value:function(u){var d={v:null},e=lu.CslCommandParser.IsAdminCommand$1(u,d);return Promise.resolve({isAdminCommand:e,adminCommandWithoutLeadingComments:d.v})}},{key:"findDefinition",value:function(u,e){if(!u)return Promise.resolve([]);var t=this.parseDocumentV2(u),n=u.offsetAt(e),a=this.getCurrentCommandV2(t,n);if(!a)return Promise.resolve([]);var r=a.Service.GetRelatedElements(u.offsetAt(e)),c=this.toArray(r.Elements)[0];if(!c)return Promise.resolve([]);var f=u.positionAt(c.Start),o=u.positionAt(c.End),i=d.Range.create(f,o),l=d.Location.create(u.uri,i);return Promise.resolve([l])}},{key:"findReferences",value:function(u,e){if(!u)return Promise.resolve([]);var t=this.parseDocumentV2(u),n=u.offsetAt(e),a=this.getCurrentCommandV2(t,n);if(!a)return Promise.resolve([]);var r=a.Service.GetRelatedElements(u.offsetAt(e)),c=this.toArray(r.Elements);if(!c||0==c.length)return Promise.resolve([]);var f=c.map((function(e){var t=u.positionAt(e.Start),n=u.positionAt(e.End),a=d.Range.create(t,n);return d.Location.create(u.uri,a)}));return Promise.resolve(f)}},{key:"getQueryParams",value:function(u,d){if(!u)return Promise.resolve([]);var e=this.parseAndAnalyze(u,d),t=this.toArray(e.Syntax.GetDescendants(Kusto.Language.Syntax.QueryParametersStatement));if(!t||0==t.length)return Promise.resolve([]);var n=[];return t.forEach((function(u){u.WalkElements((function(u){return u.ReferencedSymbol&&u.ReferencedSymbol.Type?n.push({name:u.ReferencedSymbol.Name,type:u.ReferencedSymbol.Type.Name}):void 0}))})),Promise.resolve(n)}},{key:"getRenderInfo",value:function(u,d){var e=this,t=this.parseAndAnalyze(u,d);if(!t)return Promise.resolve(void 0);var n=this.toArray(t.Syntax.GetDescendants(Kusto.Language.Syntax.RenderOperator));if(!n||0===n.length)return Promise.resolve(void 0);var a=n[0],r=a.TextStart,c=a.End,f=a.ChartType.ValueText,o=a.WithClause;if(!o){var i={options:{visualization:f},location:{startOffset:r,endOffset:c}};return Promise.resolve(i)}var l={options:q({visualization:f},this.toArray(o.Properties).reduce((function(u,d){var t=d.Element$1.Name.SimpleName;switch(t){case"xcolumn":var n=d.Element$1.Expression.ReferencedSymbol.Name;u[t]=n;break;case"ycolumns":case"anomalycolumns":var a=e.toArray(d.Element$1.Expression.Names).map((function(u){return u.Element$1.SimpleName}));u[t]=a;break;case"ymin":case"ymax":var r=parseFloat(d.Element$1.Expression.ConstantValue);u[t]=r;break;case"title":case"xtitle":case"ytitle":case"visualization":case"series":var c=d.Element$1.Expression.ConstantValue;u[t]=c;break;case"xaxis":case"yaxis":var f=d.Element$1.Expression.ConstantValue;u[t]=f;break;case"legend":var o=d.Element$1.Expression.ConstantValue;u[t]=o;break;case"ysplit":var i=d.Element$1.Expression.ConstantValue;u[t]=i;break;case"accumulate":var l=d.Element$1.Expression.ConstantValue;u[t]=l;break;case"kind":var s=d.Element$1.Expression.ConstantValue;u[t]=s;break;default:pu(t)}return u}),{})),location:{startOffset:r,endOffset:c}};return Promise.resolve(l)}},{key:"getReferencedSymbols",value:function(u,d){var e=this.parseAndAnalyze(u,d);e||Promise.resolve([]);var t=this.toArray(e.Syntax.GetDescendants(Kusto.Language.Syntax.Expression)).filter((function(u){return null!==u.ReferencedSymbol})).map((function(u){return u.ReferencedSymbol})).map((function(u){var d;return{name:u.Name,kind:null!==(d=Au[u.Kind])&&void 0!==d?d:"".concat(u.Kind),display:"".concat(u.Name," (").concat(u.AlternateName,")")}}));return Promise.resolve(t)}},{key:"getReferencedGlobalParams",value:(t=du(X().mark((function u(d,e){var t,n,a,r,c,f;return X().wrap((function(u){for(;;)switch(u.prev=u.next){case 0:if(t=this.parseAndAnalyze(d,e)){u.next=3;break}return u.abrupt("return",{kind:"ok",parameters:[]});case 3:n=t.GetDiagnostics().GetEnumerator();case 4:if(!n.moveNext()){u.next=12;break}if("KS245"!==n.Current.Code){u.next=9;break}return u.abrupt("return",{kind:"maximumDepthExceeded"});case 9:console.warn("getReferencedGlobalParams: ".concat(n.Current.Code," ").concat(n.Current.Message));case 10:u.next=4;break;case 12:return a=this.toArray(this._kustoJsSchemaV2.Parameters),r=this.toArray(t.Syntax.GetDescendants(Kusto.Language.Syntax.Expression)).filter((function(u){return null!==u.ReferencedSymbol})).map((function(u){return u.ReferencedSymbol})),c=r.filter((function(u){return a.filter((function(d){return d===u})).length>0})),f=c.map((function(u){return{name:u.Name,type:u.Type.Name}})),u.abrupt("return",{kind:"ok",parameters:f});case 17:case"end":return u.stop()}}),u,this)}))),function(u,d){return t.apply(this,arguments)})},{key:"getGlobalParams",value:function(u){var d=this.toArray(this._kustoJsSchemaV2.Parameters).map((function(u){return{name:u.Name,type:u.Type.Name}}));return Promise.resolve(d)}},{key:"doRename",value:function(u,e,t){if(!u)return Promise.resolve(void 0);var n=this.parseDocumentV2(u),a=u.offsetAt(e),r=this.getCurrentCommandV2(n,a);if(!r)return Promise.resolve(void 0);var c=r.Service.GetRelatedElements(u.offsetAt(e)),f=this.toArray(c.Elements),o=f.filter((function(u){return u.Kind==Du.RelatedElementKind.Declaration}));if(!o||0==o.length)return Promise.resolve(void 0);var i=f.map((function(e){var n=u.positionAt(e.Start),a=u.positionAt(e.End),r=d.Range.create(n,a);return d.TextEdit.replace(r,t)})),l={changes:au({},u.uri,i)};return Promise.resolve(l)}},{key:"doHover",value:function(u,d){if(!u)return Promise.resolve(void 0);var e=this.parseDocumentV2(u),t=u.offsetAt(d),n=this.getCurrentCommandV2(e,t);if(!n)return Promise.resolve(void 0);if(!n.Service.IsFeatureSupported(Du.CodeServiceFeatures.QuickInfo,t))return Promise.resolve(void 0);var a=n.Service.GetQuickInfo(t);if(!a||!a.Items)return Promise.resolve(void 0);var r=this.toArray(a.Items);if(!r)return Promise.resolve(void 0);var c=(r=r.filter((function(u){return u.Kind!==Du.QuickInfoKind.Error&&u.Kind!==Du.QuickInfoKind.Suggestion&&u.Kind!==Du.QuickInfoKind.Warning}))).map((function(u){return u.Text.replace("\n\n","\n* * *\n")})).join("\n* * *\n");return Promise.resolve({contents:c})}},{key:"convertToKustoJsSchemaV2",value:function(d){var e,t,n=this._schemaCache[d.cluster.connectionString];n||(this._schemaCache[d.cluster.connectionString]={},n=this._schemaCache[d.cluster.connectionString]);var a=d.cluster.databases.reduce((function(u,d){return u[d.name]=d}),{});Object.keys(n).map((function(u){a[u]||delete n.dbName}));var r=bu.Default,c=d.database?d.database.name:void 0,f=void 0,o=d.cluster.databases.map((function(d){var e=d.name===c,t=n[d.name];if(!t||t.database.majorVersion<d.majorVersion||e&&!t.includesFunctions){var a=u.convertToDatabaseSymbol(d);n[d.name]={database:d,symbol:a,includesFunctions:e}}var r=n[d.name].symbol;return d.name===c&&(f=r),r})),i=d.cluster.connectionString.match(/(.*\/\/)?([^\/;]*)/)[2],l=i.split(i.includes(".kusto")?".kusto":".")[0],s=new mu.ClusterSymbol.ctor(l,o);r=r.WithCluster(s),f&&(r=r.WithDatabase(f));var D=(null!==(e=d.globalScalarParameters)&&void 0!==e?e:[]).map((function(d){return u.createParameterSymbol(d)})),m=(null!==(t=d.globalTabularParameters)&&void 0!==t?t:[]).map((function(d){return u.createTabularParameterSymbol(d)}));return(m.length||D.length)&&(r=r.WithParameters(u.toBridgeList([].concat(eu(D),eu(m))))),r}},{key:"getClassificationsFromParseResult",value:function(){var u=this,d=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.toArray(this._parser.Results).map((function(d){return u.toArray(d.Tokens)})).reduce((function(u,d){return u.concat(d)}),[]).map((function(e){return new Du.ClassifiedRange(u.tokenKindToClassificationKind(e.TokenKind),e.AbsoluteStart+d,e.Length)}))}},{key:"parseTextV1",value:function(u,d){this._parser.Parse("Engine"===this._schema.clusterType?this._rulesProvider:null,u,d)}},{key:"parseDocumentV1",value:function(u,d){this._parsePropertiesV1&&!this._parsePropertiesV1.isParseNeeded(u,this._rulesProvider,d)||(this.parseTextV1(u.getText(),d),this._parsePropertiesV1=new Fu(u.version,u.uri,this._rulesProvider,d))}},{key:"parseDocumentV2",value:function(u){return this._parsePropertiesV2&&!this._parsePropertiesV2.isParseNeeded(u,this._rulesProvider)||(this._script?this._script=this._script.WithText(u.getText()):this._script=Du.CodeScript.From$1(u.getText(),this._kustoJsSchemaV2),this._parsePropertiesV2=new Fu(u.version,u.uri)),this._script}},{key:"getCurrentCommand",value:function(u,d){var e=this.toArray(this._parser.Results),t=e.filter((function(u){return u.AbsoluteStart<=d&&u.AbsoluteEnd>=d}))[0];return t||(t=e.filter((function(u){return u.AbsoluteStart<=d&&u.AbsoluteEnd+1>=d}))[0])&&!t.Text.endsWith("\r\n\r\n")?t:null}},{key:"getCurrentCommandV2",value:function(u,d){return u.GetBlockAtPosition(d)}},{key:"getTextToInsert",value:function(u,e){var t=u.GetBeforeApplyInfo(e.Value),n=u.GetAfterApplyInfo(e.Value),a=t.Text||""+e.Value+n.Text||"",r=d.InsertTextFormat.PlainText;if(n.OffsetToken&&n.OffsetPosition){var c=a.indexOf(n.OffsetToken);c>=0&&(a=this.insertToString(a,"$0",c-a.length+n.OffsetPosition),r=d.InsertTextFormat.Snippet)}else n.OffsetPosition&&(a=this.insertToString(a,"$0",n.OffsetPosition),r=d.InsertTextFormat.Snippet);return{insertText:a,insertTextFormat:r}}},{key:"insertToString",value:function(u,d,e){var t=u.length+e;return e>=0||t<0?u:u.substring(0,t)+d+u.substring(t)}},{key:"getCommandWithoutLastWord",value:function(u){var d=G("[\\w_]*$","s");return u.replace(d,"")}},{key:"createRulesProvider",value:function(u,d){var e=new(Cu(String)),t=new(Cu(String));if(this._parser=new lu.CslCommandParser,"Engine"!=d)if("DataManagement"!==d){var n=u,a=n.accounts,r=n.services,c=n.connectionString;new lu.KustoIntelliSenseAccountEntity,new lu.KustoIntelliSenseServiceEntity,this._rulesProvider=new lu.ClusterManagerIntelliSenseRulesProvider.$ctor1(new Bridge.ArrayEnumerable(a),new Bridge.ArrayEnumerable(r),c)}else this._rulesProvider=new lu.DataManagerIntelliSenseRulesProvider(null);else{var f=u;this._rulesProvider=this._languageSettings&&this._languageSettings.includeControlCommands?new lu.CslIntelliSenseRulesProvider.$ctor1(f.Cluster,f,e,t,null,!0,!0):new lu.CslQueryIntelliSenseRulesProvider.$ctor1(f.Cluster,f,e,t,null,null,null)}}},{key:"kustoKindToLsKind",value:function(u){var e=this._kustoKindtolsKind[u];return e||d.CompletionItemKind.Variable}},{key:"kustoKindToLsKindV2",value:function(u){var e=this._kustoKindToLsKindV2[u];return e||d.CompletionItemKind.Variable}},{key:"createRange",value:function(u,e,t){return d.Range.create(u.positionAt(e),u.positionAt(t))}},{key:"toArray",value:function(u){return Bridge.toArray(u)}},{key:"tokenKindToClassificationKind",value:function(u){return this._tokenKindToClassificationKind[u]||Du.ClassificationKind.PlainText}},{key:"parseAndAnalyze",value:function(u,d){if(u){var e=this.parseDocumentV2(u),t=e.Text;if(void 0!==d){var n=this.getCurrentCommandV2(e,d);if(!n)return;t=n.Text}return Kusto.Language.KustoCode.ParseAndAnalyze(t,this._kustoJsSchemaV2)}}}],[{key:"dummySchema",get:function(){return{clusterType:"Engine",cluster:{connectionString:"",databases:[]},database:void 0}}},{key:"convertToEntityDataType",value:function(u){}},{key:"convertToKustoJsSchema",value:function(u){switch(u.clusterType){case"Engine":var d=u.database?u.database.name:void 0,t=new lu.KustoIntelliSenseClusterEntity,n=void 0;t.ConnectionString=u.cluster.connectionString;var a=[];return u.cluster.databases.forEach((function(u){var t=new lu.KustoIntelliSenseDatabaseEntity;t.Name=u.name;var r=[];u.tables.forEach((function(u){var d=new lu.KustoIntelliSenseTableEntity;d.Name=u.name;var t=[];u.columns.forEach((function(u){var d=new lu.KustoIntelliSenseColumnEntity;d.Name=u.name,d.TypeCode=lu.EntityDataType[e.getEntityDataTypeFromCslType(u.type)],t.push(d)})),d.Columns=new Bridge.ArrayEnumerable(t),r.push(d)}));var c=[];u.functions.forEach((function(u){var d=new lu.KustoIntelliSenseFunctionEntity;d.Name=u.name,d.CallName=e.getCallName(u),d.Expression=e.getExpression(u),c.push(d)})),t.Tables=new Bridge.ArrayEnumerable(r),t.Functions=new Bridge.ArrayEnumerable(c),a.push(t),u.name==d&&(n=t)})),t.Databases=new Bridge.ArrayEnumerable(a),new lu.KustoIntelliSenseQuerySchema(t,n);case"ClusterManager":return{accounts:u.accounts.map((function(u){var d=new lu.KustoIntelliSenseAccountEntity;return d.Name=u,d})),services:u.services.map((function(u){var d=new lu.KustoIntelliSenseServiceEntity;return d.Name=u,d})),connectionString:u.connectionString};case"DataManagement":return;default:return pu(u)}}},{key:"scalarParametersToSignature",value:function(u){var d=u.map((function(u){return"".concat(u.name,": ").concat(u.cslType)})).join(", ");return"(".concat(d,")")}},{key:"inputParameterToSignature",value:function(u){var d=this,e=u.map((function(u){if(u.columns){var e=d.scalarParametersToSignature(u.columns);return"".concat(u.name,": ").concat(e)}return"".concat(u.name,": ").concat(u.cslType)})).join(", ");return"(".concat(e,")")}},{key:"toLetStatement",value:function(u){var d=this.inputParameterToSignature(u.inputParameters);return"let ".concat(u.name," = ").concat(d," ").concat(u.body)}},{key:"createColumnSymbol",value:function(d){return new mu.ColumnSymbol(d.name,mu.ScalarTypes.GetSymbol(e.getCslTypeNameFromClrType(d.type)),d.docstring,null,null,d.examples?u.toBridgeList(d.examples):null)}},{key:"createParameterSymbol",value:function(u){var d,t=Kusto.Language.Symbols.ScalarTypes.GetSymbol(e.getCslTypeNameFromClrType(u.type));return new mu.ParameterSymbol(u.name,t,null!==(d=u.docstring)&&void 0!==d?d:null)}},{key:"createTabularParameterSymbol",value:function(d){var e=d.columns.map((function(d){return u.createColumnSymbol(d)})),t=new Kusto.Language.Symbols.TableSymbol.$ctor4(d.name,e);return new mu.ParameterSymbol(d.name,t,d.docstring)}},{key:"createParameter",value:function(d){if(!d.columns){var t,n=Kusto.Language.Symbols.ScalarTypes.GetSymbol(e.getCslTypeNameFromClrType(d.type)),a=d.cslDefaultValue&&"string"==typeof d.cslDefaultValue?su.QueryParser.ParseLiteral$1(d.cslDefaultValue):void 0;return new mu.Parameter.$ctor3(d.name,n,null,null,d.examples?u.toBridgeList(d.examples):null,!1,null,1,1,a,null!==(t=d.docstring)&&void 0!==t?t:null)}if(0==d.columns.length)return new mu.Parameter.ctor(d.name,mu.ParameterTypeKind.Tabular,mu.ArgumentKind.Expression,null,null,!1,null,1,1,null,null);var r=new mu.TableSymbol.ctor(d.columns.map((function(d){return u.createColumnSymbol(d)})));return new mu.Parameter.$ctor2(d.name,r)}},{key:"convertToDatabaseSymbol",value:function(u){var d=(u.tables||[]).map(this.createTableSymbol),e=(u.functions||[]).map(this.createFunctionSymbol),t=(u.entityGroups||[]).map(this.createEntityGroupSymbol);return new mu.DatabaseSymbol.$ctor2(u.name,u.alternateName||null,d.concat(e).concat(t))}},{key:"trimTrailingNewlineFromRange",value:function(u,e,t,n){for(var a=u.length-1;"\r"===u[a]||"\n"===u[a];)--a;var r=e+a+1,c=t.positionAt(r);return d.Range.create(n.start,c)}},{key:"toBridgeList",value:function(u){return new(System.Collections.Generic.List$1(System.Object).$ctor1)(u)}},{key:"createFunctionSymbol",value:function(d){var e=d.inputParameters.map((function(d){return u.createParameter(d)}));return new mu.FunctionSymbol.$ctor14(d.name,d.body,u.toBridgeList(e),d.docstring)}},{key:"createTableSymbol",value:function(d){var e,t=d.name,n=d.columns,a=d.entityType,r=d.docstring,c=function(u,d){if(null==u)return{};var e,t,n=function(u,d){if(null==u)return{};var e={};for(var t in u)if({}.hasOwnProperty.call(u,t)){if(d.indexOf(t)>=0)continue;e[t]=u[t]}return e}(u,d);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(u);for(t=0;t<a.length;t++)e=a[t],d.indexOf(e)>=0||{}.propertyIsEnumerable.call(u,e)&&(n[e]=u[e])}return n}(d,H),f=new Bridge.ArrayEnumerable(n.map((function(d){return u.createColumnSymbol(d)})));switch(a){case"MaterializedViewTable":var o=null!==(e=c.mvQuery)&&void 0!==e?e:null;return new mu.MaterializedViewSymbol.$ctor2(t,f,o,r);case"ExternalTable":return new mu.ExternalTableSymbol.$ctor3(t,f,r);default:return new mu.TableSymbol.$ctor6(t,f,r)}}},{key:"createEntityGroupSymbol",value:function(u){return new mu.EntityGroupSymbol.$ctor3(u.name,u.members.join(),null)}}]);var t,n}(),gu=new Eu(Eu.dummySchema,{includeControlCommands:!0,completionOptions:{includeExtendedSyntax:!1}});function vu(u){return vu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(u){return typeof u}:function(u){return u&&"function"==typeof Symbol&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u},vu(u)}function yu(u,d){var e="undefined"!=typeof Symbol&&u[Symbol.iterator]||u["@@iterator"];if(!e){if(Array.isArray(u)||(e=function(u,d){if(u){if("string"==typeof u)return Su(u,d);var e={}.toString.call(u).slice(8,-1);return"Object"===e&&u.constructor&&(e=u.constructor.name),"Map"===e||"Set"===e?Array.from(u):"Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?Su(u,d):void 0}}(u))||d&&u&&"number"==typeof u.length){e&&(u=e);var t=0,n=function(){};return{s:n,n:function(){return t>=u.length?{done:!0}:{done:!1,value:u[t++]}},e:function(u){throw u},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,r=!0,c=!1;return{s:function(){e=e.call(u)},n:function(){var u=e.next();return r=u.done,u},e:function(u){c=!0,a=u},f:function(){try{r||null==e.return||e.return()}finally{if(c)throw a}}}}function Su(u,d){(null==d||d>u.length)&&(d=u.length);for(var e=0,t=Array(d);e<d;e++)t[e]=u[e];return t}function Bu(u,d){for(var e=0;e<d.length;e++){var t=d[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(u,ku(t.key),t)}}function ku(u){var d=function(u,d){if("object"!=vu(u)||!u)return u;var e=u[Symbol.toPrimitive];if(void 0!==e){var t=e.call(u,d||"default");if("object"!=vu(t))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===d?String:Number)(u)}(u,"string");return"symbol"==vu(d)?d:d+""}var xu=function(){return u=function u(d,e){!function(u,d){if(!(u instanceof d))throw new TypeError("Cannot call a class as a function")}(this,u),this._ctx=d,this._languageSettings=e.languageSettings,this._languageService=gu,this._languageService.configure(this._languageSettings)},e=[{key:"setSchema",value:function(u){return this._languageService.setSchema(u)}},{key:"addClusterToSchema",value:function(u,d,e){var t=this._getTextDocument(u);return t?this._languageService.addClusterToSchema(t,d,e):(console.error("addClusterToSchema: document is ".concat(t,". uri is ").concat(u)),Promise.resolve())}},{key:"addDatabaseToSchema",value:function(u,d,e){var t=this._getTextDocument(u);return t?this._languageService.addDatabaseToSchema(t,d,e):(console.error("addDatabaseToSchema: document is ".concat(t,". uri is ").concat(u)),Promise.resolve())}},{key:"setSchemaFromShowSchema",value:function(u,d,e){return this._languageService.setSchemaFromShowSchema(u,d,e)}},{key:"normalizeSchema",value:function(u,d,e){return this._languageService.normalizeSchema(u,d,e)}},{key:"getSchema",value:function(){return this._languageService.getSchema()}},{key:"getCommandInContext",value:function(u,d){var e=this._getTextDocument(u);if(!e)return console.error("getCommandInContext: document is ".concat(e,". uri is ").concat(u)),null;var t=this._languageService.getCommandInContext(e,d);return void 0===t?null:t}},{key:"getQueryParams",value:function(u,d){var e=this._getTextDocument(u);if(!e)return console.error("getQueryParams: document is ".concat(e,". uri is ").concat(u)),null;var t=this._languageService.getQueryParams(e,d);return void 0===t?null:t}},{key:"getGlobalParams",value:function(u){var d=this._getTextDocument(u);if(!d)return console.error("getGLobalParams: document is ".concat(d,". uri is ").concat(u)),null;var e=this._languageService.getGlobalParams(d);return void 0===e?null:e}},{key:"getReferencedSymbols",value:function(u,d){var e=this._getTextDocument(u);if(!e)return console.error("getReferencedSymbols: document is ".concat(e,". uri is ").concat(u)),null;var t=this._languageService.getReferencedSymbols(e,d);return void 0===t?null:t}},{key:"getReferencedGlobalParams",value:function(u,d){var e=this._getTextDocument(u);if(!e)return console.error("getReferencedGlobalParams: document is ".concat(e,". uri is ").concat(u)),null;var t=this._languageService.getReferencedGlobalParams(e,d);return void 0===t?null:t}},{key:"getRenderInfo",value:function(u,d){var e=this._getTextDocument(u);return e||console.error("getRenderInfo: document is ".concat(e,". uri is ").concat(u)),this._languageService.getRenderInfo(e,d).then((function(u){return u||null}))}},{key:"getCommandAndLocationInContext",value:function(u,d){var e=this._getTextDocument(u);return e?this._languageService.getCommandAndLocationInContext(e,d).then((function(u){if(!u)return null;var d=u.text,e=u.location.range,t=e.start,n=e.end;return{range:{startLineNumber:t.line+1,startColumn:t.character+1,endLineNumber:n.line+1,endColumn:n.character+1},text:d}})):(console.error("getCommandAndLocationInContext: document is ".concat(e,". uri is ").concat(u)),Promise.resolve(null))}},{key:"getCommandsInDocument",value:function(u){var d=this._getTextDocument(u);return d?this._languageService.getCommandsInDocument(d):(console.error("getCommandInDocument: document is ".concat(d,". uri is ").concat(u)),null)}},{key:"doComplete",value:function(u,d){var e=this._getTextDocument(u);return e?this._languageService.doComplete(e,d):null}},{key:"doValidation",value:function(u,d,e,t){var n=this._getTextDocument(u);return this._languageService.doValidation(n,d,e,t)}},{key:"getResultActions",value:function(u,d,e){var t=this._getTextDocument(u);return this._languageService.getResultActions(t,d,e)}},{key:"doRangeFormat",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.doRangeFormat(e,d)}},{key:"doFolding",value:function(u){var d=this._getTextDocument(u);return this._languageService.doFolding(d)}},{key:"doDocumentFormat",value:function(u){var d=this._getTextDocument(u);return this._languageService.doDocumentFormat(d)}},{key:"doCurrentCommandFormat",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.doCurrentCommandFormat(e,d)}},{key:"getClassifications",value:function(u){var d=this._getTextDocument(u);return this._languageService.getClassifications(d)}},{key:"getClientDirective",value:function(u){return this._languageService.getClientDirective(u)}},{key:"getAdminCommand",value:function(u){return this._languageService.getAdminCommand(u)}},{key:"findDefinition",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.findDefinition(e,d)}},{key:"findReferences",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.findReferences(e,d)}},{key:"doRename",value:function(u,d,e){var t=this._getTextDocument(u);return this._languageService.doRename(t,d,e)}},{key:"doHover",value:function(u,d){var e=this._getTextDocument(u);return this._languageService.doHover(e,d)}},{key:"setParameters",value:function(u,d){return this._languageService.setParameters(u,d)}},{key:"getClusterReferences",value:function(u,d){var e=this._getTextDocument(u);return e?this._languageService.getClusterReferences(e,d):Promise.resolve(null)}},{key:"getDatabaseReferences",value:function(u,d){var e=this._getTextDocument(u);return e?this._languageService.getDatabaseReferences(e,d):Promise.resolve(null)}},{key:"_getTextDocument",value:function(u){var e,t=yu(this._ctx.getMirrorModels());try{for(t.s();!(e=t.n()).done;){var n=e.value;if(n.uri.toString()===u)return d.TextDocument.create(u,this._languageId,n.version,n.getValue())}}catch(u){t.e(u)}finally{t.f()}return null}}],e&&Bu(u.prototype,e),t&&Bu(u,t),Object.defineProperty(u,"prototype",{writable:!1}),u;var u,e,t}();u.KustoWorkerImpl=xu,u.create=function(u,d){return new xu(u,d)}}));