UNPKG

directus-extension-meilisearch-integration

Version:
67 lines 217 kB
var e="object"==typeof global&&global&&global.Object===Object&&global,t="object"==typeof self&&self&&self.Object===Object&&self,r=e||t||Function("return this")(),n=r.Symbol,s=Object.prototype,a=s.hasOwnProperty,i=s.toString,o=n?n.toStringTag:void 0;var l=Object.prototype.toString;var u="[object Null]",c="[object Undefined]",d=n?n.toStringTag:void 0;function p(e){return null==e?void 0===e?c:u:d&&d in Object(e)?function(e){var t=a.call(e,o),r=e[o];try{e[o]=void 0;var n=!0}catch(e){}var s=i.call(e);return n&&(t?e[o]=r:delete e[o]),s}(e):function(e){return l.call(e)}(e)}function h(e){return null!=e&&"object"==typeof e}var g="[object Symbol]";function m(e,t){for(var r=-1,n=null==e?0:e.length,s=Array(n);++r<n;)s[r]=t(e[r],r,e);return s}var f=Array.isArray,y=1/0,b=n?n.prototype:void 0,v=b?b.toString:void 0;function w(e){if("string"==typeof e)return e;if(f(e))return m(e,w)+"";if(function(e){return"symbol"==typeof e||h(e)&&p(e)==g}(e))return v?v.call(e):"";var t=e+"";return"0"==t&&1/e==-y?"-0":t}var _=/\s/;var k=/^\s+/;function x(e){return e?e.slice(0,function(e){for(var t=e.length;t--&&_.test(e.charAt(t)););return t}(e)+1).replace(k,""):e}function q(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function T(e){return e}var A="[object AsyncFunction]",O="[object Function]",E="[object GeneratorFunction]",S="[object Proxy]";function R(e){if(!q(e))return!1;var t=p(e);return t==O||t==E||t==A||t==S}var D,C=r["__core-js_shared__"],N=(D=/[^.]+$/.exec(C&&C.keys&&C.keys.IE_PROTO||""))?"Symbol(src)_1."+D:"";var $=Function.prototype.toString;var j=/^\[object .+?Constructor\]$/,I=Function.prototype,F=Object.prototype,L=I.toString,P=F.hasOwnProperty,B=RegExp("^"+L.call(P).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Z(e){return!(!q(e)||(t=e,N&&N in t))&&(R(e)?B:j).test(function(e){if(null!=e){try{return $.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e));var t}function U(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Z(r)?r:void 0}var M=Date.now;var H,V,W,z=function(){try{var e=U(Object,"defineProperty");return e({},"",{}),e}catch(e){}}(),K=z?function(e,t){return z(e,"toString",{configurable:!0,enumerable:!1,value:(r=t,function(){return r}),writable:!0});var r}:T,G=(H=K,V=0,W=0,function(){var e=M(),t=16-(e-W);if(W=e,t>0){if(++V>=800)return arguments[0]}else V=0;return H.apply(void 0,arguments)});function J(e){return e!=e}function Y(e,t,r){return t==t?function(e,t,r){for(var n=r-1,s=e.length;++n<s;)if(e[n]===t)return n;return-1}(e,t,r):function(e,t,r,n){for(var s=e.length,a=r+(n?1:-1);n?a--:++a<s;)if(t(e[a],a,e))return a;return-1}(e,J,r)}function Q(e,t){return!!(null==e?0:e.length)&&Y(e,t,0)>-1}var X=Math.max;var ee=9007199254740991;function te(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=ee}(e.length)&&!R(e)}var re=U(Object,"create");var ne=Object.prototype.hasOwnProperty;var se=Object.prototype.hasOwnProperty;function ae(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function ie(e,t){for(var r,n,s=e.length;s--;)if((r=e[s][0])===(n=t)||r!=r&&n!=n)return s;return-1}ae.prototype.clear=function(){this.__data__=re?re(null):{},this.size=0},ae.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},ae.prototype.get=function(e){var t=this.__data__;if(re){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return ne.call(t,e)?t[e]:void 0},ae.prototype.has=function(e){var t=this.__data__;return re?void 0!==t[e]:se.call(t,e)},ae.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=re&&void 0===t?"__lodash_hash_undefined__":t,this};var oe=Array.prototype.splice;function le(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}le.prototype.clear=function(){this.__data__=[],this.size=0},le.prototype.delete=function(e){var t=this.__data__,r=ie(t,e);return!(r<0)&&(r==t.length-1?t.pop():oe.call(t,r,1),--this.size,!0)},le.prototype.get=function(e){var t=this.__data__,r=ie(t,e);return r<0?void 0:t[r][1]},le.prototype.has=function(e){return ie(this.__data__,e)>-1},le.prototype.set=function(e,t){var r=this.__data__,n=ie(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this};var ue=U(r,"Map");function ce(e,t){var r,n,s=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?s["string"==typeof t?"string":"hash"]:s.map}function de(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function pe(e,t,r){var n=e.length;return r=void 0===r?n:r,!t&&r>=n?e:function(e,t,r){var n=-1,s=e.length;t<0&&(t=-t>s?0:s+t),(r=r>s?s:r)<0&&(r+=s),s=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(s);++n<s;)a[n]=e[n+t];return a}(e,t,r)}de.prototype.clear=function(){this.size=0,this.__data__={hash:new ae,map:new(ue||le),string:new ae}},de.prototype.delete=function(e){var t=ce(this,e).delete(e);return this.size-=t?1:0,t},de.prototype.get=function(e){return ce(this,e).get(e)},de.prototype.has=function(e){return ce(this,e).has(e)},de.prototype.set=function(e,t){var r=ce(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this};var he=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");var ge="\\ud800-\\udfff",me="["+ge+"]",fe="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",ye="\\ud83c[\\udffb-\\udfff]",be="[^"+ge+"]",ve="(?:\\ud83c[\\udde6-\\uddff]){2}",we="[\\ud800-\\udbff][\\udc00-\\udfff]",_e="(?:"+fe+"|"+ye+")"+"?",ke="[\\ufe0e\\ufe0f]?",xe=ke+_e+("(?:\\u200d(?:"+[be,ve,we].join("|")+")"+ke+_e+")*"),qe="(?:"+[be+fe+"?",fe,ve,we,me].join("|")+")",Te=RegExp(ye+"(?="+ye+")|"+qe+xe,"g");function Ae(e){return function(e){return he.test(e)}(e)?function(e){return e.match(Te)||[]}(e):function(e){return e.split("")}(e)}function Oe(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new de;++t<r;)this.add(e[t])}function Ee(e,t){return e.has(t)}function Se(e,t,r){for(var n=-1,s=null==e?0:e.length;++n<s;)if(r(t,e[n]))return!0;return!1}Oe.prototype.add=Oe.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Oe.prototype.has=function(e){return this.__data__.has(e)};function Re(e,t,r){var n;if((e=null==(n=e)?"":w(n))&&(r||void 0===t))return x(e);if(!e||!(t=w(t)))return e;var s=Ae(e),a=Ae(t),i=function(e,t){for(var r=-1,n=e.length;++r<n&&Y(t,e[r],0)>-1;);return r}(s,a),o=function(e,t){for(var r=e.length;r--&&Y(t,e[r],0)>-1;);return r}(s,a)+1;return pe(s,i,o).join("")}var De,Ce,Ne=function(e,t){return G(function(e,t,r){return t=X(void 0===t?e.length-1:t,0),function(){for(var n=arguments,s=-1,a=X(n.length-t,0),i=Array(a);++s<a;)i[s]=n[t+s];s=-1;for(var o=Array(t+1);++s<t;)o[s]=n[s];return o[t]=r(i),function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(e,this,o)}}(e,t,T),e+"")}((function(e,t){return h(r=e)&&te(r)?function(e,t,r,n){var s=-1,a=Q,i=!0,o=e.length,l=[],u=t.length;if(!o)return l;r&&(t=m(t,function(e){return function(t){return e(t)}}(r))),n?(a=Se,i=!1):t.length>=200&&(a=Ee,i=!1,t=new Oe(t));e:for(;++s<o;){var c=e[s],d=null==r?c:r(c);if(c=n||0!==c?c:0,i&&d==d){for(var p=u;p--;)if(t[p]===d)continue e;l.push(c)}else a(t,d,n)||l.push(c)}return l}(e,t):[];var r})),$e=Ne,je="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function Ie(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}!function(e){e.assertEqual=e=>e,e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=e=>{const t={};for(const r of e)t[r]=r;return t},e.getValidEnumValues=t=>{const r=e.objectKeys(t).filter((e=>"number"!=typeof t[t[e]])),n={};for(const e of r)n[e]=t[e];return e.objectValues(n)},e.objectValues=t=>e.objectKeys(t).map((function(e){return t[e]})),e.objectKeys="function"==typeof Object.keys?e=>Object.keys(e):e=>{const t=[];for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.push(r);return t},e.find=(e,t)=>{for(const r of e)if(t(r))return r},e.isInteger="function"==typeof Number.isInteger?e=>Number.isInteger(e):e=>"number"==typeof e&&isFinite(e)&&Math.floor(e)===e,e.joinValues=function(e,t=" | "){return e.map((e=>"string"==typeof e?`'${e}'`:e)).join(t)},e.jsonStringifyReplacer=(e,t)=>"bigint"==typeof t?t.toString():t}(De||(De={})),function(e){e.mergeShapes=(e,t)=>({...e,...t})}(Ce||(Ce={}));const Fe=De.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Le=e=>{switch(typeof e){case"undefined":return Fe.undefined;case"string":return Fe.string;case"number":return isNaN(e)?Fe.nan:Fe.number;case"boolean":return Fe.boolean;case"function":return Fe.function;case"bigint":return Fe.bigint;case"symbol":return Fe.symbol;case"object":return Array.isArray(e)?Fe.array:null===e?Fe.null:e.then&&"function"==typeof e.then&&e.catch&&"function"==typeof e.catch?Fe.promise:"undefined"!=typeof Map&&e instanceof Map?Fe.map:"undefined"!=typeof Set&&e instanceof Set?Fe.set:"undefined"!=typeof Date&&e instanceof Date?Fe.date:Fe.object;default:return Fe.unknown}},Pe=De.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Be extends Error{constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(e){return e.message},r={_errors:[]},n=e=>{for(const s of e.issues)if("invalid_union"===s.code)s.unionErrors.map(n);else if("invalid_return_type"===s.code)n(s.returnTypeError);else if("invalid_arguments"===s.code)n(s.argumentsError);else if(0===s.path.length)r._errors.push(t(s));else{let e=r,n=0;for(;n<s.path.length;){const r=s.path[n];n===s.path.length-1?(e[r]=e[r]||{_errors:[]},e[r]._errors.push(t(s))):e[r]=e[r]||{_errors:[]},e=e[r],n++}}};return n(this),r}static assert(e){if(!(e instanceof Be))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,De.jsonStringifyReplacer,2)}get isEmpty(){return 0===this.issues.length}flatten(e=e=>e.message){const t={},r=[];for(const n of this.issues)n.path.length>0?(t[n.path[0]]=t[n.path[0]]||[],t[n.path[0]].push(e(n))):r.push(e(n));return{formErrors:r,fieldErrors:t}}get formErrors(){return this.flatten()}}Be.create=e=>new Be(e);const Ze=(e,t)=>{let r;switch(e.code){case Pe.invalid_type:r=e.received===Fe.undefined?"Required":`Expected ${e.expected}, received ${e.received}`;break;case Pe.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,De.jsonStringifyReplacer)}`;break;case Pe.unrecognized_keys:r=`Unrecognized key(s) in object: ${De.joinValues(e.keys,", ")}`;break;case Pe.invalid_union:r="Invalid input";break;case Pe.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${De.joinValues(e.options)}`;break;case Pe.invalid_enum_value:r=`Invalid enum value. Expected ${De.joinValues(e.options)}, received '${e.received}'`;break;case Pe.invalid_arguments:r="Invalid function arguments";break;case Pe.invalid_return_type:r="Invalid function return type";break;case Pe.invalid_date:r="Invalid date";break;case Pe.invalid_string:"object"==typeof e.validation?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,"number"==typeof e.validation.position&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:De.assertNever(e.validation):r="regex"!==e.validation?`Invalid ${e.validation}`:"Invalid";break;case Pe.too_small:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:"date"===e.type?`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:"Invalid input";break;case Pe.too_big:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"bigint"===e.type?`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"date"===e.type?`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:"Invalid input";break;case Pe.custom:r="Invalid input";break;case Pe.invalid_intersection_types:r="Intersection results could not be merged";break;case Pe.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case Pe.not_finite:r="Number must be finite";break;default:r=t.defaultError,De.assertNever(e)}return{message:r}};let Ue=Ze;function Me(){return Ue}const He=e=>{const{data:t,path:r,errorMaps:n,issueData:s}=e,a=[...r,...s.path||[]],i={...s,path:a};if(void 0!==s.message)return{...s,path:a,message:s.message};let o="";const l=n.filter((e=>!!e)).slice().reverse();for(const e of l)o=e(i,{data:t,defaultError:o}).message;return{...s,path:a,message:o}};function Ve(e,t){const r=Me(),n=He({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===Ze?void 0:Ze].filter((e=>!!e))});e.common.issues.push(n)}class We{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(e,t){const r=[];for(const n of t){if("aborted"===n.status)return ze;"dirty"===n.status&&e.dirty(),r.push(n.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,t){const r=[];for(const e of t){const t=await e.key,n=await e.value;r.push({key:t,value:n})}return We.mergeObjectSync(e,r)}static mergeObjectSync(e,t){const r={};for(const n of t){const{key:t,value:s}=n;if("aborted"===t.status)return ze;if("aborted"===s.status)return ze;"dirty"===t.status&&e.dirty(),"dirty"===s.status&&e.dirty(),"__proto__"===t.value||void 0===s.value&&!n.alwaysSet||(r[t.value]=s.value)}return{status:e.value,value:r}}}const ze=Object.freeze({status:"aborted"}),Ke=e=>({status:"dirty",value:e}),Ge=e=>({status:"valid",value:e}),Je=e=>"aborted"===e.status,Ye=e=>"dirty"===e.status,Qe=e=>"valid"===e.status,Xe=e=>"undefined"!=typeof Promise&&e instanceof Promise;function et(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function tt(e,t,r,n,s){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!s)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!s:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?s.call(e,r):s?s.value=r:t.set(e,r),r}var rt,nt,st;"function"==typeof SuppressedError&&SuppressedError,function(e){e.errToObj=e=>"string"==typeof e?{message:e}:e||{},e.toString=e=>"string"==typeof e?e:null==e?void 0:e.message}(rt||(rt={}));class at{constructor(e,t,r,n){this._cachedPath=[],this.parent=e,this.data=t,this._path=r,this._key=n}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const it=(e,t)=>{if(Qe(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new Be(e.common.issues);return this._error=t,this._error}}};function ot(e){if(!e)return{};const{errorMap:t,invalid_type_error:r,required_error:n,description:s}=e;if(t&&(r||n))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');if(t)return{errorMap:t,description:s};return{errorMap:(t,s)=>{var a,i;const{message:o}=e;return"invalid_enum_value"===t.code?{message:null!=o?o:s.defaultError}:void 0===s.data?{message:null!==(a=null!=o?o:n)&&void 0!==a?a:s.defaultError}:"invalid_type"!==t.code?{message:s.defaultError}:{message:null!==(i=null!=o?o:r)&&void 0!==i?i:s.defaultError}},description:s}}class lt{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return Le(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Le(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new We,ctx:{common:e.parent.common,data:e.data,parsedType:Le(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(Xe(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const r=this.safeParse(e,t);if(r.success)return r.data;throw r.error}safeParse(e,t){var r;const n={common:{issues:[],async:null!==(r=null==t?void 0:t.async)&&void 0!==r&&r,contextualErrorMap:null==t?void 0:t.errorMap},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Le(e)},s=this._parseSync({data:e,path:n.path,parent:n});return it(n,s)}async parseAsync(e,t){const r=await this.safeParseAsync(e,t);if(r.success)return r.data;throw r.error}async safeParseAsync(e,t){const r={common:{issues:[],contextualErrorMap:null==t?void 0:t.errorMap,async:!0},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Le(e)},n=this._parse({data:e,path:r.path,parent:r}),s=await(Xe(n)?n:Promise.resolve(n));return it(r,s)}refine(e,t){const r=e=>"string"==typeof t||void 0===t?{message:t}:"function"==typeof t?t(e):t;return this._refinement(((t,n)=>{const s=e(t),a=()=>n.addIssue({code:Pe.custom,...r(t)});return"undefined"!=typeof Promise&&s instanceof Promise?s.then((e=>!!e||(a(),!1))):!!s||(a(),!1)}))}refinement(e,t){return this._refinement(((r,n)=>!!e(r)||(n.addIssue("function"==typeof t?t(r,n):t),!1)))}_refinement(e){return new rr({schema:this,typeName:gr.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return nr.create(this,this._def)}nullable(){return sr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ft.create(this,this._def)}promise(){return tr.create(this,this._def)}or(e){return Bt.create([this,e],this._def)}and(e){return Ht.create(this,e,this._def)}transform(e){return new rr({...ot(this._def),schema:this,typeName:gr.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t="function"==typeof e?e:()=>e;return new ar({...ot(this._def),innerType:this,defaultValue:t,typeName:gr.ZodDefault})}brand(){return new ur({typeName:gr.ZodBranded,type:this,...ot(this._def)})}catch(e){const t="function"==typeof e?e:()=>e;return new ir({...ot(this._def),innerType:this,catchValue:t,typeName:gr.ZodCatch})}describe(e){return new(0,this.constructor)({...this._def,description:e})}pipe(e){return cr.create(this,e)}readonly(){return dr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const ut=/^c[^\s-]{8,}$/i,ct=/^[0-9a-z]+$/,dt=/^[0-9A-HJKMNP-TV-Z]{26}$/,pt=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,ht=/^[a-z0-9_-]{21}$/i,gt=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,mt=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i;let ft;const yt=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,bt=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,vt=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,wt="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",_t=new RegExp(`^${wt}$`);function kt(e){let t="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return e.precision?t=`${t}\\.\\d{${e.precision}}`:null==e.precision&&(t=`${t}(\\.\\d+)?`),t}function xt(e){let t=`${wt}T${kt(e)}`;const r=[];return r.push(e.local?"Z?":"Z"),e.offset&&r.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${r.join("|")})`,new RegExp(`^${t}$`)}class qt extends lt{_parse(e){this._def.coerce&&(e.data=String(e.data));if(this._getType(e)!==Fe.string){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.string,received:t.parsedType}),ze}const t=new We;let r;for(const a of this._def.checks)if("min"===a.kind)e.data.length<a.value&&(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),t.dirty());else if("max"===a.kind)e.data.length>a.value&&(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),t.dirty());else if("length"===a.kind){const n=e.data.length>a.value,s=e.data.length<a.value;(n||s)&&(r=this._getOrReturnCtx(e,r),n?Ve(r,{code:Pe.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}):s&&Ve(r,{code:Pe.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}),t.dirty())}else if("email"===a.kind)mt.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"email",code:Pe.invalid_string,message:a.message}),t.dirty());else if("emoji"===a.kind)ft||(ft=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),ft.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"emoji",code:Pe.invalid_string,message:a.message}),t.dirty());else if("uuid"===a.kind)pt.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"uuid",code:Pe.invalid_string,message:a.message}),t.dirty());else if("nanoid"===a.kind)ht.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"nanoid",code:Pe.invalid_string,message:a.message}),t.dirty());else if("cuid"===a.kind)ut.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"cuid",code:Pe.invalid_string,message:a.message}),t.dirty());else if("cuid2"===a.kind)ct.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"cuid2",code:Pe.invalid_string,message:a.message}),t.dirty());else if("ulid"===a.kind)dt.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"ulid",code:Pe.invalid_string,message:a.message}),t.dirty());else if("url"===a.kind)try{new URL(e.data)}catch(n){r=this._getOrReturnCtx(e,r),Ve(r,{validation:"url",code:Pe.invalid_string,message:a.message}),t.dirty()}else if("regex"===a.kind){a.regex.lastIndex=0;a.regex.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"regex",code:Pe.invalid_string,message:a.message}),t.dirty())}else if("trim"===a.kind)e.data=e.data.trim();else if("includes"===a.kind)e.data.includes(a.value,a.position)||(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),t.dirty());else if("toLowerCase"===a.kind)e.data=e.data.toLowerCase();else if("toUpperCase"===a.kind)e.data=e.data.toUpperCase();else if("startsWith"===a.kind)e.data.startsWith(a.value)||(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.invalid_string,validation:{startsWith:a.value},message:a.message}),t.dirty());else if("endsWith"===a.kind)e.data.endsWith(a.value)||(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.invalid_string,validation:{endsWith:a.value},message:a.message}),t.dirty());else if("datetime"===a.kind){xt(a).test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.invalid_string,validation:"datetime",message:a.message}),t.dirty())}else if("date"===a.kind){_t.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.invalid_string,validation:"date",message:a.message}),t.dirty())}else if("time"===a.kind){new RegExp(`^${kt(a)}$`).test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.invalid_string,validation:"time",message:a.message}),t.dirty())}else"duration"===a.kind?gt.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"duration",code:Pe.invalid_string,message:a.message}),t.dirty()):"ip"===a.kind?(n=e.data,("v4"!==(s=a.version)&&s||!yt.test(n))&&("v6"!==s&&s||!bt.test(n))&&(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"ip",code:Pe.invalid_string,message:a.message}),t.dirty())):"base64"===a.kind?vt.test(e.data)||(r=this._getOrReturnCtx(e,r),Ve(r,{validation:"base64",code:Pe.invalid_string,message:a.message}),t.dirty()):De.assertNever(a);var n,s;return{status:t.value,value:e.data}}_regex(e,t,r){return this.refinement((t=>e.test(t)),{validation:t,code:Pe.invalid_string,...rt.errToObj(r)})}_addCheck(e){return new qt({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...rt.errToObj(e)})}url(e){return this._addCheck({kind:"url",...rt.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...rt.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...rt.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...rt.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...rt.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...rt.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...rt.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...rt.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...rt.errToObj(e)})}datetime(e){var t,r;return"string"==typeof e?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:void 0===(null==e?void 0:e.precision)?null:null==e?void 0:e.precision,offset:null!==(t=null==e?void 0:e.offset)&&void 0!==t&&t,local:null!==(r=null==e?void 0:e.local)&&void 0!==r&&r,...rt.errToObj(null==e?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return"string"==typeof e?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:void 0===(null==e?void 0:e.precision)?null:null==e?void 0:e.precision,...rt.errToObj(null==e?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...rt.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...rt.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:null==t?void 0:t.position,...rt.errToObj(null==t?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...rt.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...rt.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...rt.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...rt.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...rt.errToObj(t)})}nonempty(e){return this.min(1,rt.errToObj(e))}trim(){return new qt({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new qt({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new qt({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((e=>"datetime"===e.kind))}get isDate(){return!!this._def.checks.find((e=>"date"===e.kind))}get isTime(){return!!this._def.checks.find((e=>"time"===e.kind))}get isDuration(){return!!this._def.checks.find((e=>"duration"===e.kind))}get isEmail(){return!!this._def.checks.find((e=>"email"===e.kind))}get isURL(){return!!this._def.checks.find((e=>"url"===e.kind))}get isEmoji(){return!!this._def.checks.find((e=>"emoji"===e.kind))}get isUUID(){return!!this._def.checks.find((e=>"uuid"===e.kind))}get isNANOID(){return!!this._def.checks.find((e=>"nanoid"===e.kind))}get isCUID(){return!!this._def.checks.find((e=>"cuid"===e.kind))}get isCUID2(){return!!this._def.checks.find((e=>"cuid2"===e.kind))}get isULID(){return!!this._def.checks.find((e=>"ulid"===e.kind))}get isIP(){return!!this._def.checks.find((e=>"ip"===e.kind))}get isBase64(){return!!this._def.checks.find((e=>"base64"===e.kind))}get minLength(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}}function Tt(e,t){const r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,s=r>n?r:n;return parseInt(e.toFixed(s).replace(".",""))%parseInt(t.toFixed(s).replace(".",""))/Math.pow(10,s)}qt.create=e=>{var t;return new qt({checks:[],typeName:gr.ZodString,coerce:null!==(t=null==e?void 0:e.coerce)&&void 0!==t&&t,...ot(e)})};class At extends lt{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){this._def.coerce&&(e.data=Number(e.data));if(this._getType(e)!==Fe.number){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.number,received:t.parsedType}),ze}let t;const r=new We;for(const n of this._def.checks)if("int"===n.kind)De.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),Ve(t,{code:Pe.invalid_type,expected:"integer",received:"float",message:n.message}),r.dirty());else if("min"===n.kind){(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),Ve(t,{code:Pe.too_small,minimum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),r.dirty())}else if("max"===n.kind){(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),Ve(t,{code:Pe.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),r.dirty())}else"multipleOf"===n.kind?0!==Tt(e.data,n.value)&&(t=this._getOrReturnCtx(e,t),Ve(t,{code:Pe.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):"finite"===n.kind?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),Ve(t,{code:Pe.not_finite,message:n.message}),r.dirty()):De.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,rt.toString(t))}gt(e,t){return this.setLimit("min",e,!1,rt.toString(t))}lte(e,t){return this.setLimit("max",e,!0,rt.toString(t))}lt(e,t){return this.setLimit("max",e,!1,rt.toString(t))}setLimit(e,t,r,n){return new At({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:rt.toString(n)}]})}_addCheck(e){return new At({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:rt.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:rt.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:rt.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:rt.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:rt.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:rt.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:rt.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:rt.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:rt.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find((e=>"int"===e.kind||"multipleOf"===e.kind&&De.isInteger(e.value)))}get isFinite(){let e=null,t=null;for(const r of this._def.checks){if("finite"===r.kind||"int"===r.kind||"multipleOf"===r.kind)return!0;"min"===r.kind?(null===t||r.value>t)&&(t=r.value):"max"===r.kind&&(null===e||r.value<e)&&(e=r.value)}return Number.isFinite(t)&&Number.isFinite(e)}}At.create=e=>new At({checks:[],typeName:gr.ZodNumber,coerce:(null==e?void 0:e.coerce)||!1,...ot(e)});class Ot extends lt{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){this._def.coerce&&(e.data=BigInt(e.data));if(this._getType(e)!==Fe.bigint){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.bigint,received:t.parsedType}),ze}let t;const r=new We;for(const n of this._def.checks)if("min"===n.kind){(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),Ve(t,{code:Pe.too_small,type:"bigint",minimum:n.value,inclusive:n.inclusive,message:n.message}),r.dirty())}else if("max"===n.kind){(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),Ve(t,{code:Pe.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),r.dirty())}else"multipleOf"===n.kind?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),Ve(t,{code:Pe.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):De.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,rt.toString(t))}gt(e,t){return this.setLimit("min",e,!1,rt.toString(t))}lte(e,t){return this.setLimit("max",e,!0,rt.toString(t))}lt(e,t){return this.setLimit("max",e,!1,rt.toString(t))}setLimit(e,t,r,n){return new Ot({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:rt.toString(n)}]})}_addCheck(e){return new Ot({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:rt.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:rt.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:rt.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:rt.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:rt.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}}Ot.create=e=>{var t;return new Ot({checks:[],typeName:gr.ZodBigInt,coerce:null!==(t=null==e?void 0:e.coerce)&&void 0!==t&&t,...ot(e)})};class Et extends lt{_parse(e){this._def.coerce&&(e.data=Boolean(e.data));if(this._getType(e)!==Fe.boolean){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.boolean,received:t.parsedType}),ze}return Ge(e.data)}}Et.create=e=>new Et({typeName:gr.ZodBoolean,coerce:(null==e?void 0:e.coerce)||!1,...ot(e)});class St extends lt{_parse(e){this._def.coerce&&(e.data=new Date(e.data));if(this._getType(e)!==Fe.date){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.date,received:t.parsedType}),ze}if(isNaN(e.data.getTime())){return Ve(this._getOrReturnCtx(e),{code:Pe.invalid_date}),ze}const t=new We;let r;for(const n of this._def.checks)"min"===n.kind?e.data.getTime()<n.value&&(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.too_small,message:n.message,inclusive:!0,exact:!1,minimum:n.value,type:"date"}),t.dirty()):"max"===n.kind?e.data.getTime()>n.value&&(r=this._getOrReturnCtx(e,r),Ve(r,{code:Pe.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):De.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new St({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:rt.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:rt.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return null!=e?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return null!=e?new Date(e):null}}St.create=e=>new St({checks:[],coerce:(null==e?void 0:e.coerce)||!1,typeName:gr.ZodDate,...ot(e)});class Rt extends lt{_parse(e){if(this._getType(e)!==Fe.symbol){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.symbol,received:t.parsedType}),ze}return Ge(e.data)}}Rt.create=e=>new Rt({typeName:gr.ZodSymbol,...ot(e)});class Dt extends lt{_parse(e){if(this._getType(e)!==Fe.undefined){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.undefined,received:t.parsedType}),ze}return Ge(e.data)}}Dt.create=e=>new Dt({typeName:gr.ZodUndefined,...ot(e)});class Ct extends lt{_parse(e){if(this._getType(e)!==Fe.null){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.null,received:t.parsedType}),ze}return Ge(e.data)}}Ct.create=e=>new Ct({typeName:gr.ZodNull,...ot(e)});class Nt extends lt{constructor(){super(...arguments),this._any=!0}_parse(e){return Ge(e.data)}}Nt.create=e=>new Nt({typeName:gr.ZodAny,...ot(e)});class $t extends lt{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ge(e.data)}}$t.create=e=>new $t({typeName:gr.ZodUnknown,...ot(e)});class jt extends lt{_parse(e){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.never,received:t.parsedType}),ze}}jt.create=e=>new jt({typeName:gr.ZodNever,...ot(e)});class It extends lt{_parse(e){if(this._getType(e)!==Fe.undefined){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.void,received:t.parsedType}),ze}return Ge(e.data)}}It.create=e=>new It({typeName:gr.ZodVoid,...ot(e)});class Ft extends lt{_parse(e){const{ctx:t,status:r}=this._processInputParams(e),n=this._def;if(t.parsedType!==Fe.array)return Ve(t,{code:Pe.invalid_type,expected:Fe.array,received:t.parsedType}),ze;if(null!==n.exactLength){const e=t.data.length>n.exactLength.value,s=t.data.length<n.exactLength.value;(e||s)&&(Ve(t,{code:e?Pe.too_big:Pe.too_small,minimum:s?n.exactLength.value:void 0,maximum:e?n.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:n.exactLength.message}),r.dirty())}if(null!==n.minLength&&t.data.length<n.minLength.value&&(Ve(t,{code:Pe.too_small,minimum:n.minLength.value,type:"array",inclusive:!0,exact:!1,message:n.minLength.message}),r.dirty()),null!==n.maxLength&&t.data.length>n.maxLength.value&&(Ve(t,{code:Pe.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),r.dirty()),t.common.async)return Promise.all([...t.data].map(((e,r)=>n.type._parseAsync(new at(t,e,t.path,r))))).then((e=>We.mergeArray(r,e)));const s=[...t.data].map(((e,r)=>n.type._parseSync(new at(t,e,t.path,r))));return We.mergeArray(r,s)}get element(){return this._def.type}min(e,t){return new Ft({...this._def,minLength:{value:e,message:rt.toString(t)}})}max(e,t){return new Ft({...this._def,maxLength:{value:e,message:rt.toString(t)}})}length(e,t){return new Ft({...this._def,exactLength:{value:e,message:rt.toString(t)}})}nonempty(e){return this.min(1,e)}}function Lt(e){if(e instanceof Pt){const t={};for(const r in e.shape){const n=e.shape[r];t[r]=nr.create(Lt(n))}return new Pt({...e._def,shape:()=>t})}return e instanceof Ft?new Ft({...e._def,type:Lt(e.element)}):e instanceof nr?nr.create(Lt(e.unwrap())):e instanceof sr?sr.create(Lt(e.unwrap())):e instanceof Vt?Vt.create(e.items.map((e=>Lt(e)))):e}Ft.create=(e,t)=>new Ft({type:e,minLength:null,maxLength:null,exactLength:null,typeName:gr.ZodArray,...ot(t)});class Pt extends lt{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;const e=this._def.shape(),t=De.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==Fe.object){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.object,received:t.parsedType}),ze}const{status:t,ctx:r}=this._processInputParams(e),{shape:n,keys:s}=this._getCached(),a=[];if(!(this._def.catchall instanceof jt&&"strip"===this._def.unknownKeys))for(const e in r.data)s.includes(e)||a.push(e);const i=[];for(const e of s){const t=n[e],s=r.data[e];i.push({key:{status:"valid",value:e},value:t._parse(new at(r,s,r.path,e)),alwaysSet:e in r.data})}if(this._def.catchall instanceof jt){const e=this._def.unknownKeys;if("passthrough"===e)for(const e of a)i.push({key:{status:"valid",value:e},value:{status:"valid",value:r.data[e]}});else if("strict"===e)a.length>0&&(Ve(r,{code:Pe.unrecognized_keys,keys:a}),t.dirty());else if("strip"!==e)throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const e=this._def.catchall;for(const t of a){const n=r.data[t];i.push({key:{status:"valid",value:t},value:e._parse(new at(r,n,r.path,t)),alwaysSet:t in r.data})}}return r.common.async?Promise.resolve().then((async()=>{const e=[];for(const t of i){const r=await t.key,n=await t.value;e.push({key:r,value:n,alwaysSet:t.alwaysSet})}return e})).then((e=>We.mergeObjectSync(t,e))):We.mergeObjectSync(t,i)}get shape(){return this._def.shape()}strict(e){return rt.errToObj,new Pt({...this._def,unknownKeys:"strict",...void 0!==e?{errorMap:(t,r)=>{var n,s,a,i;const o=null!==(a=null===(s=(n=this._def).errorMap)||void 0===s?void 0:s.call(n,t,r).message)&&void 0!==a?a:r.defaultError;return"unrecognized_keys"===t.code?{message:null!==(i=rt.errToObj(e).message)&&void 0!==i?i:o}:{message:o}}}:{}})}strip(){return new Pt({...this._def,unknownKeys:"strip"})}passthrough(){return new Pt({...this._def,unknownKeys:"passthrough"})}extend(e){return new Pt({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new Pt({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:gr.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new Pt({...this._def,catchall:e})}pick(e){const t={};return De.objectKeys(e).forEach((r=>{e[r]&&this.shape[r]&&(t[r]=this.shape[r])})),new Pt({...this._def,shape:()=>t})}omit(e){const t={};return De.objectKeys(this.shape).forEach((r=>{e[r]||(t[r]=this.shape[r])})),new Pt({...this._def,shape:()=>t})}deepPartial(){return Lt(this)}partial(e){const t={};return De.objectKeys(this.shape).forEach((r=>{const n=this.shape[r];e&&!e[r]?t[r]=n:t[r]=n.optional()})),new Pt({...this._def,shape:()=>t})}required(e){const t={};return De.objectKeys(this.shape).forEach((r=>{if(e&&!e[r])t[r]=this.shape[r];else{let e=this.shape[r];for(;e instanceof nr;)e=e._def.innerType;t[r]=e}})),new Pt({...this._def,shape:()=>t})}keyof(){return Qt(De.objectKeys(this.shape))}}Pt.create=(e,t)=>new Pt({shape:()=>e,unknownKeys:"strip",catchall:jt.create(),typeName:gr.ZodObject,...ot(t)}),Pt.strictCreate=(e,t)=>new Pt({shape:()=>e,unknownKeys:"strict",catchall:jt.create(),typeName:gr.ZodObject,...ot(t)}),Pt.lazycreate=(e,t)=>new Pt({shape:e,unknownKeys:"strip",catchall:jt.create(),typeName:gr.ZodObject,...ot(t)});class Bt extends lt{_parse(e){const{ctx:t}=this._processInputParams(e),r=this._def.options;if(t.common.async)return Promise.all(r.map((async e=>{const r={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:r}),ctx:r}}))).then((function(e){for(const t of e)if("valid"===t.result.status)return t.result;for(const r of e)if("dirty"===r.result.status)return t.common.issues.push(...r.ctx.common.issues),r.result;const r=e.map((e=>new Be(e.ctx.common.issues)));return Ve(t,{code:Pe.invalid_union,unionErrors:r}),ze}));{let e;const n=[];for(const s of r){const r={...t,common:{...t.common,issues:[]},parent:null},a=s._parseSync({data:t.data,path:t.path,parent:r});if("valid"===a.status)return a;"dirty"!==a.status||e||(e={result:a,ctx:r}),r.common.issues.length&&n.push(r.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;const s=n.map((e=>new Be(e)));return Ve(t,{code:Pe.invalid_union,unionErrors:s}),ze}}get options(){return this._def.options}}Bt.create=(e,t)=>new Bt({options:e,typeName:gr.ZodUnion,...ot(t)});const Zt=e=>e instanceof Jt?Zt(e.schema):e instanceof rr?Zt(e.innerType()):e instanceof Yt?[e.value]:e instanceof Xt?e.options:e instanceof er?De.objectValues(e.enum):e instanceof ar?Zt(e._def.innerType):e instanceof Dt?[void 0]:e instanceof Ct?[null]:e instanceof nr?[void 0,...Zt(e.unwrap())]:e instanceof sr?[null,...Zt(e.unwrap())]:e instanceof ur||e instanceof dr?Zt(e.unwrap()):e instanceof ir?Zt(e._def.innerType):[];class Ut extends lt{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Fe.object)return Ve(t,{code:Pe.invalid_type,expected:Fe.object,received:t.parsedType}),ze;const r=this.discriminator,n=t.data[r],s=this.optionsMap.get(n);return s?t.common.async?s._parseAsync({data:t.data,path:t.path,parent:t}):s._parseSync({data:t.data,path:t.path,parent:t}):(Ve(t,{code:Pe.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),ze)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,r){const n=new Map;for(const r of t){const t=Zt(r.shape[e]);if(!t.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const s of t){if(n.has(s))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(s)}`);n.set(s,r)}}return new Ut({typeName:gr.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:n,...ot(r)})}}function Mt(e,t){const r=Le(e),n=Le(t);if(e===t)return{valid:!0,data:e};if(r===Fe.object&&n===Fe.object){const r=De.objectKeys(t),n=De.objectKeys(e).filter((e=>-1!==r.indexOf(e))),s={...e,...t};for(const r of n){const n=Mt(e[r],t[r]);if(!n.valid)return{valid:!1};s[r]=n.data}return{valid:!0,data:s}}if(r===Fe.array&&n===Fe.array){if(e.length!==t.length)return{valid:!1};const r=[];for(let n=0;n<e.length;n++){const s=Mt(e[n],t[n]);if(!s.valid)return{valid:!1};r.push(s.data)}return{valid:!0,data:r}}return r===Fe.date&&n===Fe.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}class Ht extends lt{_parse(e){const{status:t,ctx:r}=this._processInputParams(e),n=(e,n)=>{if(Je(e)||Je(n))return ze;const s=Mt(e.value,n.value);return s.valid?((Ye(e)||Ye(n))&&t.dirty(),{status:t.value,value:s.data}):(Ve(r,{code:Pe.invalid_intersection_types}),ze)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then((([e,t])=>n(e,t))):n(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}Ht.create=(e,t,r)=>new Ht({left:e,right:t,typeName:gr.ZodIntersection,...ot(r)});class Vt extends lt{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Fe.array)return Ve(r,{code:Pe.invalid_type,expected:Fe.array,received:r.parsedType}),ze;if(r.data.length<this._def.items.length)return Ve(r,{code:Pe.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),ze;!this._def.rest&&r.data.length>this._def.items.length&&(Ve(r,{code:Pe.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const n=[...r.data].map(((e,t)=>{const n=this._def.items[t]||this._def.rest;return n?n._parse(new at(r,e,r.path,t)):null})).filter((e=>!!e));return r.common.async?Promise.all(n).then((e=>We.mergeArray(t,e))):We.mergeArray(t,n)}get items(){return this._def.items}rest(e){return new Vt({...this._def,rest:e})}}Vt.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Vt({items:e,typeName:gr.ZodTuple,rest:null,...ot(t)})};class Wt extends lt{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Fe.object)return Ve(r,{code:Pe.invalid_type,expected:Fe.object,received:r.parsedType}),ze;const n=[],s=this._def.keyType,a=this._def.valueType;for(const e in r.data)n.push({key:s._parse(new at(r,e,r.path,e)),value:a._parse(new at(r,r.data[e],r.path,e)),alwaysSet:e in r.data});return r.common.async?We.mergeObjectAsync(t,n):We.mergeObjectSync(t,n)}get element(){return this._def.valueType}static create(e,t,r){return new Wt(t instanceof lt?{keyType:e,valueType:t,typeName:gr.ZodRecord,...ot(r)}:{keyType:qt.create(),valueType:e,typeName:gr.ZodRecord,...ot(t)})}}class zt extends lt{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Fe.map)return Ve(r,{code:Pe.invalid_type,expected:Fe.map,received:r.parsedType}),ze;const n=this._def.keyType,s=this._def.valueType,a=[...r.data.entries()].map((([e,t],a)=>({key:n._parse(new at(r,e,r.path,[a,"key"])),value:s._parse(new at(r,t,r.path,[a,"value"]))})));if(r.common.async){const e=new Map;return Promise.resolve().then((async()=>{for(const r of a){const n=await r.key,s=await r.value;if("aborted"===n.status||"aborted"===s.status)return ze;"dirty"!==n.status&&"dirty"!==s.status||t.dirty(),e.set(n.value,s.value)}return{status:t.value,value:e}}))}{const e=new Map;for(const r of a){const n=r.key,s=r.value;if("aborted"===n.status||"aborted"===s.status)return ze;"dirty"!==n.status&&"dirty"!==s.status||t.dirty(),e.set(n.value,s.value)}return{status:t.value,value:e}}}}zt.create=(e,t,r)=>new zt({valueType:t,keyType:e,typeName:gr.ZodMap,...ot(r)});class Kt extends lt{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Fe.set)return Ve(r,{code:Pe.invalid_type,expected:Fe.set,received:r.parsedType}),ze;const n=this._def;null!==n.minSize&&r.data.size<n.minSize.value&&(Ve(r,{code:Pe.too_small,minimum:n.minSize.value,type:"set",inclusive:!0,exact:!1,message:n.minSize.message}),t.dirty()),null!==n.maxSize&&r.data.size>n.maxSize.value&&(Ve(r,{code:Pe.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),t.dirty());const s=this._def.valueType;function a(e){const r=new Set;for(const n of e){if("aborted"===n.status)return ze;"dirty"===n.status&&t.dirty(),r.add(n.value)}return{status:t.value,value:r}}const i=[...r.data.values()].map(((e,t)=>s._parse(new at(r,e,r.path,t))));return r.common.async?Promise.all(i).then((e=>a(e))):a(i)}min(e,t){return new Kt({...this._def,minSize:{value:e,message:rt.toString(t)}})}max(e,t){return new Kt({...this._def,maxSize:{value:e,message:rt.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}Kt.create=(e,t)=>new Kt({valueType:e,minSize:null,maxSize:null,typeName:gr.ZodSet,...ot(t)});class Gt extends lt{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Fe.function)return Ve(t,{code:Pe.invalid_type,expected:Fe.function,received:t.parsedType}),ze;function r(e,r){return He({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Me(),Ze].filter((e=>!!e)),issueData:{code:Pe.invalid_arguments,argumentsError:r}})}function n(e,r){return He({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Me(),Ze].filter((e=>!!e)),issueData:{code:Pe.invalid_return_type,returnTypeError:r}})}const s={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof tr){const e=this;return Ge((async function(...t){const i=new Be([]),o=await e._def.args.parseAsync(t,s).catch((e=>{throw i.addIssue(r(t,e)),i})),l=await Reflect.apply(a,this,o);return await e._def.returns._def.type.parseAsync(l,s).catch((e=>{throw i.addIssue(n(l,e)),i}))}))}{const e=this;return Ge((function(...t){const i=e._def.args.safeParse(t,s);if(!i.success)throw new Be([r(t,i.error)]);const o=Reflect.apply(a,this,i.data),l=e._def.returns.safeParse(o,s);if(!l.success)throw new Be([n(o,l.error)]);return l.data}))}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new Gt({...this._def,args:Vt.create(e).rest($t.create())})}returns(e){return new Gt({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,r){return new Gt({args:e||Vt.create([]).rest($t.create()),returns:t||$t.create(),typeName:gr.ZodFunction,...ot(r)})}}class Jt extends lt{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}Jt.create=(e,t)=>new Jt({getter:e,typeName:gr.ZodLazy,...ot(t)});class Yt extends lt{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return Ve(t,{received:t.data,code:Pe.invalid_literal,expected:this._def.value}),ze}return{status:"valid",value:e.data}}get value(){return this._def.value}}function Qt(e,t){return new Xt({values:e,typeName:gr.ZodEnum,...ot(t)})}Yt.create=(e,t)=>new Yt({value:e,typeName:gr.ZodLiteral,...ot(t)});class Xt extends lt{constructor(){super(...arguments),nt.set(this,void 0)}_parse(e){if("string"!=typeof e.data){const t=this._getOrReturnCtx(e),r=this._def.values;return Ve(t,{expected:De.joinValues(r),received:t.parsedType,code:Pe.invalid_type}),ze}if(et(this,nt,"f")||tt(this,nt,new Set(this._def.values),"f"),!et(this,nt,"f").has(e.data)){const t=this._getOrReturnCtx(e),r=this._def.values;return Ve(t,{received:t.data,code:Pe.invalid_enum_value,options:r}),ze}return Ge(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return Xt.create(e,{...this._def,...t})}exclude(e,t=this._def){return Xt.create(this.options.filter((t=>!e.includes(t))),{...this._def,...t})}}nt=new WeakMap,Xt.create=Qt;class er extends lt{constructor(){super(...arguments),st.set(this,void 0)}_parse(e){const t=De.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==Fe.string&&r.parsedType!==Fe.number){const e=De.objectValues(t);return Ve(r,{expected:De.joinValues(e),received:r.parsedType,code:Pe.invalid_type}),ze}if(et(this,st,"f")||tt(this,st,new Set(De.getValidEnumValues(this._def.values)),"f"),!et(this,st,"f").has(e.data)){const e=De.objectValues(t);return Ve(r,{received:r.data,code:Pe.invalid_enum_value,options:e}),ze}return Ge(e.data)}get enum(){return this._def.values}}st=new WeakMap,er.create=(e,t)=>new er({values:e,typeName:gr.ZodNativeEnum,...ot(t)});class tr extends lt{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Fe.promise&&!1===t.common.async)return Ve(t,{code:Pe.invalid_type,expected:Fe.promise,received:t.parsedType}),ze;const r=t.parsedType===Fe.promise?t.data:Promise.resolve(t.data);return Ge(r.then((e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap}))))}}tr.create=(e,t)=>new tr({type:e,typeName:gr.ZodPromise,...ot(t)});class rr extends lt{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===gr.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:r}=this._processInputParams(e),n=this._def.effect||null,s={addIssue:e=>{Ve(r,e),e.fatal?t.abort():t.dirty()},get path(){return r.path}};if(s.addIssue=s.addIssue.bind(s),"preprocess"===n.type){const e=n.transform(r.data,s);if(r.common.async)return Promise.resolve(e).then((async e=>{if("aborted"===t.value)return ze;const n=await this._def.schema._parseAsync({data:e,path:r.path,parent:r});return"aborted"===n.status?ze:"dirty"===n.status||"dirty"===t.value?Ke(n.value):n}));{if("aborted"===t.value)return ze;const n=this._def.schema._parseSync({data:e,path:r.path,parent:r});return"aborted"===n.status?ze:"dirty"===n.status||"dirty"===t.value?Ke(n.value):n}}if("refinement"===n.type){const e=e=>{const t=n.refinement(e,s);if(r.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1===r.common.async){const n=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===n.status?ze:("dirty"===n.status&&t.dirty(),e(n.value),{status:t.value,value:n.value})}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((r=>"aborted"===r.status?ze:("dirty"===r.status&&t.dirty(),e(r.value).then((()=>({status:t.value,value:r.value}))))))}if("transform"===n.type){if(!1===r.common.async){const e=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Qe(e))return e;const a=n.transform(e.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:a}}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((e=>Qe(e)?Promise.resolve(n.transform(e.value,s)).then((e=>({status:t.value,value:e}))):e))}De.assertNever(n)}}rr.create=(e,t,r)=>new rr({schema:e,typeName:gr.ZodEffects,effect:t,...ot(r)}),rr.createWithPreprocess=(e,t,r)=>new rr({schema:t,effect:{type:"preprocess",transform:e},typeName:gr.ZodEffects,...ot(r)});class nr extends lt{_parse(e){return this._getType(e)===Fe.undefined?Ge(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}nr.create=(e,t)=>new nr({innerType:e,typeName:gr.ZodOptional,...ot(t)});class sr extends lt{_parse(e){return this._getType(e)===Fe.null?Ge(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}sr.create=(e,t)=>new sr({innerType:e,typeName:gr.ZodNullable,...ot(t)});class ar extends lt{_parse(e){const{ctx:t}=this._processInputParams(e);let r=t.data;return t.parsedType===Fe.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}ar.create=(e,t)=>new ar({innerType:e,typeName:gr.ZodDefault,defaultValue:"function"==typeof t.default?t.default:()=>t.default,...ot(t)});class ir extends lt{_parse(e){const{ctx:t}=this._processInputParams(e),r={...t,common:{...t.common,issues:[]}},n=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Xe(n)?n.then((e=>({status:"valid",value:"valid"===e.status?e.value:this._def.catchValue({get error(){return new Be(r.common.issues)},input:r.data})}))):{status:"valid",value:"valid"===n.status?n.value:this._def.catchValue({get error(){return new Be(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}ir.create=(e,t)=>new ir({innerType:e,typeName:gr.ZodCatch,catchValue:"function"==typeof t.catch?t.catch:()=>t.catch,...ot(t)});class or extends lt{_parse(e){if(this._getType(e)!==Fe.nan){const t=this._getOrReturnCtx(e);return Ve(t,{code:Pe.invalid_type,expected:Fe.nan,received:t.parsedType}),ze}return{status:"valid",value:e.data}}}or.create=e=>new or({typeName:gr.ZodNaN,...ot(e)});const lr=Symbol("zod_brand");class ur extends lt{_parse(e){const{ctx:t}=this._processInputParams(e),r=t.data;return this._def.type._parse({data:r,path:t.path,parent:t})}unwrap(){return this._def.type}}class cr extends lt{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.common.async){return(async()=>{const e=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?ze:"dirty"===e.status?(t.dirty(),Ke(e.value)):this._def.out._parseAsync({data:e.value,path:r.path,parent:r})})()}{const e=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?ze:"dirty"===e.status?(t.dirty(),{status:"dirty",value:e.value}):this._def.out._parseSync({data:e.value,path:r.path,parent:r})}}static create(e,t){return new cr({in:e,out:t,typeName:gr.ZodPipeline})}}class dr extends lt{_parse(e){const t=this._def.innerType._parse(e),r=e=>(Qe(e)&&(e.value=Object.freeze(e.value)),e);return Xe(t)?t.then((e=>r(e))):r(t)}unwrap(){return this._def.innerType}}function pr(e,t={},r){return e?Nt.create().superRefine(((n,s)=>{var a,i;if(!e(n)){const e="function"==typeof t?t(n):"string"==typeof t?{message:t}:t,o=null===(i=null!==(a=e.fatal)&&void 0!==a?a:r)||void 0===i||i,l="string"==typeof e?{message:e}:e;s.addIssue({code:"custom",...l,fatal:o})}})):Nt.create()}dr.create=(e,t)=>new dr({innerType:e,typeName:gr.ZodReadonly,...ot(t)});const hr={object:Pt.lazycreate};var gr;!function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"}(gr||(gr={}));const mr=qt.create,fr=At.create,yr=or.create,br=Ot.create,vr=Et.create,wr=St.create,_r=Rt.create,kr=Dt.create,xr=Ct.create,qr=Nt.create,Tr=$t.create,Ar=jt.create,Or=It.create,Er=Ft.create,Sr=Pt.create,Rr=Pt.strictCreate,Dr=Bt.create,Cr=Ut.create,Nr=Ht.create,$r=Vt.create,jr=Wt.create,Ir=zt.create,Fr=Kt.create,Lr=Gt.create,Pr=Jt.create,Br=Yt.create,Zr=Xt.create,Ur=er.create,Mr=tr.create,Hr=rr.create,Vr=nr.create,Wr=sr.create,zr=rr.createWithPreprocess,Kr=cr.create,Gr={string:e=>qt.create({...e,coerce:!0}),number:e=>At.create({...e,coerce:!0}),boolean:e=>Et.create({...e,coerce:!0}),bigint:e=>Ot.create({...e,coerce:!0}),date:e=>St.create({...e,coerce:!0})},Jr=ze;var Yr=Object.freeze({__proto__:null,defaultErrorMap:Ze,setErrorMap:function(e){Ue=e},getErrorMap:Me,makeIssue:He,EMPTY_PATH:[],addIssueToContext:Ve,ParseStatus:We,INVALID:ze,DIRTY:Ke,OK:Ge,isAborted:Je,isDirty:Ye,isValid:Qe,isAsync:Xe,get util(){return De},get objectUtil(){return Ce},ZodParsedType:Fe,getParsedType:Le,ZodType:lt,datetimeRegex:xt,ZodString:qt,ZodNumber:At,ZodBigInt:Ot,ZodBoolean:Et,ZodDate:St,ZodSymbol:Rt,ZodUndefined:Dt,ZodNull:Ct,ZodAny:Nt,ZodUnknown:$t,ZodNever:jt,ZodVoid:It,ZodArray:Ft,ZodObject:Pt,ZodUnion:Bt,ZodDiscriminatedUnion:Ut,ZodIntersection:Ht,ZodTuple:Vt,ZodRecord:Wt,ZodMap:zt,ZodSet:Kt,ZodFunction:Gt,ZodLazy:Jt,ZodLiteral:Yt,ZodEnum:Xt,ZodNativeEnum:er,ZodPromise:tr,ZodEffects:rr,ZodTransformer:rr,ZodOptional:nr,ZodNullable:sr,ZodDefault:ar,ZodCatch:ir,ZodNaN:or,BRAND:lr,ZodBranded:ur,ZodPipeline:cr,ZodReadonly:dr,custom:pr,Schema:lt,ZodSchema:lt,late:hr,get ZodFirstPartyTypeKind(){return gr},coerce:Gr,any:qr,array:Er,bigint:br,boolean:vr,date:wr,discriminatedUnion:Cr,effect:Hr,enum:Zr,function:Lr,instanceof:(e,t={message:`Input not instance of ${e.name}`})=>pr((t=>t instanceof e),t),intersection:Nr,lazy:Pr,literal:Br,map:Ir,nan:yr,nativeEnum:Ur,never:Ar,null:xr,nullable:Wr,number:fr,object:Sr,oboolean:()=>vr().optional(),onumber:()=>fr().optional(),optional:Vr,ostring:()=>mr().optional(),pipeline:Kr,preprocess:zr,promise:Mr,record:jr,set:Fr,strictObject:Rr,string:mr,symbol:_r,transformer:Hr,tuple:$r,undefined:kr,union:Dr,unknown:Tr,void:Or,NEVER:Jr,ZodIssueCode:Pe,quotelessJson:e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),ZodError:Be}),Qr=["interface","display","layout","module","panel","theme"],Xr=["hook","endpoint"],en=["operation"],tn="directus:extension",rn=Yr.object({app:Yr.string(),api:Yr.string()}),nn=Yr.object({request:Yr.optional(Yr.object({urls:Yr.array(Yr.string()),methods:Yr.array(Yr.union([Yr.literal("GET"),Yr.literal("POST"),Yr.literal("PATCH"),Yr.literal("PUT"),Yr.literal("DELETE")]))})),log:Yr.optional(Yr.object({})),sleep:Yr.optional(Yr.object({}))}),sn=Yr.optional(Yr.object({enabled:Yr.boolean(),requestedScopes:nn})),an=Yr.union([Yr.object({type:Yr.enum(Xr),name:Yr.string(),source:Yr.string()}),Yr.object({type:Yr.enum(Qr),name:Yr.string(),source:Yr.string()}),Yr.object({type:Yr.enum(en),name:Yr.string(),source:rn})]),on=Yr.object({host:Yr.string(),hidden:Yr.boolean().optional()}),ln=Yr.object({type:Yr.enum(Qr),path:Yr.string(),source:Yr.string()}),un=Yr.object({type:Yr.enum(Xr),path:Yr.string(),source:Yr.string(),sandbox:sn}),cn=Yr.object({type:Yr.enum(en),path:rn,source:rn,sandbox:sn}),dn=Yr.object({type:Yr.literal("bundle"),partial:Yr.boolean().optional(),path:rn,entries:Yr.array(an)});Yr.array(an);var pn=on.and(Yr.union([ln,un,cn,dn]));function hn(e){return e}Yr.object({name:Yr.string(),version:Yr.string(),type:Yr.union([Yr.literal("module"),Yr.literal("commonjs")]).optional(),description:Yr.string().optional(),icon:Yr.string().optional(),dependencies:Yr.record(Yr.string()).optional(),devDependencies:Yr.record(Yr.string()).optional(),[tn]:pn});const gn={TASK_SUCCEEDED:"succeeded",TASK_PROCESSING:"processing",TASK_FAILED:"failed",TASK_ENQUEUED:"enqueued",TASK_CANCELED:"canceled"},mn="index_not_found";class fn extends Error{constructor(e){super(e),Object.setPrototypeOf(this,fn.prototype),this.name="MeiliSearchError",Error.captureStackTrace&&Error.captureStackTrace(this,fn)}}class yn extends fn{statusCode;errno;code;stack;constructor(e,t,r,n){super(e),Object.setPrototypeOf(this,yn.prototype),this.name="MeiliSearchCommunicationError",t instanceof Response&&(this.message=t.statusText,this.statusCode=t.status),t instanceof Error&&(this.errno=t.errno,this.code=t.code),n?(this.stack=n,this.stack=this.stack?.replace(/(TypeError|FetchError)/,this.name),this.stack=this.stack?.replace("Failed to fetch",`request to ${r} failed, reason: connect ECONNREFUSED`),this.stack=this.stack?.replace("Not Found",`Not Found: ${r}`)):Error.captureStackTrace&&Error.captureStackTrace(this,yn)}}const bn=class extends fn{httpStatus;code;link;type;stack;constructor(e,t){super(e.message),Object.setPrototypeOf(this,bn.prototype),this.name="MeiliSearchApiError",this.code=e.code,this.type=e.type,this.link=e.link,this.message=e.message,this.httpStatus=t,Error.captureStackTrace&&Error.captureStackTrace(this,bn)}};class vn extends fn{constructor(e){super(e),Object.setPrototypeOf(this,vn.prototype),this.name="MeiliSearchTimeOutError",Error.captureStackTrace&&Error.captureStackTrace(this,vn)}}function wn(e,t){return`${e}\nHint: It might not be working because maybe you're not up to date with the Meilisearch version that ${t} call requires.`}function _n(e){return Object.entries(e).reduce(((e,t)=>{const[r,n]=t;return void 0!==n&&(e[r]=n),e}),{})}async function kn(e){return await new Promise((t=>setTimeout(t,e)))}function xn(e){return Object.keys(e).reduce(((t,r)=>{const n=e[r];return void 0===n?t:Array.isArray(n)?{...t,[r]:n.join(",")}:n instanceof Date?{...t,[r]:n.toISOString()}:{...t,[r]:n}}),{})}function qn(e){const t="X-Meilisearch-Client",r="Meilisearch JavaScript (v0.41.0)",n="Authorization",s=function(e){if(Array.isArray(e))return e.reduce(((e,t)=>(e[t[0]]=t[1],e)),{});if("has"in e){const t={};return e.forEach(((e,r)=>t[r]=e)),t}return Object.assign({},e)}(e.requestConfig?.headers??{});if(e.apiKey&&!s[n]&&(s[n]=`Bearer ${e.apiKey}`),s["Content-Type"]||(s["Content-Type"]="application/json"),e.clientAgents&&Array.isArray(e.clientAgents)){const n=e.clientAgents.concat(r);s[t]=n.join(" ; ")}else{if(e.clientAgents&&!Array.isArray(e.clientAgents))throw new fn(`Meilisearch: The header "${t}" should be an array of string(s).\n`);s[t]=r}return s}class Tn{headers;url;requestConfig;httpClient;requestTimeout;constructor(e){this.headers=qn(e),this.requestConfig=e.requestConfig,this.httpClient=e.httpClient,this.requestTimeout=e.timeout;try{const t=function(e){try{return(t=e=function(e){return e.startsWith("https://")||e.startsWith("http://")?e:`http://${e}`}(e)).endsWith("/")||(t+="/"),e=t}catch(e){throw new fn("The provided host is not valid.")}var t}(e.host);this.url=new URL(t)}catch(e){throw new fn("The provided host is not valid.")}}async request({method:e,url:t,params:r,body:n,config:s={}}){"undefined"==typeof fetch&&require("cross-fetch/polyfill");const a=new URL(t,this.url);if(r){const e=new URLSearchParams;Object.keys(r).filter((e=>null!==r[e])).map((t=>e.set(t,r[t]))),a.search=e.toString()}s.headers?.["Content-Type"]||(n=JSON.stringify(n));const i={...this.headers,...s.headers};try{const t=this.fetchWithTimeout(a.toString(),{...s,...this.requestConfig,method:e,body:n,headers:i},this.requestTimeout);if(this.httpClient)return await t;const r=await t.then((e=>async function(e){if(!e.ok){let t;try{t=await e.json()}catch(t){throw new yn(e.statusText,e,e.url)}throw new bn(t,e.status)}return e}(e)));return await r.json().catch((()=>{}))}catch(e){!function(e,t,r){if("MeiliSearchApiError"!==e.name)throw new yn(e.message,e,r,t);throw e}(e,e.stack,a.toString())}}async fetchWithTimeout(e,t,r){return new Promise(((n,s)=>{const a=[(this.httpClient?this.httpClient:fetch)(e,t)];let i;if(r){const e=new Promise(((e,t)=>{i=setTimeout((()=>{t(new Error("Error: Request Timed Out"))}),r)}));a.push(e)}Promise.race(a).then(n).catch(s).finally((()=>{clearTimeout(i)}))}))}async get(e,t,r){return await this.request({method:"GET",url:e,params:t,config:r})}async post(e,t,r,n){return await this.request({method:"POST",url:e,body:t,params:r,config:n})}async put(e,t,r,n){return await this.request({method:"PUT",url:e,body:t,params:r,config:n})}async patch(e,t,r,n){return await this.request({method:"PATCH",url:e,body:t,params:r,config:n})}async delete(e,t,r,n){return await this.request({method:"DELETE",url:e,body:t,params:r,config:n})}}class An{taskUid;indexUid;status;type;enqueuedAt;constructor(e){this.taskUid=e.taskUid,this.indexUid=e.indexUid,this.status=e.status,this.type=e.type,this.enqueuedAt=new Date(e.enqueuedAt)}}class On{indexUid;status;type;uid;canceledBy;details;error;duration;startedAt;enqueuedAt;finishedAt;constructor(e){this.indexUid=e.indexUid,this.status=e.status,this.type=e.type,this.uid=e.uid,this.details=e.details,this.canceledBy=e.canceledBy,this.error=e.error,this.duration=e.duration,this.startedAt=new Date(e.startedAt),this.enqueuedAt=new Date(e.enqueuedAt),this.finishedAt=new Date(e.finishedAt)}}class En{httpRequest;constructor(e){this.httpRequest=new Tn(e)}async getTask(e){const t=`tasks/${e}`,r=await this.httpRequest.get(t);return new On(r)}async getTasks(e={}){const t=await this.httpRequest.get("tasks",xn(e));return{...t,results:t.results.map((e=>new On(e)))}}async waitForTask(e,{timeOutMs:t=5e3,intervalMs:r=50}={}){const n=Date.now();for(;Date.now()-n<t;){const t=await this.getTask(e);if(![gn.TASK_ENQUEUED,gn.TASK_PROCESSING].includes(t.status))return t;await kn(r)}throw new vn(`timeout of ${t}ms has exceeded on process ${e} when waiting a task to be resolved.`)}async waitForTasks(e,{timeOutMs:t=5e3,intervalMs:r=50}={}){const n=[];for(const s of e){const e=await this.waitForTask(s,{timeOutMs:t,intervalMs:r});n.push(e)}return n}async cancelTasks(e={}){const t=await this.httpRequest.post("tasks/cancel",{},xn(e));return new An(t)}async deleteTasks(e={}){const t=await this.httpRequest.delete("tasks",{},xn(e));return new An(t)}}class Sn{uid;primaryKey;createdAt;updatedAt;httpRequest;tasks;constructor(e,t,r){this.uid=t,this.primaryKey=r,this.httpRequest=new Tn(e),this.tasks=new En(e)}async search(e,t,r){const n=`indexes/${this.uid}/search`;return await this.httpRequest.post(n,_n({q:e,...t}),void 0,r)}async searchGet(e,t,r){const n=`indexes/${this.uid}/search`,s={q:e,...t,filter:(e=>{if("string"==typeof e)return e;if(Array.isArray(e))throw new fn("The filter query parameter should be in string format when using searchGet")})(t?.filter),sort:t?.sort?.join(","),facets:t?.facets?.join(","),attributesToRetrieve:t?.attributesToRetrieve?.join(","),attributesToCrop:t?.attributesToCrop?.join(","),attributesToHighlight:t?.attributesToHighlight?.join(","),vector:t?.vector?.join(","),attributesToSearchOn:t?.attributesToSearchOn?.join(",")};return await this.httpRequest.get(n,_n(s),r)}async searchForFacetValues(e,t){const r=`indexes/${this.uid}/facet-search`;return await this.httpRequest.post(r,_n(e),void 0,t)}async searchSimilarDocuments(e){const t=`indexes/${this.uid}/similar`;return await this.httpRequest.post(t,_n(e),void 0)}async getRawInfo(){const e=`indexes/${this.uid}`,t=await this.httpRequest.get(e);return this.primaryKey=t.primaryKey,this.updatedAt=new Date(t.updatedAt),this.createdAt=new Date(t.createdAt),t}async fetchInfo(){return await this.getRawInfo(),this}async fetchPrimaryKey(){return this.primaryKey=(await this.getRawInfo()).primaryKey,this.primaryKey}static async create(e,t={},r){const n=new Tn(r),s=await n.post("indexes",{...t,uid:e});return new An(s)}async update(e){const t=`indexes/${this.uid}`,r=await this.httpRequest.patch(t,e);return r.enqueuedAt=new Date(r.enqueuedAt),r}async delete(){const e=`indexes/${this.uid}`,t=await this.httpRequest.delete(e);return new An(t)}async getTasks(e={}){return await this.tasks.getTasks({...e,indexUids:[this.uid]})}async getTask(e){return await this.tasks.getTask(e)}async waitForTasks(e,{timeOutMs:t=5e3,intervalMs:r=50}={}){return await this.tasks.waitForTasks(e,{timeOutMs:t,intervalMs:r})}async waitForTask(e,{timeOutMs:t=5e3,intervalMs:r=50}={}){return await this.tasks.waitForTask(e,{timeOutMs:t,intervalMs:r})}async getStats(){const e=`indexes/${this.uid}/stats`;return await this.httpRequest.get(e)}async getDocuments(e={}){if(void 0===(e=_n(e)).filter){const t=`indexes/${this.uid}/documents`,r=Array.isArray(e?.fields)?{fields:e?.fields?.join(",")}:{};return await this.httpRequest.get(t,{...e,...r})}try{const t=`indexes/${this.uid}/documents/fetch`;return await this.httpRequest.post(t,e)}catch(e){throw(e instanceof yn||e instanceof bn)&&(e.message=wn(e.message,"getDocuments")),e}}async getDocument(e,t){const r=`indexes/${this.uid}/documents/${e}`,n=(()=>{if(Array.isArray(t?.fields))return t?.fields?.join(",")})();return await this.httpRequest.get(r,_n({...t,fields:n}))}async addDocuments(e,t){const r=`indexes/${this.uid}/documents`,n=await this.httpRequest.post(r,e,t);return new An(n)}async addDocumentsFromString(e,t,r){const n=`indexes/${this.uid}/documents`,s=await this.httpRequest.post(n,e,r,{headers:{"Content-Type":t}});return new An(s)}async addDocumentsInBatches(e,t=1e3,r){const n=[];for(let s=0;s<e.length;s+=t)n.push(await this.addDocuments(e.slice(s,s+t),r));return n}async updateDocuments(e,t){const r=`indexes/${this.uid}/documents`,n=await this.httpRequest.put(r,e,t);return new An(n)}async updateDocumentsInBatches(e,t=1e3,r){const n=[];for(let s=0;s<e.length;s+=t)n.push(await this.updateDocuments(e.slice(s,s+t),r));return n}async updateDocumentsFromString(e,t,r){const n=`indexes/${this.uid}/documents`,s=await this.httpRequest.put(n,e,r,{headers:{"Content-Type":t}});return new An(s)}async deleteDocument(e){const t=`indexes/${this.uid}/documents/${e}`,r=await this.httpRequest.delete(t);return r.enqueuedAt=new Date(r.enqueuedAt),r}async deleteDocuments(e){const t=!Array.isArray(e)&&"object"==typeof e,r=t?"documents/delete":"documents/delete-batch",n=`indexes/${this.uid}/${r}`;try{const t=await this.httpRequest.post(n,e);return new An(t)}catch(e){throw(e instanceof yn&&t||e instanceof bn)&&(e.message=wn(e.message,"deleteDocuments")),e}}async deleteAllDocuments(){const e=`indexes/${this.uid}/documents`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getSettings(){const e=`indexes/${this.uid}/settings`;return await this.httpRequest.get(e)}async updateSettings(e){const t=`indexes/${this.uid}/settings`,r=await this.httpRequest.patch(t,e);return r.enqueued=new Date(r.enqueuedAt),r}async resetSettings(){const e=`indexes/${this.uid}/settings`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getPagination(){const e=`indexes/${this.uid}/settings/pagination`;return await this.httpRequest.get(e)}async updatePagination(e){const t=`indexes/${this.uid}/settings/pagination`,r=await this.httpRequest.patch(t,e);return new An(r)}async resetPagination(){const e=`indexes/${this.uid}/settings/pagination`,t=await this.httpRequest.delete(e);return new An(t)}async getSynonyms(){const e=`indexes/${this.uid}/settings/synonyms`;return await this.httpRequest.get(e)}async updateSynonyms(e){const t=`indexes/${this.uid}/settings/synonyms`,r=await this.httpRequest.put(t,e);return new An(r)}async resetSynonyms(){const e=`indexes/${this.uid}/settings/synonyms`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getStopWords(){const e=`indexes/${this.uid}/settings/stop-words`;return await this.httpRequest.get(e)}async updateStopWords(e){const t=`indexes/${this.uid}/settings/stop-words`,r=await this.httpRequest.put(t,e);return new An(r)}async resetStopWords(){const e=`indexes/${this.uid}/settings/stop-words`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getRankingRules(){const e=`indexes/${this.uid}/settings/ranking-rules`;return await this.httpRequest.get(e)}async updateRankingRules(e){const t=`indexes/${this.uid}/settings/ranking-rules`,r=await this.httpRequest.put(t,e);return new An(r)}async resetRankingRules(){const e=`indexes/${this.uid}/settings/ranking-rules`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getDistinctAttribute(){const e=`indexes/${this.uid}/settings/distinct-attribute`;return await this.httpRequest.get(e)}async updateDistinctAttribute(e){const t=`indexes/${this.uid}/settings/distinct-attribute`,r=await this.httpRequest.put(t,e);return new An(r)}async resetDistinctAttribute(){const e=`indexes/${this.uid}/settings/distinct-attribute`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getFilterableAttributes(){const e=`indexes/${this.uid}/settings/filterable-attributes`;return await this.httpRequest.get(e)}async updateFilterableAttributes(e){const t=`indexes/${this.uid}/settings/filterable-attributes`,r=await this.httpRequest.put(t,e);return new An(r)}async resetFilterableAttributes(){const e=`indexes/${this.uid}/settings/filterable-attributes`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getSortableAttributes(){const e=`indexes/${this.uid}/settings/sortable-attributes`;return await this.httpRequest.get(e)}async updateSortableAttributes(e){const t=`indexes/${this.uid}/settings/sortable-attributes`,r=await this.httpRequest.put(t,e);return new An(r)}async resetSortableAttributes(){const e=`indexes/${this.uid}/settings/sortable-attributes`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getSearchableAttributes(){const e=`indexes/${this.uid}/settings/searchable-attributes`;return await this.httpRequest.get(e)}async updateSearchableAttributes(e){const t=`indexes/${this.uid}/settings/searchable-attributes`,r=await this.httpRequest.put(t,e);return new An(r)}async resetSearchableAttributes(){const e=`indexes/${this.uid}/settings/searchable-attributes`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getDisplayedAttributes(){const e=`indexes/${this.uid}/settings/displayed-attributes`;return await this.httpRequest.get(e)}async updateDisplayedAttributes(e){const t=`indexes/${this.uid}/settings/displayed-attributes`,r=await this.httpRequest.put(t,e);return new An(r)}async resetDisplayedAttributes(){const e=`indexes/${this.uid}/settings/displayed-attributes`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getTypoTolerance(){const e=`indexes/${this.uid}/settings/typo-tolerance`;return await this.httpRequest.get(e)}async updateTypoTolerance(e){const t=`indexes/${this.uid}/settings/typo-tolerance`,r=await this.httpRequest.patch(t,e);return r.enqueuedAt=new Date(r.enqueuedAt),r}async resetTypoTolerance(){const e=`indexes/${this.uid}/settings/typo-tolerance`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getFaceting(){const e=`indexes/${this.uid}/settings/faceting`;return await this.httpRequest.get(e)}async updateFaceting(e){const t=`indexes/${this.uid}/settings/faceting`,r=await this.httpRequest.patch(t,e);return new An(r)}async resetFaceting(){const e=`indexes/${this.uid}/settings/faceting`,t=await this.httpRequest.delete(e);return new An(t)}async getSeparatorTokens(){const e=`indexes/${this.uid}/settings/separator-tokens`;return await this.httpRequest.get(e)}async updateSeparatorTokens(e){const t=`indexes/${this.uid}/settings/separator-tokens`,r=await this.httpRequest.put(t,e);return new An(r)}async resetSeparatorTokens(){const e=`indexes/${this.uid}/settings/separator-tokens`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getNonSeparatorTokens(){const e=`indexes/${this.uid}/settings/non-separator-tokens`;return await this.httpRequest.get(e)}async updateNonSeparatorTokens(e){const t=`indexes/${this.uid}/settings/non-separator-tokens`,r=await this.httpRequest.put(t,e);return new An(r)}async resetNonSeparatorTokens(){const e=`indexes/${this.uid}/settings/non-separator-tokens`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getDictionary(){const e=`indexes/${this.uid}/settings/dictionary`;return await this.httpRequest.get(e)}async updateDictionary(e){const t=`indexes/${this.uid}/settings/dictionary`,r=await this.httpRequest.put(t,e);return new An(r)}async resetDictionary(){const e=`indexes/${this.uid}/settings/dictionary`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getProximityPrecision(){const e=`indexes/${this.uid}/settings/proximity-precision`;return await this.httpRequest.get(e)}async updateProximityPrecision(e){const t=`indexes/${this.uid}/settings/proximity-precision`,r=await this.httpRequest.put(t,e);return new An(r)}async resetProximityPrecision(){const e=`indexes/${this.uid}/settings/proximity-precision`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getEmbedders(){const e=`indexes/${this.uid}/settings/embedders`;return await this.httpRequest.get(e)}async updateEmbedders(e){const t=`indexes/${this.uid}/settings/embedders`,r=await this.httpRequest.patch(t,e);return new An(r)}async resetEmbedders(){const e=`indexes/${this.uid}/settings/embedders`,t=await this.httpRequest.delete(e);return t.enqueuedAt=new Date(t.enqueuedAt),t}async getSearchCutoffMs(){const e=`indexes/${this.uid}/settings/search-cutoff-ms`;return await this.httpRequest.get(e)}async updateSearchCutoffMs(e){const t=`indexes/${this.uid}/settings/search-cutoff-ms`,r=await this.httpRequest.put(t,e);return new An(r)}async resetSearchCutoffMs(){const e=`indexes/${this.uid}/settings/search-cutoff-ms`,t=await this.httpRequest.delete(e);return new An(t)}}class Rn{config;httpRequest;tasks;constructor(e){this.config=e,this.httpRequest=new Tn(e),this.tasks=new En(e)}index(e){return new Sn(this.config,e)}async getIndex(e){return new Sn(this.config,e).fetchInfo()}async getRawIndex(e){return new Sn(this.config,e).getRawInfo()}async getIndexes(e={}){const t=await this.getRawIndexes(e),r=t.results.map((e=>new Sn(this.config,e.uid,e.primaryKey)));return{...t,results:r}}async getRawIndexes(e={}){return await this.httpRequest.get("indexes",e)}async createIndex(e,t={}){return await Sn.create(e,t,this.config)}async updateIndex(e,t={}){return await new Sn(this.config,e).update(t)}async deleteIndex(e){return await new Sn(this.config,e).delete()}async deleteIndexIfExists(e){try{return await this.deleteIndex(e),!0}catch(e){if(e.code===mn)return!1;throw e}}async swapIndexes(e){return await this.httpRequest.post("/swap-indexes",e)}async multiSearch(e,t){return await this.httpRequest.post("multi-search",e,void 0,t)}async getTasks(e={}){return await this.tasks.getTasks(e)}async getTask(e){return await this.tasks.getTask(e)}async waitForTasks(e,{timeOutMs:t=5e3,intervalMs:r=50}={}){return await this.tasks.waitForTasks(e,{timeOutMs:t,intervalMs:r})}async waitForTask(e,{timeOutMs:t=5e3,intervalMs:r=50}={}){return await this.tasks.waitForTask(e,{timeOutMs:t,intervalMs:r})}async cancelTasks(e){return await this.tasks.cancelTasks(e)}async deleteTasks(e={}){return await this.tasks.deleteTasks(e)}async getKeys(e={}){const t=await this.httpRequest.get("keys",e);return t.results=t.results.map((e=>({...e,createdAt:new Date(e.createdAt),updatedAt:new Date(e.updatedAt)}))),t}async getKey(e){const t=`keys/${e}`;return await this.httpRequest.get(t)}async createKey(e){return await this.httpRequest.post("keys",e)}async updateKey(e,t){const r=`keys/${e}`;return await this.httpRequest.patch(r,t)}async deleteKey(e){const t=`keys/${e}`;return await this.httpRequest.delete(t)}async health(){return await this.httpRequest.get("health")}async isHealthy(){try{const e="health";return await this.httpRequest.get(e),!0}catch(e){return!1}}async getStats(){return await this.httpRequest.get("stats")}async getVersion(){return await this.httpRequest.get("version")}async createDump(){const e=await this.httpRequest.post("dumps");return new An(e)}async createSnapshot(){const e=await this.httpRequest.post("snapshots");return new An(e)}generateTenantToken(e,t,r){const n=new Error;return n.message=`Meilisearch: failed to generate a tenant token. Generation of a token only works in a node environment \n ${n.stack}.`,Promise.reject(n)}}function Dn(e){return Buffer.from(JSON.stringify(e)).toString("base64")}class Cn{config;constructor(e){this.config=e}async generateTenantToken(e,t,r){const n=r?.apiKey||this.config.apiKey||"",s=e||"",a=r?.expiresAt;!function(e){const{searchRules:t,uid:r,apiKey:n,expiresAt:s}=e;if(s){if(!(s instanceof Date))throw new fn("Meilisearch: The expiredAt field must be an instance of Date.");if(s.getTime()<Date.now())throw new fn("Meilisearch: The expiresAt field must be a date in the future.")}if(t&&"object"!=typeof t&&!Array.isArray(t))throw new fn("Meilisearch: The search rules added in the token generation must be of type array or object.");if(!n||"string"!=typeof n)throw new fn("Meilisearch: The API key used for the token generation must exist and be of type string.");if(!r||"string"!=typeof r)throw new fn("Meilisearch: The uid of the api key used for the token generation must exist, be of type string and comply to the uuid4 format.");if(!/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/gi.test(r))throw new fn("Meilisearch: The uid of your key is not a valid uuid4. To find out the uid of your key use getKey().")}({apiKey:n,uid:s,expiresAt:a,searchRules:t});const i=Dn({alg:"HS256",typ:"JWT"}).replace(/=/g,""),o=function(e){const{searchRules:t,uid:r,expiresAt:n}=e;return Dn({searchRules:t,apiKeyUid:r,exp:n?Math.floor(n.getTime()/1e3):void 0}).replace(/=/g,"")}({searchRules:t,uid:s,expiresAt:a}),l=await async function(e,t,r){const{createHmac:n}=await import("crypto");return n("sha256",e).update(`${t}.${r}`).digest("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}(n,i,o);return`${i}.${o}.${l}`}}class Nn extends Rn{tokens;constructor(e){super(e),this.tokens=new Cn(e)}async generateTenantToken(e,t,r){return"undefined"==typeof window?await this.tokens.generateTenantToken(e,t,r):await super.generateTenantToken(e,t,r)}}const $n={collection:"meilisearch_settings",meta:{collection:"meilisearch_settings",icon:"search",note:null,display_template:null,singleton:!0,translations:null,archive_field:null,archive_app_filter:!0,archive_value:null,unarchive_value:null,sort_field:null,accountability:"all",color:null,item_duplication_fields:null,sort:null,group:null,collapse:"open",preview_url:null,versioning:!1},schema:{schema:"public",name:"meilisearch_settings",comment:null},fields:[{collection:"meilisearch_settings",field:"id",type:"integer",schema:{name:"id",table:"meilisearch_settings",schema:"public",data_type:"integer",is_nullable:!1,generation_expression:null,default_value:"nextval('meilisearch_settings_id_seq'::regclass)",is_generated:!1,max_length:null,comment:null,numeric_precision:32,numeric_scale:0,is_unique:!0,is_primary_key:!0,has_auto_increment:!0,foreign_key_schema:null,foreign_key_table:null,foreign_key_column:null},meta:{collection:"meilisearch_settings",field:"id",special:null,interface:"input",options:null,display:null,display_options:null,readonly:!0,hidden:!0,sort:1,width:"full",translations:null,note:null,conditions:null,required:!1,group:null,validation:null,validation_message:null}},{collection:"meilisearch_settings",field:"user_created",type:"uuid",schema:{name:"user_created",table:"meilisearch_settings",schema:"public",data_type:"uuid",is_nullable:!0,generation_expression:null,default_value:null,is_generated:!1,max_length:null,comment:null,numeric_precision:null,numeric_scale:null,is_unique:!1,is_primary_key:!1,has_auto_increment:!1,foreign_key_schema:"public",foreign_key_table:"directus_users",foreign_key_column:"id"},meta:{collection:"meilisearch_settings",field:"user_created",special:["user-created"],interface:"select-dropdown-m2o",options:{template:"{{avatar.$thumbnail}} {{first_name}} {{last_name}}"},display:"user",display_options:null,readonly:!0,hidden:!0,sort:2,width:"half",translations:null,note:null,conditions:null,required:!1,group:null,validation:null,validation_message:null}},{collection:"meilisearch_settings",field:"date_created",type:"timestamp",schema:{name:"date_created",table:"meilisearch_settings",schema:"public",data_type:"timestamp with time zone",is_nullable:!0,generation_expression:null,default_value:null,is_generated:!1,max_length:null,comment:null,numeric_precision:null,numeric_scale:null,is_unique:!1,is_primary_key:!1,has_auto_increment:!1,foreign_key_schema:null,foreign_key_table:null,foreign_key_column:null},meta:{collection:"meilisearch_settings",field:"date_created",special:["date-created"],interface:"datetime",options:null,display:"datetime",display_options:{relative:!0},readonly:!0,hidden:!0,sort:3,width:"half",translations:null,note:null,conditions:null,required:!1,group:null,validation:null,validation_message:null}},{collection:"meilisearch_settings",field:"user_updated",type:"uuid",schema:{name:"user_updated",table:"meilisearch_settings",schema:"public",data_type:"uuid",is_nullable:!0,generation_expression:null,default_value:null,is_generated:!1,max_length:null,comment:null,numeric_precision:null,numeric_scale:null,is_unique:!1,is_primary_key:!1,has_auto_increment:!1,foreign_key_schema:"public",foreign_key_table:"directus_users",foreign_key_column:"id"},meta:{collection:"meilisearch_settings",field:"user_updated",special:["user-updated"],interface:"select-dropdown-m2o",options:{template:"{{avatar.$thumbnail}} {{first_name}} {{last_name}}"},display:"user",display_options:null,readonly:!0,hidden:!0,sort:4,width:"half",translations:null,note:null,conditions:null,required:!1,group:null,validation:null,validation_message:null}},{collection:"meilisearch_settings",field:"date_updated",type:"timestamp",schema:{name:"date_updated",table:"meilisearch_settings",schema:"public",data_type:"timestamp with time zone",is_nullable:!0,generation_expression:null,default_value:null,is_generated:!1,max_length:null,comment:null,numeric_precision:null,numeric_scale:null,is_unique:!1,is_primary_key:!1,has_auto_increment:!1,foreign_key_schema:null,foreign_key_table:null,foreign_key_column:null},meta:{collection:"meilisearch_settings",field:"date_updated",special:["date-updated"],interface:"datetime",options:null,display:"datetime",display_options:{relative:!0},readonly:!0,hidden:!0,sort:5,width:"half",translations:null,note:null,conditions:null,required:!1,group:null,validation:null,validation_message:null}},{collection:"meilisearch_settings",field:"host",type:"string",schema:{name:"host",table:"meilisearch_settings",schema:"public",data_type:"character varying",is_nullable:!0,generation_expression:null,default_value:null,is_generated:!1,max_length:255,comment:null,numeric_precision:null,numeric_scale:null,is_unique:!1,is_primary_key:!1,has_auto_increment:!1,foreign_key_schema:null,foreign_key_table:null,foreign_key_column:null},meta:{collection:"meilisearch_settings",field:"host",special:null,interface:"input",options:{trim:!0,placeholder:"https://meilisearch-endpoint.net"},display:null,display_options:null,readonly:!1,hidden:!1,sort:7,width:"half",translations:null,note:null,conditions:null,required:!0,group:null,validation:null,validation_message:null}},{collection:"meilisearch_settings",field:"api_key",type:"string",schema:{name:"api_key",table:"meilisearch_settings",schema:"public",data_type:"character varying",is_nullable:!0,generation_expression:null,default_value:null,is_generated:!1,max_length:255,comment:null,numeric_precision:null,numeric_scale:null,is_unique:!1,is_primary_key:!1,has_auto_increment:!1,foreign_key_schema:null,foreign_key_table:null,foreign_key_column:null},meta:{collection:"meilisearch_settings",field:"api_key",special:null,interface:"input",options:{trim:!0,placeholder:"hZGaN8cL4nW2x7L_qz9HcPg1PJCcjuMa4431QELxN1Q"},display:null,display_options:null,readonly:!1,hidden:!1,sort:8,width:"half",translations:null,note:null,conditions:null,required:!0,group:null,validation:null,validation_message:null}},{collection:"meilisearch_settings",field:"collections_configuration",type:"json",schema:{name:"collections_configuration",table:"meilisearch_settings",schema:"public",data_type:"json",is_nullable:!0,generation_expression:null,default_value:[],is_generated:!1,max_length:null,comment:null,numeric_precision:null,numeric_scale:null,is_unique:!1,is_primary_key:!1,has_auto_increment:!1,foreign_key_schema:null,foreign_key_table:null,foreign_key_column:null},meta:{collection:"meilisearch_settings",field:"collections_configuration",special:["cast-json"],interface:"input-code",options:null,display:null,display_options:null,readonly:!1,hidden:!1,sort:9,width:"full",translations:null,note:null,conditions:null,required:!1,group:null,validation:null,validation_message:null}},{collection:"meilisearch_settings",field:"notice-np8y8a",type:"alias",schema:null,meta:{collection:"meilisearch_settings",field:"notice-np8y8a",special:["alias","no-data"],interface:"presentation-notice",options:{color:"info",text:"Due to limitations with hooks, remember to restart Directus after updating the settings."},display:null,display_options:null,readonly:!1,hidden:!1,sort:6,width:"full",translations:null,note:null,conditions:null,required:!1,group:null,validation:null,validation_message:null}}]};var jn=function(e){if((e=e||{}).circles)return function(e){const t=[],r=[],n=new Map;if(n.set(Date,(e=>new Date(e))),n.set(Map,((e,t)=>new Map(a(Array.from(e),t)))),n.set(Set,((e,t)=>new Set(a(Array.from(e),t)))),e.constructorHandlers)for(const t of e.constructorHandlers)n.set(t[0],t[1]);let s=null;return e.proto?o:i;function a(e,a){const i=Object.keys(e),o=new Array(i.length);for(let l=0;l<i.length;l++){const u=i[l],c=e[u];if("object"!=typeof c||null===c)o[u]=c;else if(c.constructor!==Object&&(s=n.get(c.constructor)))o[u]=s(c,a);else if(ArrayBuffer.isView(c))o[u]=In(c);else{const e=t.indexOf(c);o[u]=-1!==e?r[e]:a(c)}}return o}function i(e){if("object"!=typeof e||null===e)return e;if(Array.isArray(e))return a(e,i);if(e.constructor!==Object&&(s=n.get(e.constructor)))return s(e,i);const o={};t.push(e),r.push(o);for(const a in e){if(!1===Object.hasOwnProperty.call(e,a))continue;const l=e[a];if("object"!=typeof l||null===l)o[a]=l;else if(l.constructor!==Object&&(s=n.get(l.constructor)))o[a]=s(l,i);else if(ArrayBuffer.isView(l))o[a]=In(l);else{const e=t.indexOf(l);o[a]=-1!==e?r[e]:i(l)}}return t.pop(),r.pop(),o}function o(e){if("object"!=typeof e||null===e)return e;if(Array.isArray(e))return a(e,o);if(e.constructor!==Object&&(s=n.get(e.constructor)))return s(e,o);const i={};t.push(e),r.push(i);for(const a in e){const l=e[a];if("object"!=typeof l||null===l)i[a]=l;else if(l.constructor!==Object&&(s=n.get(l.constructor)))i[a]=s(l,o);else if(ArrayBuffer.isView(l))i[a]=In(l);else{const e=t.indexOf(l);i[a]=-1!==e?r[e]:o(l)}}return t.pop(),r.pop(),i}}(e);const t=new Map;if(t.set(Date,(e=>new Date(e))),t.set(Map,((e,t)=>new Map(n(Array.from(e),t)))),t.set(Set,((e,t)=>new Set(n(Array.from(e),t)))),e.constructorHandlers)for(const r of e.constructorHandlers)t.set(r[0],r[1]);let r=null;return e.proto?function e(s){if("object"!=typeof s||null===s)return s;if(Array.isArray(s))return n(s,e);if(s.constructor!==Object&&(r=t.get(s.constructor)))return r(s,e);const a={};for(const n in s){const i=s[n];"object"!=typeof i||null===i?a[n]=i:i.constructor!==Object&&(r=t.get(i.constructor))?a[n]=r(i,e):ArrayBuffer.isView(i)?a[n]=In(i):a[n]=e(i)}return a}:function e(s){if("object"!=typeof s||null===s)return s;if(Array.isArray(s))return n(s,e);if(s.constructor!==Object&&(r=t.get(s.constructor)))return r(s,e);const a={};for(const n in s){if(!1===Object.hasOwnProperty.call(s,n))continue;const i=s[n];"object"!=typeof i||null===i?a[n]=i:i.constructor!==Object&&(r=t.get(i.constructor))?a[n]=r(i,e):ArrayBuffer.isView(i)?a[n]=In(i):a[n]=e(i)}return a};function n(e,n){const s=Object.keys(e),a=new Array(s.length);for(let i=0;i<s.length;i++){const o=s[i],l=e[o];"object"!=typeof l||null===l?a[o]=l:l.constructor!==Object&&(r=t.get(l.constructor))?a[o]=r(l,n):ArrayBuffer.isView(l)?a[o]=In(l):a[o]=n(l)}return a}};function In(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}var Fn=Ie(jn);
/**
 * @name codsen-utils
 * @fileoverview Various utility functions
 * @version 1.6.4
 * @author Roy Revelt, Codsen Ltd
 * @license MIT
 * {@link https://codsen.com/os/codsen-utils/}
 */function Ln(e){if(null==e||"object"!=typeof e)return!1;let t=Object.getPrototypeOf(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&(!(Symbol.iterator in e)&&!(Symbol.toStringTag in e))}function Pn(e){return"string"==typeof e}function Bn(e){return Number.isSafeInteger(e)&&e>=0}function Zn(e){return null!=e}function Un(e,t){return Ln(e)&&Pn(t)&&t in e}Fn();var Mn={},Hn={};Object.defineProperty(Hn,"__esModule",{value:!0}),Hn.bodyRegExps={xml:/&(?:#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);?/g,html4:/&notin;|&(?:nbsp|iexcl|cent|pound|curren|yen|brvbar|sect|uml|copy|ordf|laquo|not|shy|reg|macr|deg|plusmn|sup2|sup3|acute|micro|para|middot|cedil|sup1|ordm|raquo|frac14|frac12|frac34|iquest|Agrave|Aacute|Acirc|Atilde|Auml|Aring|AElig|Ccedil|Egrave|Eacute|Ecirc|Euml|Igrave|Iacute|Icirc|Iuml|ETH|Ntilde|Ograve|Oacute|Ocirc|Otilde|Ouml|times|Oslash|Ugrave|Uacute|Ucirc|Uuml|Yacute|THORN|szlig|agrave|aacute|acirc|atilde|auml|aring|aelig|ccedil|egrave|eacute|ecirc|euml|igrave|iacute|icirc|iuml|eth|ntilde|ograve|oacute|ocirc|otilde|ouml|divide|oslash|ugrave|uacute|ucirc|uuml|yacute|thorn|yuml|quot|amp|lt|gt|#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);?/g,html5:/&centerdot;|&copysr;|&divideontimes;|&gtcc;|&gtcir;|&gtdot;|&gtlPar;|&gtquest;|&gtrapprox;|&gtrarr;|&gtrdot;|&gtreqless;|&gtreqqless;|&gtrless;|&gtrsim;|&ltcc;|&ltcir;|&ltdot;|&lthree;|&ltimes;|&ltlarr;|&ltquest;|&ltrPar;|&ltri;|&ltrie;|&ltrif;|&notin;|&notinE;|&notindot;|&notinva;|&notinvb;|&notinvc;|&notni;|&notniva;|&notnivb;|&notnivc;|&parallel;|&timesb;|&timesbar;|&timesd;|&(?:AElig|AMP|Aacute|Acirc|Agrave|Aring|Atilde|Auml|COPY|Ccedil|ETH|Eacute|Ecirc|Egrave|Euml|GT|Iacute|Icirc|Igrave|Iuml|LT|Ntilde|Oacute|Ocirc|Ograve|Oslash|Otilde|Ouml|QUOT|REG|THORN|Uacute|Ucirc|Ugrave|Uuml|Yacute|aacute|acirc|acute|aelig|agrave|amp|aring|atilde|auml|brvbar|ccedil|cedil|cent|copy|curren|deg|divide|eacute|ecirc|egrave|eth|euml|frac12|frac14|frac34|gt|iacute|icirc|iexcl|igrave|iquest|iuml|laquo|lt|macr|micro|middot|nbsp|not|ntilde|oacute|ocirc|ograve|ordf|ordm|oslash|otilde|ouml|para|plusmn|pound|quot|raquo|reg|sect|shy|sup1|sup2|sup3|szlig|thorn|times|uacute|ucirc|ugrave|uml|uuml|yacute|yen|yuml|#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);?/g},Hn.namedReferences={xml:{entities:{"&lt;":"<","&gt;":">","&quot;":'"',"&apos;":"'","&amp;":"&"},characters:{"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&apos;","&":"&amp;"}},html4:{entities:{"&apos;":"'","&nbsp":" ","&nbsp;":" ","&iexcl":"¡","&iexcl;":"¡","&cent":"¢","&cent;":"¢","&pound":"£","&pound;":"£","&curren":"¤","&curren;":"¤","&yen":"¥","&yen;":"¥","&brvbar":"¦","&brvbar;":"¦","&sect":"§","&sect;":"§","&uml":"¨","&uml;":"¨","&copy":"©","&copy;":"©","&ordf":"ª","&ordf;":"ª","&laquo":"«","&laquo;":"«","&not":"¬","&not;":"¬","&shy":"­","&shy;":"­","&reg":"®","&reg;":"®","&macr":"¯","&macr;":"¯","&deg":"°","&deg;":"°","&plusmn":"±","&plusmn;":"±","&sup2":"²","&sup2;":"²","&sup3":"³","&sup3;":"³","&acute":"´","&acute;":"´","&micro":"µ","&micro;":"µ","&para":"¶","&para;":"¶","&middot":"·","&middot;":"·","&cedil":"¸","&cedil;":"¸","&sup1":"¹","&sup1;":"¹","&ordm":"º","&ordm;":"º","&raquo":"»","&raquo;":"»","&frac14":"¼","&frac14;":"¼","&frac12":"½","&frac12;":"½","&frac34":"¾","&frac34;":"¾","&iquest":"¿","&iquest;":"¿","&Agrave":"À","&Agrave;":"À","&Aacute":"Á","&Aacute;":"Á","&Acirc":"Â","&Acirc;":"Â","&Atilde":"Ã","&Atilde;":"Ã","&Auml":"Ä","&Auml;":"Ä","&Aring":"Å","&Aring;":"Å","&AElig":"Æ","&AElig;":"Æ","&Ccedil":"Ç","&Ccedil;":"Ç","&Egrave":"È","&Egrave;":"È","&Eacute":"É","&Eacute;":"É","&Ecirc":"Ê","&Ecirc;":"Ê","&Euml":"Ë","&Euml;":"Ë","&Igrave":"Ì","&Igrave;":"Ì","&Iacute":"Í","&Iacute;":"Í","&Icirc":"Î","&Icirc;":"Î","&Iuml":"Ï","&Iuml;":"Ï","&ETH":"Ð","&ETH;":"Ð","&Ntilde":"Ñ","&Ntilde;":"Ñ","&Ograve":"Ò","&Ograve;":"Ò","&Oacute":"Ó","&Oacute;":"Ó","&Ocirc":"Ô","&Ocirc;":"Ô","&Otilde":"Õ","&Otilde;":"Õ","&Ouml":"Ö","&Ouml;":"Ö","&times":"×","&times;":"×","&Oslash":"Ø","&Oslash;":"Ø","&Ugrave":"Ù","&Ugrave;":"Ù","&Uacute":"Ú","&Uacute;":"Ú","&Ucirc":"Û","&Ucirc;":"Û","&Uuml":"Ü","&Uuml;":"Ü","&Yacute":"Ý","&Yacute;":"Ý","&THORN":"Þ","&THORN;":"Þ","&szlig":"ß","&szlig;":"ß","&agrave":"à","&agrave;":"à","&aacute":"á","&aacute;":"á","&acirc":"â","&acirc;":"â","&atilde":"ã","&atilde;":"ã","&auml":"ä","&auml;":"ä","&aring":"å","&aring;":"å","&aelig":"æ","&aelig;":"æ","&ccedil":"ç","&ccedil;":"ç","&egrave":"è","&egrave;":"è","&eacute":"é","&eacute;":"é","&ecirc":"ê","&ecirc;":"ê","&euml":"ë","&euml;":"ë","&igrave":"ì","&igrave;":"ì","&iacute":"í","&iacute;":"í","&icirc":"î","&icirc;":"î","&iuml":"ï","&iuml;":"ï","&eth":"ð","&eth;":"ð","&ntilde":"ñ","&ntilde;":"ñ","&ograve":"ò","&ograve;":"ò","&oacute":"ó","&oacute;":"ó","&ocirc":"ô","&ocirc;":"ô","&otilde":"õ","&otilde;":"õ","&ouml":"ö","&ouml;":"ö","&divide":"÷","&divide;":"÷","&oslash":"ø","&oslash;":"ø","&ugrave":"ù","&ugrave;":"ù","&uacute":"ú","&uacute;":"ú","&ucirc":"û","&ucirc;":"û","&uuml":"ü","&uuml;":"ü","&yacute":"ý","&yacute;":"ý","&thorn":"þ","&thorn;":"þ","&yuml":"ÿ","&yuml;":"ÿ","&quot":'"',"&quot;":'"',"&amp":"&","&amp;":"&","&lt":"<","&lt;":"<","&gt":">","&gt;":">","&OElig;":"Œ","&oelig;":"œ","&Scaron;":"Š","&scaron;":"š","&Yuml;":"Ÿ","&circ;":"ˆ","&tilde;":"˜","&ensp;":" ","&emsp;":" ","&thinsp;":" ","&zwnj;":"‌","&zwj;":"‍","&lrm;":"‎","&rlm;":"‏","&ndash;":"–","&mdash;":"—","&lsquo;":"‘","&rsquo;":"’","&sbquo;":"‚","&ldquo;":"“","&rdquo;":"”","&bdquo;":"„","&dagger;":"†","&Dagger;":"‡","&permil;":"‰","&lsaquo;":"‹","&rsaquo;":"›","&euro;":"€","&fnof;":"ƒ","&Alpha;":"Α","&Beta;":"Β","&Gamma;":"Γ","&Delta;":"Δ","&Epsilon;":"Ε","&Zeta;":"Ζ","&Eta;":"Η","&Theta;":"Θ","&Iota;":"Ι","&Kappa;":"Κ","&Lambda;":"Λ","&Mu;":"Μ","&Nu;":"Ν","&Xi;":"Ξ","&Omicron;":"Ο","&Pi;":"Π","&Rho;":"Ρ","&Sigma;":"Σ","&Tau;":"Τ","&Upsilon;":"Υ","&Phi;":"Φ","&Chi;":"Χ","&Psi;":"Ψ","&Omega;":"Ω","&alpha;":"α","&beta;":"β","&gamma;":"γ","&delta;":"δ","&epsilon;":"ε","&zeta;":"ζ","&eta;":"η","&theta;":"θ","&iota;":"ι","&kappa;":"κ","&lambda;":"λ","&mu;":"μ","&nu;":"ν","&xi;":"ξ","&omicron;":"ο","&pi;":"π","&rho;":"ρ","&sigmaf;":"ς","&sigma;":"σ","&tau;":"τ","&upsilon;":"υ","&phi;":"φ","&chi;":"χ","&psi;":"ψ","&omega;":"ω","&thetasym;":"ϑ","&upsih;":"ϒ","&piv;":"ϖ","&bull;":"•","&hellip;":"…","&prime;":"′","&Prime;":"″","&oline;":"‾","&frasl;":"⁄","&weierp;":"℘","&image;":"ℑ","&real;":"ℜ","&trade;":"™","&alefsym;":"ℵ","&larr;":"←","&uarr;":"↑","&rarr;":"→","&darr;":"↓","&harr;":"↔","&crarr;":"↵","&lArr;":"⇐","&uArr;":"⇑","&rArr;":"⇒","&dArr;":"⇓","&hArr;":"⇔","&forall;":"∀","&part;":"∂","&exist;":"∃","&empty;":"∅","&nabla;":"∇","&isin;":"∈","&notin;":"∉","&ni;":"∋","&prod;":"∏","&sum;":"∑","&minus;":"−","&lowast;":"∗","&radic;":"√","&prop;":"∝","&infin;":"∞","&ang;":"∠","&and;":"∧","&or;":"∨","&cap;":"∩","&cup;":"∪","&int;":"∫","&there4;":"∴","&sim;":"∼","&cong;":"≅","&asymp;":"≈","&ne;":"≠","&equiv;":"≡","&le;":"≤","&ge;":"≥","&sub;":"⊂","&sup;":"⊃","&nsub;":"⊄","&sube;":"⊆","&supe;":"⊇","&oplus;":"⊕","&otimes;":"⊗","&perp;":"⊥","&sdot;":"⋅","&lceil;":"⌈","&rceil;":"⌉","&lfloor;":"⌊","&rfloor;":"⌋","&lang;":"〈","&rang;":"〉","&loz;":"◊","&spades;":"♠","&clubs;":"♣","&hearts;":"♥","&diams;":"♦"},characters:{"'":"&apos;"," ":"&nbsp;","¡":"&iexcl;","¢":"&cent;","£":"&pound;","¤":"&curren;","¥":"&yen;","¦":"&brvbar;","§":"&sect;","¨":"&uml;","©":"&copy;","ª":"&ordf;","«":"&laquo;","¬":"&not;","­":"&shy;","®":"&reg;","¯":"&macr;","°":"&deg;","±":"&plusmn;","²":"&sup2;","³":"&sup3;","´":"&acute;","µ":"&micro;","¶":"&para;","·":"&middot;","¸":"&cedil;","¹":"&sup1;","º":"&ordm;","»":"&raquo;","¼":"&frac14;","½":"&frac12;","¾":"&frac34;","¿":"&iquest;","À":"&Agrave;","Á":"&Aacute;","Â":"&Acirc;","Ã":"&Atilde;","Ä":"&Auml;","Å":"&Aring;","Æ":"&AElig;","Ç":"&Ccedil;","È":"&Egrave;","É":"&Eacute;","Ê":"&Ecirc;","Ë":"&Euml;","Ì":"&Igrave;","Í":"&Iacute;","Î":"&Icirc;","Ï":"&Iuml;","Ð":"&ETH;","Ñ":"&Ntilde;","Ò":"&Ograve;","Ó":"&Oacute;","Ô":"&Ocirc;","Õ":"&Otilde;","Ö":"&Ouml;","×":"&times;","Ø":"&Oslash;","Ù":"&Ugrave;","Ú":"&Uacute;","Û":"&Ucirc;","Ü":"&Uuml;","Ý":"&Yacute;","Þ":"&THORN;","ß":"&szlig;","à":"&agrave;","á":"&aacute;","â":"&acirc;","ã":"&atilde;","ä":"&auml;","å":"&aring;","æ":"&aelig;","ç":"&ccedil;","è":"&egrave;","é":"&eacute;","ê":"&ecirc;","ë":"&euml;","ì":"&igrave;","í":"&iacute;","î":"&icirc;","ï":"&iuml;","ð":"&eth;","ñ":"&ntilde;","ò":"&ograve;","ó":"&oacute;","ô":"&ocirc;","õ":"&otilde;","ö":"&ouml;","÷":"&divide;","ø":"&oslash;","ù":"&ugrave;","ú":"&uacute;","û":"&ucirc;","ü":"&uuml;","ý":"&yacute;","þ":"&thorn;","ÿ":"&yuml;",'"':"&quot;","&":"&amp;","<":"&lt;",">":"&gt;","Œ":"&OElig;","œ":"&oelig;","Š":"&Scaron;","š":"&scaron;","Ÿ":"&Yuml;","ˆ":"&circ;","˜":"&tilde;"," ":"&ensp;"," ":"&emsp;"," ":"&thinsp;","‌":"&zwnj;","‍":"&zwj;","‎":"&lrm;","‏":"&rlm;","–":"&ndash;","—":"&mdash;","‘":"&lsquo;","’":"&rsquo;","‚":"&sbquo;","“":"&ldquo;","”":"&rdquo;","„":"&bdquo;","†":"&dagger;","‡":"&Dagger;","‰":"&permil;","‹":"&lsaquo;","›":"&rsaquo;","€":"&euro;","ƒ":"&fnof;","Α":"&Alpha;","Β":"&Beta;","Γ":"&Gamma;","Δ":"&Delta;","Ε":"&Epsilon;","Ζ":"&Zeta;","Η":"&Eta;","Θ":"&Theta;","Ι":"&Iota;","Κ":"&Kappa;","Λ":"&Lambda;","Μ":"&Mu;","Ν":"&Nu;","Ξ":"&Xi;","Ο":"&Omicron;","Π":"&Pi;","Ρ":"&Rho;","Σ":"&Sigma;","Τ":"&Tau;","Υ":"&Upsilon;","Φ":"&Phi;","Χ":"&Chi;","Ψ":"&Psi;","Ω":"&Omega;","α":"&alpha;","β":"&beta;","γ":"&gamma;","δ":"&delta;","ε":"&epsilon;","ζ":"&zeta;","η":"&eta;","θ":"&theta;","ι":"&iota;","κ":"&kappa;","λ":"&lambda;","μ":"&mu;","ν":"&nu;","ξ":"&xi;","ο":"&omicron;","π":"&pi;","ρ":"&rho;","ς":"&sigmaf;","σ":"&sigma;","τ":"&tau;","υ":"&upsilon;","φ":"&phi;","χ":"&chi;","ψ":"&psi;","ω":"&omega;","ϑ":"&thetasym;","ϒ":"&upsih;","ϖ":"&piv;","•":"&bull;","…":"&hellip;","′":"&prime;","″":"&Prime;","‾":"&oline;","⁄":"&frasl;","℘":"&weierp;","ℑ":"&image;","ℜ":"&real;","™":"&trade;","ℵ":"&alefsym;","←":"&larr;","↑":"&uarr;","→":"&rarr;","↓":"&darr;","↔":"&harr;","↵":"&crarr;","⇐":"&lArr;","⇑":"&uArr;","⇒":"&rArr;","⇓":"&dArr;","⇔":"&hArr;","∀":"&forall;","∂":"&part;","∃":"&exist;","∅":"&empty;","∇":"&nabla;","∈":"&isin;","∉":"&notin;","∋":"&ni;","∏":"&prod;","∑":"&sum;","−":"&minus;","∗":"&lowast;","√":"&radic;","∝":"&prop;","∞":"&infin;","∠":"&ang;","∧":"&and;","∨":"&or;","∩":"&cap;","∪":"&cup;","∫":"&int;","∴":"&there4;","∼":"&sim;","≅":"&cong;","≈":"&asymp;","≠":"&ne;","≡":"&equiv;","≤":"&le;","≥":"&ge;","⊂":"&sub;","⊃":"&sup;","⊄":"&nsub;","⊆":"&sube;","⊇":"&supe;","⊕":"&oplus;","⊗":"&otimes;","⊥":"&perp;","⋅":"&sdot;","⌈":"&lceil;","⌉":"&rceil;","⌊":"&lfloor;","⌋":"&rfloor;","〈":"&lang;","〉":"&rang;","◊":"&loz;","♠":"&spades;","♣":"&clubs;","♥":"&hearts;","♦":"&diams;"}},html5:{entities:{"&AElig":"Æ","&AElig;":"Æ","&AMP":"&","&AMP;":"&","&Aacute":"Á","&Aacute;":"Á","&Abreve;":"Ă","&Acirc":"Â","&Acirc;":"Â","&Acy;":"А","&Afr;":"𝔄","&Agrave":"À","&Agrave;":"À","&Alpha;":"Α","&Amacr;":"Ā","&And;":"⩓","&Aogon;":"Ą","&Aopf;":"𝔸","&ApplyFunction;":"⁡","&Aring":"Å","&Aring;":"Å","&Ascr;":"𝒜","&Assign;":"≔","&Atilde":"Ã","&Atilde;":"Ã","&Auml":"Ä","&Auml;":"Ä","&Backslash;":"∖","&Barv;":"⫧","&Barwed;":"⌆","&Bcy;":"Б","&Because;":"∵","&Bernoullis;":"ℬ","&Beta;":"Β","&Bfr;":"𝔅","&Bopf;":"𝔹","&Breve;":"˘","&Bscr;":"ℬ","&Bumpeq;":"≎","&CHcy;":"Ч","&COPY":"©","&COPY;":"©","&Cacute;":"Ć","&Cap;":"⋒","&CapitalDifferentialD;":"ⅅ","&Cayleys;":"ℭ","&Ccaron;":"Č","&Ccedil":"Ç","&Ccedil;":"Ç","&Ccirc;":"Ĉ","&Cconint;":"∰","&Cdot;":"Ċ","&Cedilla;":"¸","&CenterDot;":"·","&Cfr;":"ℭ","&Chi;":"Χ","&CircleDot;":"⊙","&CircleMinus;":"⊖","&CirclePlus;":"⊕","&CircleTimes;":"⊗","&ClockwiseContourIntegral;":"∲","&CloseCurlyDoubleQuote;":"”","&CloseCurlyQuote;":"’","&Colon;":"∷","&Colone;":"⩴","&Congruent;":"≡","&Conint;":"∯","&ContourIntegral;":"∮","&Copf;":"ℂ","&Coproduct;":"∐","&CounterClockwiseContourIntegral;":"∳","&Cross;":"⨯","&Cscr;":"𝒞","&Cup;":"⋓","&CupCap;":"≍","&DD;":"ⅅ","&DDotrahd;":"⤑","&DJcy;":"Ђ","&DScy;":"Ѕ","&DZcy;":"Џ","&Dagger;":"‡","&Darr;":"↡","&Dashv;":"⫤","&Dcaron;":"Ď","&Dcy;":"Д","&Del;":"∇","&Delta;":"Δ","&Dfr;":"𝔇","&DiacriticalAcute;":"´","&DiacriticalDot;":"˙","&DiacriticalDoubleAcute;":"˝","&DiacriticalGrave;":"`","&DiacriticalTilde;":"˜","&Diamond;":"⋄","&DifferentialD;":"ⅆ","&Dopf;":"𝔻","&Dot;":"¨","&DotDot;":"⃜","&DotEqual;":"≐","&DoubleContourIntegral;":"∯","&DoubleDot;":"¨","&DoubleDownArrow;":"⇓","&DoubleLeftArrow;":"⇐","&DoubleLeftRightArrow;":"⇔","&DoubleLeftTee;":"⫤","&DoubleLongLeftArrow;":"⟸","&DoubleLongLeftRightArrow;":"⟺","&DoubleLongRightArrow;":"⟹","&DoubleRightArrow;":"⇒","&DoubleRightTee;":"⊨","&DoubleUpArrow;":"⇑","&DoubleUpDownArrow;":"⇕","&DoubleVerticalBar;":"∥","&DownArrow;":"↓","&DownArrowBar;":"⤓","&DownArrowUpArrow;":"⇵","&DownBreve;":"̑","&DownLeftRightVector;":"⥐","&DownLeftTeeVector;":"⥞","&DownLeftVector;":"↽","&DownLeftVectorBar;":"⥖","&DownRightTeeVector;":"⥟","&DownRightVector;":"⇁","&DownRightVectorBar;":"⥗","&DownTee;":"⊤","&DownTeeArrow;":"↧","&Downarrow;":"⇓","&Dscr;":"𝒟","&Dstrok;":"Đ","&ENG;":"Ŋ","&ETH":"Ð","&ETH;":"Ð","&Eacute":"É","&Eacute;":"É","&Ecaron;":"Ě","&Ecirc":"Ê","&Ecirc;":"Ê","&Ecy;":"Э","&Edot;":"Ė","&Efr;":"𝔈","&Egrave":"È","&Egrave;":"È","&Element;":"∈","&Emacr;":"Ē","&EmptySmallSquare;":"◻","&EmptyVerySmallSquare;":"▫","&Eogon;":"Ę","&Eopf;":"𝔼","&Epsilon;":"Ε","&Equal;":"⩵","&EqualTilde;":"≂","&Equilibrium;":"⇌","&Escr;":"ℰ","&Esim;":"⩳","&Eta;":"Η","&Euml":"Ë","&Euml;":"Ë","&Exists;":"∃","&ExponentialE;":"ⅇ","&Fcy;":"Ф","&Ffr;":"𝔉","&FilledSmallSquare;":"◼","&FilledVerySmallSquare;":"▪","&Fopf;":"𝔽","&ForAll;":"∀","&Fouriertrf;":"ℱ","&Fscr;":"ℱ","&GJcy;":"Ѓ","&GT":">","&GT;":">","&Gamma;":"Γ","&Gammad;":"Ϝ","&Gbreve;":"Ğ","&Gcedil;":"Ģ","&Gcirc;":"Ĝ","&Gcy;":"Г","&Gdot;":"Ġ","&Gfr;":"𝔊","&Gg;":"⋙","&Gopf;":"𝔾","&GreaterEqual;":"≥","&GreaterEqualLess;":"⋛","&GreaterFullEqual;":"≧","&GreaterGreater;":"⪢","&GreaterLess;":"≷","&GreaterSlantEqual;":"⩾","&GreaterTilde;":"≳","&Gscr;":"𝒢","&Gt;":"≫","&HARDcy;":"Ъ","&Hacek;":"ˇ","&Hat;":"^","&Hcirc;":"Ĥ","&Hfr;":"ℌ","&HilbertSpace;":"ℋ","&Hopf;":"ℍ","&HorizontalLine;":"─","&Hscr;":"ℋ","&Hstrok;":"Ħ","&HumpDownHump;":"≎","&HumpEqual;":"≏","&IEcy;":"Е","&IJlig;":"IJ","&IOcy;":"Ё","&Iacute":"Í","&Iacute;":"Í","&Icirc":"Î","&Icirc;":"Î","&Icy;":"И","&Idot;":"İ","&Ifr;":"ℑ","&Igrave":"Ì","&Igrave;":"Ì","&Im;":"ℑ","&Imacr;":"Ī","&ImaginaryI;":"ⅈ","&Implies;":"⇒","&Int;":"∬","&Integral;":"∫","&Intersection;":"⋂","&InvisibleComma;":"⁣","&InvisibleTimes;":"⁢","&Iogon;":"Į","&Iopf;":"𝕀","&Iota;":"Ι","&Iscr;":"ℐ","&Itilde;":"Ĩ","&Iukcy;":"І","&Iuml":"Ï","&Iuml;":"Ï","&Jcirc;":"Ĵ","&Jcy;":"Й","&Jfr;":"𝔍","&Jopf;":"𝕁","&Jscr;":"𝒥","&Jsercy;":"Ј","&Jukcy;":"Є","&KHcy;":"Х","&KJcy;":"Ќ","&Kappa;":"Κ","&Kcedil;":"Ķ","&Kcy;":"К","&Kfr;":"𝔎","&Kopf;":"𝕂","&Kscr;":"𝒦","&LJcy;":"Љ","&LT":"<","&LT;":"<","&Lacute;":"Ĺ","&Lambda;":"Λ","&Lang;":"⟪","&Laplacetrf;":"ℒ","&Larr;":"↞","&Lcaron;":"Ľ","&Lcedil;":"Ļ","&Lcy;":"Л","&LeftAngleBracket;":"⟨","&LeftArrow;":"←","&LeftArrowBar;":"⇤","&LeftArrowRightArrow;":"⇆","&LeftCeiling;":"⌈","&LeftDoubleBracket;":"⟦","&LeftDownTeeVector;":"⥡","&LeftDownVector;":"⇃","&LeftDownVectorBar;":"⥙","&LeftFloor;":"⌊","&LeftRightArrow;":"↔","&LeftRightVector;":"⥎","&LeftTee;":"⊣","&LeftTeeArrow;":"↤","&LeftTeeVector;":"⥚","&LeftTriangle;":"⊲","&LeftTriangleBar;":"⧏","&LeftTriangleEqual;":"⊴","&LeftUpDownVector;":"⥑","&LeftUpTeeVector;":"⥠","&LeftUpVector;":"↿","&LeftUpVectorBar;":"⥘","&LeftVector;":"↼","&LeftVectorBar;":"⥒","&Leftarrow;":"⇐","&Leftrightarrow;":"⇔","&LessEqualGreater;":"⋚","&LessFullEqual;":"≦","&LessGreater;":"≶","&LessLess;":"⪡","&LessSlantEqual;":"⩽","&LessTilde;":"≲","&Lfr;":"𝔏","&Ll;":"⋘","&Lleftarrow;":"⇚","&Lmidot;":"Ŀ","&LongLeftArrow;":"⟵","&LongLeftRightArrow;":"⟷","&LongRightArrow;":"⟶","&Longleftarrow;":"⟸","&Longleftrightarrow;":"⟺","&Longrightarrow;":"⟹","&Lopf;":"𝕃","&LowerLeftArrow;":"↙","&LowerRightArrow;":"↘","&Lscr;":"ℒ","&Lsh;":"↰","&Lstrok;":"Ł","&Lt;":"≪","&Map;":"⤅","&Mcy;":"М","&MediumSpace;":" ","&Mellintrf;":"ℳ","&Mfr;":"𝔐","&MinusPlus;":"∓","&Mopf;":"𝕄","&Mscr;":"ℳ","&Mu;":"Μ","&NJcy;":"Њ","&Nacute;":"Ń","&Ncaron;":"Ň","&Ncedil;":"Ņ","&Ncy;":"Н","&NegativeMediumSpace;":"​","&NegativeThickSpace;":"​","&NegativeThinSpace;":"​","&NegativeVeryThinSpace;":"​","&NestedGreaterGreater;":"≫","&NestedLessLess;":"≪","&NewLine;":"\n","&Nfr;":"𝔑","&NoBreak;":"⁠","&NonBreakingSpace;":" ","&Nopf;":"ℕ","&Not;":"⫬","&NotCongruent;":"≢","&NotCupCap;":"≭","&NotDoubleVerticalBar;":"∦","&NotElement;":"∉","&NotEqual;":"≠","&NotEqualTilde;":"≂̸","&NotExists;":"∄","&NotGreater;":"≯","&NotGreaterEqual;":"≱","&NotGreaterFullEqual;":"≧̸","&NotGreaterGreater;":"≫̸","&NotGreaterLess;":"≹","&NotGreaterSlantEqual;":"⩾̸","&NotGreaterTilde;":"≵","&NotHumpDownHump;":"≎̸","&NotHumpEqual;":"≏̸","&NotLeftTriangle;":"⋪","&NotLeftTriangleBar;":"⧏̸","&NotLeftTriangleEqual;":"⋬","&NotLess;":"≮","&NotLessEqual;":"≰","&NotLessGreater;":"≸","&NotLessLess;":"≪̸","&NotLessSlantEqual;":"⩽̸","&NotLessTilde;":"≴","&NotNestedGreaterGreater;":"⪢̸","&NotNestedLessLess;":"⪡̸","&NotPrecedes;":"⊀","&NotPrecedesEqual;":"⪯̸","&NotPrecedesSlantEqual;":"⋠","&NotReverseElement;":"∌","&NotRightTriangle;":"⋫","&NotRightTriangleBar;":"⧐̸","&NotRightTriangleEqual;":"⋭","&NotSquareSubset;":"⊏̸","&NotSquareSubsetEqual;":"⋢","&NotSquareSuperset;":"⊐̸","&NotSquareSupersetEqual;":"⋣","&NotSubset;":"⊂⃒","&NotSubsetEqual;":"⊈","&NotSucceeds;":"⊁","&NotSucceedsEqual;":"⪰̸","&NotSucceedsSlantEqual;":"⋡","&NotSucceedsTilde;":"≿̸","&NotSuperset;":"⊃⃒","&NotSupersetEqual;":"⊉","&NotTilde;":"≁","&NotTildeEqual;":"≄","&NotTildeFullEqual;":"≇","&NotTildeTilde;":"≉","&NotVerticalBar;":"∤","&Nscr;":"𝒩","&Ntilde":"Ñ","&Ntilde;":"Ñ","&Nu;":"Ν","&OElig;":"Œ","&Oacute":"Ó","&Oacute;":"Ó","&Ocirc":"Ô","&Ocirc;":"Ô","&Ocy;":"О","&Odblac;":"Ő","&Ofr;":"𝔒","&Ograve":"Ò","&Ograve;":"Ò","&Omacr;":"Ō","&Omega;":"Ω","&Omicron;":"Ο","&Oopf;":"𝕆","&OpenCurlyDoubleQuote;":"“","&OpenCurlyQuote;":"‘","&Or;":"⩔","&Oscr;":"𝒪","&Oslash":"Ø","&Oslash;":"Ø","&Otilde":"Õ","&Otilde;":"Õ","&Otimes;":"⨷","&Ouml":"Ö","&Ouml;":"Ö","&OverBar;":"‾","&OverBrace;":"⏞","&OverBracket;":"⎴","&OverParenthesis;":"⏜","&PartialD;":"∂","&Pcy;":"П","&Pfr;":"𝔓","&Phi;":"Φ","&Pi;":"Π","&PlusMinus;":"±","&Poincareplane;":"ℌ","&Popf;":"ℙ","&Pr;":"⪻","&Precedes;":"≺","&PrecedesEqual;":"⪯","&PrecedesSlantEqual;":"≼","&PrecedesTilde;":"≾","&Prime;":"″","&Product;":"∏","&Proportion;":"∷","&Proportional;":"∝","&Pscr;":"𝒫","&Psi;":"Ψ","&QUOT":'"',"&QUOT;":'"',"&Qfr;":"𝔔","&Qopf;":"ℚ","&Qscr;":"𝒬","&RBarr;":"⤐","&REG":"®","&REG;":"®","&Racute;":"Ŕ","&Rang;":"⟫","&Rarr;":"↠","&Rarrtl;":"⤖","&Rcaron;":"Ř","&Rcedil;":"Ŗ","&Rcy;":"Р","&Re;":"ℜ","&ReverseElement;":"∋","&ReverseEquilibrium;":"⇋","&ReverseUpEquilibrium;":"⥯","&Rfr;":"ℜ","&Rho;":"Ρ","&RightAngleBracket;":"⟩","&RightArrow;":"→","&RightArrowBar;":"⇥","&RightArrowLeftArrow;":"⇄","&RightCeiling;":"⌉","&RightDoubleBracket;":"⟧","&RightDownTeeVector;":"⥝","&RightDownVector;":"⇂","&RightDownVectorBar;":"⥕","&RightFloor;":"⌋","&RightTee;":"⊢","&RightTeeArrow;":"↦","&RightTeeVector;":"⥛","&RightTriangle;":"⊳","&RightTriangleBar;":"⧐","&RightTriangleEqual;":"⊵","&RightUpDownVector;":"⥏","&RightUpTeeVector;":"⥜","&RightUpVector;":"↾","&RightUpVectorBar;":"⥔","&RightVector;":"⇀","&RightVectorBar;":"⥓","&Rightarrow;":"⇒","&Ropf;":"ℝ","&RoundImplies;":"⥰","&Rrightarrow;":"⇛","&Rscr;":"ℛ","&Rsh;":"↱","&RuleDelayed;":"⧴","&SHCHcy;":"Щ","&SHcy;":"Ш","&SOFTcy;":"Ь","&Sacute;":"Ś","&Sc;":"⪼","&Scaron;":"Š","&Scedil;":"Ş","&Scirc;":"Ŝ","&Scy;":"С","&Sfr;":"𝔖","&ShortDownArrow;":"↓","&ShortLeftArrow;":"←","&ShortRightArrow;":"→","&ShortUpArrow;":"↑","&Sigma;":"Σ","&SmallCircle;":"∘","&Sopf;":"𝕊","&Sqrt;":"√","&Square;":"□","&SquareIntersection;":"⊓","&SquareSubset;":"⊏","&SquareSubsetEqual;":"⊑","&SquareSuperset;":"⊐","&SquareSupersetEqual;":"⊒","&SquareUnion;":"⊔","&Sscr;":"𝒮","&Star;":"⋆","&Sub;":"⋐","&Subset;":"⋐","&SubsetEqual;":"⊆","&Succeeds;":"≻","&SucceedsEqual;":"⪰","&SucceedsSlantEqual;":"≽","&SucceedsTilde;":"≿","&SuchThat;":"∋","&Sum;":"∑","&Sup;":"⋑","&Superset;":"⊃","&SupersetEqual;":"⊇","&Supset;":"⋑","&THORN":"Þ","&THORN;":"Þ","&TRADE;":"™","&TSHcy;":"Ћ","&TScy;":"Ц","&Tab;":"\t","&Tau;":"Τ","&Tcaron;":"Ť","&Tcedil;":"Ţ","&Tcy;":"Т","&Tfr;":"𝔗","&Therefore;":"∴","&Theta;":"Θ","&ThickSpace;":"  ","&ThinSpace;":" ","&Tilde;":"∼","&TildeEqual;":"≃","&TildeFullEqual;":"≅","&TildeTilde;":"≈","&Topf;":"𝕋","&TripleDot;":"⃛","&Tscr;":"𝒯","&Tstrok;":"Ŧ","&Uacute":"Ú","&Uacute;":"Ú","&Uarr;":"↟","&Uarrocir;":"⥉","&Ubrcy;":"Ў","&Ubreve;":"Ŭ","&Ucirc":"Û","&Ucirc;":"Û","&Ucy;":"У","&Udblac;":"Ű","&Ufr;":"𝔘","&Ugrave":"Ù","&Ugrave;":"Ù","&Umacr;":"Ū","&UnderBar;":"_","&UnderBrace;":"⏟","&UnderBracket;":"⎵","&UnderParenthesis;":"⏝","&Union;":"⋃","&UnionPlus;":"⊎","&Uogon;":"Ų","&Uopf;":"𝕌","&UpArrow;":"↑","&UpArrowBar;":"⤒","&UpArrowDownArrow;":"⇅","&UpDownArrow;":"↕","&UpEquilibrium;":"⥮","&UpTee;":"⊥","&UpTeeArrow;":"↥","&Uparrow;":"⇑","&Updownarrow;":"⇕","&UpperLeftArrow;":"↖","&UpperRightArrow;":"↗","&Upsi;":"ϒ","&Upsilon;":"Υ","&Uring;":"Ů","&Uscr;":"𝒰","&Utilde;":"Ũ","&Uuml":"Ü","&Uuml;":"Ü","&VDash;":"⊫","&Vbar;":"⫫","&Vcy;":"В","&Vdash;":"⊩","&Vdashl;":"⫦","&Vee;":"⋁","&Verbar;":"‖","&Vert;":"‖","&VerticalBar;":"∣","&VerticalLine;":"|","&VerticalSeparator;":"❘","&VerticalTilde;":"≀","&VeryThinSpace;":" ","&Vfr;":"𝔙","&Vopf;":"𝕍","&Vscr;":"𝒱","&Vvdash;":"⊪","&Wcirc;":"Ŵ","&Wedge;":"⋀","&Wfr;":"𝔚","&Wopf;":"𝕎","&Wscr;":"𝒲","&Xfr;":"𝔛","&Xi;":"Ξ","&Xopf;":"𝕏","&Xscr;":"𝒳","&YAcy;":"Я","&YIcy;":"Ї","&YUcy;":"Ю","&Yacute":"Ý","&Yacute;":"Ý","&Ycirc;":"Ŷ","&Ycy;":"Ы","&Yfr;":"𝔜","&Yopf;":"𝕐","&Yscr;":"𝒴","&Yuml;":"Ÿ","&ZHcy;":"Ж","&Zacute;":"Ź","&Zcaron;":"Ž","&Zcy;":"З","&Zdot;":"Ż","&ZeroWidthSpace;":"​","&Zeta;":"Ζ","&Zfr;":"ℨ","&Zopf;":"ℤ","&Zscr;":"𝒵","&aacute":"á","&aacute;":"á","&abreve;":"ă","&ac;":"∾","&acE;":"∾̳","&acd;":"∿","&acirc":"â","&acirc;":"â","&acute":"´","&acute;":"´","&acy;":"а","&aelig":"æ","&aelig;":"æ","&af;":"⁡","&afr;":"𝔞","&agrave":"à","&agrave;":"à","&alefsym;":"ℵ","&aleph;":"ℵ","&alpha;":"α","&amacr;":"ā","&amalg;":"⨿","&amp":"&","&amp;":"&","&and;":"∧","&andand;":"⩕","&andd;":"⩜","&andslope;":"⩘","&andv;":"⩚","&ang;":"∠","&ange;":"⦤","&angle;":"∠","&angmsd;":"∡","&angmsdaa;":"⦨","&angmsdab;":"⦩","&angmsdac;":"⦪","&angmsdad;":"⦫","&angmsdae;":"⦬","&angmsdaf;":"⦭","&angmsdag;":"⦮","&angmsdah;":"⦯","&angrt;":"∟","&angrtvb;":"⊾","&angrtvbd;":"⦝","&angsph;":"∢","&angst;":"Å","&angzarr;":"⍼","&aogon;":"ą","&aopf;":"𝕒","&ap;":"≈","&apE;":"⩰","&apacir;":"⩯","&ape;":"≊","&apid;":"≋","&apos;":"'","&approx;":"≈","&approxeq;":"≊","&aring":"å","&aring;":"å","&ascr;":"𝒶","&ast;":"*","&asymp;":"≈","&asympeq;":"≍","&atilde":"ã","&atilde;":"ã","&auml":"ä","&auml;":"ä","&awconint;":"∳","&awint;":"⨑","&bNot;":"⫭","&backcong;":"≌","&backepsilon;":"϶","&backprime;":"‵","&backsim;":"∽","&backsimeq;":"⋍","&barvee;":"⊽","&barwed;":"⌅","&barwedge;":"⌅","&bbrk;":"⎵","&bbrktbrk;":"⎶","&bcong;":"≌","&bcy;":"б","&bdquo;":"„","&becaus;":"∵","&because;":"∵","&bemptyv;":"⦰","&bepsi;":"϶","&bernou;":"ℬ","&beta;":"β","&beth;":"ℶ","&between;":"≬","&bfr;":"𝔟","&bigcap;":"⋂","&bigcirc;":"◯","&bigcup;":"⋃","&bigodot;":"⨀","&bigoplus;":"⨁","&bigotimes;":"⨂","&bigsqcup;":"⨆","&bigstar;":"★","&bigtriangledown;":"▽","&bigtriangleup;":"△","&biguplus;":"⨄","&bigvee;":"⋁","&bigwedge;":"⋀","&bkarow;":"⤍","&blacklozenge;":"⧫","&blacksquare;":"▪","&blacktriangle;":"▴","&blacktriangledown;":"▾","&blacktriangleleft;":"◂","&blacktriangleright;":"▸","&blank;":"␣","&blk12;":"▒","&blk14;":"░","&blk34;":"▓","&block;":"█","&bne;":"=⃥","&bnequiv;":"≡⃥","&bnot;":"⌐","&bopf;":"𝕓","&bot;":"⊥","&bottom;":"⊥","&bowtie;":"⋈","&boxDL;":"╗","&boxDR;":"╔","&boxDl;":"╖","&boxDr;":"╓","&boxH;":"═","&boxHD;":"╦","&boxHU;":"╩","&boxHd;":"╤","&boxHu;":"╧","&boxUL;":"╝","&boxUR;":"╚","&boxUl;":"╜","&boxUr;":"╙","&boxV;":"║","&boxVH;":"╬","&boxVL;":"╣","&boxVR;":"╠","&boxVh;":"╫","&boxVl;":"╢","&boxVr;":"╟","&boxbox;":"⧉","&boxdL;":"╕","&boxdR;":"╒","&boxdl;":"┐","&boxdr;":"┌","&boxh;":"─","&boxhD;":"╥","&boxhU;":"╨","&boxhd;":"┬","&boxhu;":"┴","&boxminus;":"⊟","&boxplus;":"⊞","&boxtimes;":"⊠","&boxuL;":"╛","&boxuR;":"╘","&boxul;":"┘","&boxur;":"└","&boxv;":"│","&boxvH;":"╪","&boxvL;":"╡","&boxvR;":"╞","&boxvh;":"┼","&boxvl;":"┤","&boxvr;":"├","&bprime;":"‵","&breve;":"˘","&brvbar":"¦","&brvbar;":"¦","&bscr;":"𝒷","&bsemi;":"⁏","&bsim;":"∽","&bsime;":"⋍","&bsol;":"\\","&bsolb;":"⧅","&bsolhsub;":"⟈","&bull;":"•","&bullet;":"•","&bump;":"≎","&bumpE;":"⪮","&bumpe;":"≏","&bumpeq;":"≏","&cacute;":"ć","&cap;":"∩","&capand;":"⩄","&capbrcup;":"⩉","&capcap;":"⩋","&capcup;":"⩇","&capdot;":"⩀","&caps;":"∩︀","&caret;":"⁁","&caron;":"ˇ","&ccaps;":"⩍","&ccaron;":"č","&ccedil":"ç","&ccedil;":"ç","&ccirc;":"ĉ","&ccups;":"⩌","&ccupssm;":"⩐","&cdot;":"ċ","&cedil":"¸","&cedil;":"¸","&cemptyv;":"⦲","&cent":"¢","&cent;":"¢","&centerdot;":"·","&cfr;":"𝔠","&chcy;":"ч","&check;":"✓","&checkmark;":"✓","&chi;":"χ","&cir;":"○","&cirE;":"⧃","&circ;":"ˆ","&circeq;":"≗","&circlearrowleft;":"↺","&circlearrowright;":"↻","&circledR;":"®","&circledS;":"Ⓢ","&circledast;":"⊛","&circledcirc;":"⊚","&circleddash;":"⊝","&cire;":"≗","&cirfnint;":"⨐","&cirmid;":"⫯","&cirscir;":"⧂","&clubs;":"♣","&clubsuit;":"♣","&colon;":":","&colone;":"≔","&coloneq;":"≔","&comma;":",","&commat;":"@","&comp;":"∁","&compfn;":"∘","&complement;":"∁","&complexes;":"ℂ","&cong;":"≅","&congdot;":"⩭","&conint;":"∮","&copf;":"𝕔","&coprod;":"∐","&copy":"©","&copy;":"©","&copysr;":"℗","&crarr;":"↵","&cross;":"✗","&cscr;":"𝒸","&csub;":"⫏","&csube;":"⫑","&csup;":"⫐","&csupe;":"⫒","&ctdot;":"⋯","&cudarrl;":"⤸","&cudarrr;":"⤵","&cuepr;":"⋞","&cuesc;":"⋟","&cularr;":"↶","&cularrp;":"⤽","&cup;":"∪","&cupbrcap;":"⩈","&cupcap;":"⩆","&cupcup;":"⩊","&cupdot;":"⊍","&cupor;":"⩅","&cups;":"∪︀","&curarr;":"↷","&curarrm;":"⤼","&curlyeqprec;":"⋞","&curlyeqsucc;":"⋟","&curlyvee;":"⋎","&curlywedge;":"⋏","&curren":"¤","&curren;":"¤","&curvearrowleft;":"↶","&curvearrowright;":"↷","&cuvee;":"⋎","&cuwed;":"⋏","&cwconint;":"∲","&cwint;":"∱","&cylcty;":"⌭","&dArr;":"⇓","&dHar;":"⥥","&dagger;":"†","&daleth;":"ℸ","&darr;":"↓","&dash;":"‐","&dashv;":"⊣","&dbkarow;":"⤏","&dblac;":"˝","&dcaron;":"ď","&dcy;":"д","&dd;":"ⅆ","&ddagger;":"‡","&ddarr;":"⇊","&ddotseq;":"⩷","&deg":"°","&deg;":"°","&delta;":"δ","&demptyv;":"⦱","&dfisht;":"⥿","&dfr;":"𝔡","&dharl;":"⇃","&dharr;":"⇂","&diam;":"⋄","&diamond;":"⋄","&diamondsuit;":"♦","&diams;":"♦","&die;":"¨","&digamma;":"ϝ","&disin;":"⋲","&div;":"÷","&divide":"÷","&divide;":"÷","&divideontimes;":"⋇","&divonx;":"⋇","&djcy;":"ђ","&dlcorn;":"⌞","&dlcrop;":"⌍","&dollar;":"$","&dopf;":"𝕕","&dot;":"˙","&doteq;":"≐","&doteqdot;":"≑","&dotminus;":"∸","&dotplus;":"∔","&dotsquare;":"⊡","&doublebarwedge;":"⌆","&downarrow;":"↓","&downdownarrows;":"⇊","&downharpoonleft;":"⇃","&downharpoonright;":"⇂","&drbkarow;":"⤐","&drcorn;":"⌟","&drcrop;":"⌌","&dscr;":"𝒹","&dscy;":"ѕ","&dsol;":"⧶","&dstrok;":"đ","&dtdot;":"⋱","&dtri;":"▿","&dtrif;":"▾","&duarr;":"⇵","&duhar;":"⥯","&dwangle;":"⦦","&dzcy;":"џ","&dzigrarr;":"⟿","&eDDot;":"⩷","&eDot;":"≑","&eacute":"é","&eacute;":"é","&easter;":"⩮","&ecaron;":"ě","&ecir;":"≖","&ecirc":"ê","&ecirc;":"ê","&ecolon;":"≕","&ecy;":"э","&edot;":"ė","&ee;":"ⅇ","&efDot;":"≒","&efr;":"𝔢","&eg;":"⪚","&egrave":"è","&egrave;":"è","&egs;":"⪖","&egsdot;":"⪘","&el;":"⪙","&elinters;":"⏧","&ell;":"ℓ","&els;":"⪕","&elsdot;":"⪗","&emacr;":"ē","&empty;":"∅","&emptyset;":"∅","&emptyv;":"∅","&emsp13;":" ","&emsp14;":" ","&emsp;":" ","&eng;":"ŋ","&ensp;":" ","&eogon;":"ę","&eopf;":"𝕖","&epar;":"⋕","&eparsl;":"⧣","&eplus;":"⩱","&epsi;":"ε","&epsilon;":"ε","&epsiv;":"ϵ","&eqcirc;":"≖","&eqcolon;":"≕","&eqsim;":"≂","&eqslantgtr;":"⪖","&eqslantless;":"⪕","&equals;":"=","&equest;":"≟","&equiv;":"≡","&equivDD;":"⩸","&eqvparsl;":"⧥","&erDot;":"≓","&erarr;":"⥱","&escr;":"ℯ","&esdot;":"≐","&esim;":"≂","&eta;":"η","&eth":"ð","&eth;":"ð","&euml":"ë","&euml;":"ë","&euro;":"€","&excl;":"!","&exist;":"∃","&expectation;":"ℰ","&exponentiale;":"ⅇ","&fallingdotseq;":"≒","&fcy;":"ф","&female;":"♀","&ffilig;":"ffi","&fflig;":"ff","&ffllig;":"ffl","&ffr;":"𝔣","&filig;":"fi","&fjlig;":"fj","&flat;":"♭","&fllig;":"fl","&fltns;":"▱","&fnof;":"ƒ","&fopf;":"𝕗","&forall;":"∀","&fork;":"⋔","&forkv;":"⫙","&fpartint;":"⨍","&frac12":"½","&frac12;":"½","&frac13;":"⅓","&frac14":"¼","&frac14;":"¼","&frac15;":"⅕","&frac16;":"⅙","&frac18;":"⅛","&frac23;":"⅔","&frac25;":"⅖","&frac34":"¾","&frac34;":"¾","&frac35;":"⅗","&frac38;":"⅜","&frac45;":"⅘","&frac56;":"⅚","&frac58;":"⅝","&frac78;":"⅞","&frasl;":"⁄","&frown;":"⌢","&fscr;":"𝒻","&gE;":"≧","&gEl;":"⪌","&gacute;":"ǵ","&gamma;":"γ","&gammad;":"ϝ","&gap;":"⪆","&gbreve;":"ğ","&gcirc;":"ĝ","&gcy;":"г","&gdot;":"ġ","&ge;":"≥","&gel;":"⋛","&geq;":"≥","&geqq;":"≧","&geqslant;":"⩾","&ges;":"⩾","&gescc;":"⪩","&gesdot;":"⪀","&gesdoto;":"⪂","&gesdotol;":"⪄","&gesl;":"⋛︀","&gesles;":"⪔","&gfr;":"𝔤","&gg;":"≫","&ggg;":"⋙","&gimel;":"ℷ","&gjcy;":"ѓ","&gl;":"≷","&glE;":"⪒","&gla;":"⪥","&glj;":"⪤","&gnE;":"≩","&gnap;":"⪊","&gnapprox;":"⪊","&gne;":"⪈","&gneq;":"⪈","&gneqq;":"≩","&gnsim;":"⋧","&gopf;":"𝕘","&grave;":"`","&gscr;":"ℊ","&gsim;":"≳","&gsime;":"⪎","&gsiml;":"⪐","&gt":">","&gt;":">","&gtcc;":"⪧","&gtcir;":"⩺","&gtdot;":"⋗","&gtlPar;":"⦕","&gtquest;":"⩼","&gtrapprox;":"⪆","&gtrarr;":"⥸","&gtrdot;":"⋗","&gtreqless;":"⋛","&gtreqqless;":"⪌","&gtrless;":"≷","&gtrsim;":"≳","&gvertneqq;":"≩︀","&gvnE;":"≩︀","&hArr;":"⇔","&hairsp;":" ","&half;":"½","&hamilt;":"ℋ","&hardcy;":"ъ","&harr;":"↔","&harrcir;":"⥈","&harrw;":"↭","&hbar;":"ℏ","&hcirc;":"ĥ","&hearts;":"♥","&heartsuit;":"♥","&hellip;":"…","&hercon;":"⊹","&hfr;":"𝔥","&hksearow;":"⤥","&hkswarow;":"⤦","&hoarr;":"⇿","&homtht;":"∻","&hookleftarrow;":"↩","&hookrightarrow;":"↪","&hopf;":"𝕙","&horbar;":"―","&hscr;":"𝒽","&hslash;":"ℏ","&hstrok;":"ħ","&hybull;":"⁃","&hyphen;":"‐","&iacute":"í","&iacute;":"í","&ic;":"⁣","&icirc":"î","&icirc;":"î","&icy;":"и","&iecy;":"е","&iexcl":"¡","&iexcl;":"¡","&iff;":"⇔","&ifr;":"𝔦","&igrave":"ì","&igrave;":"ì","&ii;":"ⅈ","&iiiint;":"⨌","&iiint;":"∭","&iinfin;":"⧜","&iiota;":"℩","&ijlig;":"ij","&imacr;":"ī","&image;":"ℑ","&imagline;":"ℐ","&imagpart;":"ℑ","&imath;":"ı","&imof;":"⊷","&imped;":"Ƶ","&in;":"∈","&incare;":"℅","&infin;":"∞","&infintie;":"⧝","&inodot;":"ı","&int;":"∫","&intcal;":"⊺","&integers;":"ℤ","&intercal;":"⊺","&intlarhk;":"⨗","&intprod;":"⨼","&iocy;":"ё","&iogon;":"į","&iopf;":"𝕚","&iota;":"ι","&iprod;":"⨼","&iquest":"¿","&iquest;":"¿","&iscr;":"𝒾","&isin;":"∈","&isinE;":"⋹","&isindot;":"⋵","&isins;":"⋴","&isinsv;":"⋳","&isinv;":"∈","&it;":"⁢","&itilde;":"ĩ","&iukcy;":"і","&iuml":"ï","&iuml;":"ï","&jcirc;":"ĵ","&jcy;":"й","&jfr;":"𝔧","&jmath;":"ȷ","&jopf;":"𝕛","&jscr;":"𝒿","&jsercy;":"ј","&jukcy;":"є","&kappa;":"κ","&kappav;":"ϰ","&kcedil;":"ķ","&kcy;":"к","&kfr;":"𝔨","&kgreen;":"ĸ","&khcy;":"х","&kjcy;":"ќ","&kopf;":"𝕜","&kscr;":"𝓀","&lAarr;":"⇚","&lArr;":"⇐","&lAtail;":"⤛","&lBarr;":"⤎","&lE;":"≦","&lEg;":"⪋","&lHar;":"⥢","&lacute;":"ĺ","&laemptyv;":"⦴","&lagran;":"ℒ","&lambda;":"λ","&lang;":"⟨","&langd;":"⦑","&langle;":"⟨","&lap;":"⪅","&laquo":"«","&laquo;":"«","&larr;":"←","&larrb;":"⇤","&larrbfs;":"⤟","&larrfs;":"⤝","&larrhk;":"↩","&larrlp;":"↫","&larrpl;":"⤹","&larrsim;":"⥳","&larrtl;":"↢","&lat;":"⪫","&latail;":"⤙","&late;":"⪭","&lates;":"⪭︀","&lbarr;":"⤌","&lbbrk;":"❲","&lbrace;":"{","&lbrack;":"[","&lbrke;":"⦋","&lbrksld;":"⦏","&lbrkslu;":"⦍","&lcaron;":"ľ","&lcedil;":"ļ","&lceil;":"⌈","&lcub;":"{","&lcy;":"л","&ldca;":"⤶","&ldquo;":"“","&ldquor;":"„","&ldrdhar;":"⥧","&ldrushar;":"⥋","&ldsh;":"↲","&le;":"≤","&leftarrow;":"←","&leftarrowtail;":"↢","&leftharpoondown;":"↽","&leftharpoonup;":"↼","&leftleftarrows;":"⇇","&leftrightarrow;":"↔","&leftrightarrows;":"⇆","&leftrightharpoons;":"⇋","&leftrightsquigarrow;":"↭","&leftthreetimes;":"⋋","&leg;":"⋚","&leq;":"≤","&leqq;":"≦","&leqslant;":"⩽","&les;":"⩽","&lescc;":"⪨","&lesdot;":"⩿","&lesdoto;":"⪁","&lesdotor;":"⪃","&lesg;":"⋚︀","&lesges;":"⪓","&lessapprox;":"⪅","&lessdot;":"⋖","&lesseqgtr;":"⋚","&lesseqqgtr;":"⪋","&lessgtr;":"≶","&lesssim;":"≲","&lfisht;":"⥼","&lfloor;":"⌊","&lfr;":"𝔩","&lg;":"≶","&lgE;":"⪑","&lhard;":"↽","&lharu;":"↼","&lharul;":"⥪","&lhblk;":"▄","&ljcy;":"љ","&ll;":"≪","&llarr;":"⇇","&llcorner;":"⌞","&llhard;":"⥫","&lltri;":"◺","&lmidot;":"ŀ","&lmoust;":"⎰","&lmoustache;":"⎰","&lnE;":"≨","&lnap;":"⪉","&lnapprox;":"⪉","&lne;":"⪇","&lneq;":"⪇","&lneqq;":"≨","&lnsim;":"⋦","&loang;":"⟬","&loarr;":"⇽","&lobrk;":"⟦","&longleftarrow;":"⟵","&longleftrightarrow;":"⟷","&longmapsto;":"⟼","&longrightarrow;":"⟶","&looparrowleft;":"↫","&looparrowright;":"↬","&lopar;":"⦅","&lopf;":"𝕝","&loplus;":"⨭","&lotimes;":"⨴","&lowast;":"∗","&lowbar;":"_","&loz;":"◊","&lozenge;":"◊","&lozf;":"⧫","&lpar;":"(","&lparlt;":"⦓","&lrarr;":"⇆","&lrcorner;":"⌟","&lrhar;":"⇋","&lrhard;":"⥭","&lrm;":"‎","&lrtri;":"⊿","&lsaquo;":"‹","&lscr;":"𝓁","&lsh;":"↰","&lsim;":"≲","&lsime;":"⪍","&lsimg;":"⪏","&lsqb;":"[","&lsquo;":"‘","&lsquor;":"‚","&lstrok;":"ł","&lt":"<","&lt;":"<","&ltcc;":"⪦","&ltcir;":"⩹","&ltdot;":"⋖","&lthree;":"⋋","&ltimes;":"⋉","&ltlarr;":"⥶","&ltquest;":"⩻","&ltrPar;":"⦖","&ltri;":"◃","&ltrie;":"⊴","&ltrif;":"◂","&lurdshar;":"⥊","&luruhar;":"⥦","&lvertneqq;":"≨︀","&lvnE;":"≨︀","&mDDot;":"∺","&macr":"¯","&macr;":"¯","&male;":"♂","&malt;":"✠","&maltese;":"✠","&map;":"↦","&mapsto;":"↦","&mapstodown;":"↧","&mapstoleft;":"↤","&mapstoup;":"↥","&marker;":"▮","&mcomma;":"⨩","&mcy;":"м","&mdash;":"—","&measuredangle;":"∡","&mfr;":"𝔪","&mho;":"℧","&micro":"µ","&micro;":"µ","&mid;":"∣","&midast;":"*","&midcir;":"⫰","&middot":"·","&middot;":"·","&minus;":"−","&minusb;":"⊟","&minusd;":"∸","&minusdu;":"⨪","&mlcp;":"⫛","&mldr;":"…","&mnplus;":"∓","&models;":"⊧","&mopf;":"𝕞","&mp;":"∓","&mscr;":"𝓂","&mstpos;":"∾","&mu;":"μ","&multimap;":"⊸","&mumap;":"⊸","&nGg;":"⋙̸","&nGt;":"≫⃒","&nGtv;":"≫̸","&nLeftarrow;":"⇍","&nLeftrightarrow;":"⇎","&nLl;":"⋘̸","&nLt;":"≪⃒","&nLtv;":"≪̸","&nRightarrow;":"⇏","&nVDash;":"⊯","&nVdash;":"⊮","&nabla;":"∇","&nacute;":"ń","&nang;":"∠⃒","&nap;":"≉","&napE;":"⩰̸","&napid;":"≋̸","&napos;":"ʼn","&napprox;":"≉","&natur;":"♮","&natural;":"♮","&naturals;":"ℕ","&nbsp":" ","&nbsp;":" ","&nbump;":"≎̸","&nbumpe;":"≏̸","&ncap;":"⩃","&ncaron;":"ň","&ncedil;":"ņ","&ncong;":"≇","&ncongdot;":"⩭̸","&ncup;":"⩂","&ncy;":"н","&ndash;":"–","&ne;":"≠","&neArr;":"⇗","&nearhk;":"⤤","&nearr;":"↗","&nearrow;":"↗","&nedot;":"≐̸","&nequiv;":"≢","&nesear;":"⤨","&nesim;":"≂̸","&nexist;":"∄","&nexists;":"∄","&nfr;":"𝔫","&ngE;":"≧̸","&nge;":"≱","&ngeq;":"≱","&ngeqq;":"≧̸","&ngeqslant;":"⩾̸","&nges;":"⩾̸","&ngsim;":"≵","&ngt;":"≯","&ngtr;":"≯","&nhArr;":"⇎","&nharr;":"↮","&nhpar;":"⫲","&ni;":"∋","&nis;":"⋼","&nisd;":"⋺","&niv;":"∋","&njcy;":"њ","&nlArr;":"⇍","&nlE;":"≦̸","&nlarr;":"↚","&nldr;":"‥","&nle;":"≰","&nleftarrow;":"↚","&nleftrightarrow;":"↮","&nleq;":"≰","&nleqq;":"≦̸","&nleqslant;":"⩽̸","&nles;":"⩽̸","&nless;":"≮","&nlsim;":"≴","&nlt;":"≮","&nltri;":"⋪","&nltrie;":"⋬","&nmid;":"∤","&nopf;":"𝕟","&not":"¬","&not;":"¬","&notin;":"∉","&notinE;":"⋹̸","&notindot;":"⋵̸","&notinva;":"∉","&notinvb;":"⋷","&notinvc;":"⋶","&notni;":"∌","&notniva;":"∌","&notnivb;":"⋾","&notnivc;":"⋽","&npar;":"∦","&nparallel;":"∦","&nparsl;":"⫽⃥","&npart;":"∂̸","&npolint;":"⨔","&npr;":"⊀","&nprcue;":"⋠","&npre;":"⪯̸","&nprec;":"⊀","&npreceq;":"⪯̸","&nrArr;":"⇏","&nrarr;":"↛","&nrarrc;":"⤳̸","&nrarrw;":"↝̸","&nrightarrow;":"↛","&nrtri;":"⋫","&nrtrie;":"⋭","&nsc;":"⊁","&nsccue;":"⋡","&nsce;":"⪰̸","&nscr;":"𝓃","&nshortmid;":"∤","&nshortparallel;":"∦","&nsim;":"≁","&nsime;":"≄","&nsimeq;":"≄","&nsmid;":"∤","&nspar;":"∦","&nsqsube;":"⋢","&nsqsupe;":"⋣","&nsub;":"⊄","&nsubE;":"⫅̸","&nsube;":"⊈","&nsubset;":"⊂⃒","&nsubseteq;":"⊈","&nsubseteqq;":"⫅̸","&nsucc;":"⊁","&nsucceq;":"⪰̸","&nsup;":"⊅","&nsupE;":"⫆̸","&nsupe;":"⊉","&nsupset;":"⊃⃒","&nsupseteq;":"⊉","&nsupseteqq;":"⫆̸","&ntgl;":"≹","&ntilde":"ñ","&ntilde;":"ñ","&ntlg;":"≸","&ntriangleleft;":"⋪","&ntrianglelefteq;":"⋬","&ntriangleright;":"⋫","&ntrianglerighteq;":"⋭","&nu;":"ν","&num;":"#","&numero;":"№","&numsp;":" ","&nvDash;":"⊭","&nvHarr;":"⤄","&nvap;":"≍⃒","&nvdash;":"⊬","&nvge;":"≥⃒","&nvgt;":">⃒","&nvinfin;":"⧞","&nvlArr;":"⤂","&nvle;":"≤⃒","&nvlt;":"<⃒","&nvltrie;":"⊴⃒","&nvrArr;":"⤃","&nvrtrie;":"⊵⃒","&nvsim;":"∼⃒","&nwArr;":"⇖","&nwarhk;":"⤣","&nwarr;":"↖","&nwarrow;":"↖","&nwnear;":"⤧","&oS;":"Ⓢ","&oacute":"ó","&oacute;":"ó","&oast;":"⊛","&ocir;":"⊚","&ocirc":"ô","&ocirc;":"ô","&ocy;":"о","&odash;":"⊝","&odblac;":"ő","&odiv;":"⨸","&odot;":"⊙","&odsold;":"⦼","&oelig;":"œ","&ofcir;":"⦿","&ofr;":"𝔬","&ogon;":"˛","&ograve":"ò","&ograve;":"ò","&ogt;":"⧁","&ohbar;":"⦵","&ohm;":"Ω","&oint;":"∮","&olarr;":"↺","&olcir;":"⦾","&olcross;":"⦻","&oline;":"‾","&olt;":"⧀","&omacr;":"ō","&omega;":"ω","&omicron;":"ο","&omid;":"⦶","&ominus;":"⊖","&oopf;":"𝕠","&opar;":"⦷","&operp;":"⦹","&oplus;":"⊕","&or;":"∨","&orarr;":"↻","&ord;":"⩝","&order;":"ℴ","&orderof;":"ℴ","&ordf":"ª","&ordf;":"ª","&ordm":"º","&ordm;":"º","&origof;":"⊶","&oror;":"⩖","&orslope;":"⩗","&orv;":"⩛","&oscr;":"ℴ","&oslash":"ø","&oslash;":"ø","&osol;":"⊘","&otilde":"õ","&otilde;":"õ","&otimes;":"⊗","&otimesas;":"⨶","&ouml":"ö","&ouml;":"ö","&ovbar;":"⌽","&par;":"∥","&para":"¶","&para;":"¶","&parallel;":"∥","&parsim;":"⫳","&parsl;":"⫽","&part;":"∂","&pcy;":"п","&percnt;":"%","&period;":".","&permil;":"‰","&perp;":"⊥","&pertenk;":"‱","&pfr;":"𝔭","&phi;":"φ","&phiv;":"ϕ","&phmmat;":"ℳ","&phone;":"☎","&pi;":"π","&pitchfork;":"⋔","&piv;":"ϖ","&planck;":"ℏ","&planckh;":"ℎ","&plankv;":"ℏ","&plus;":"+","&plusacir;":"⨣","&plusb;":"⊞","&pluscir;":"⨢","&plusdo;":"∔","&plusdu;":"⨥","&pluse;":"⩲","&plusmn":"±","&plusmn;":"±","&plussim;":"⨦","&plustwo;":"⨧","&pm;":"±","&pointint;":"⨕","&popf;":"𝕡","&pound":"£","&pound;":"£","&pr;":"≺","&prE;":"⪳","&prap;":"⪷","&prcue;":"≼","&pre;":"⪯","&prec;":"≺","&precapprox;":"⪷","&preccurlyeq;":"≼","&preceq;":"⪯","&precnapprox;":"⪹","&precneqq;":"⪵","&precnsim;":"⋨","&precsim;":"≾","&prime;":"′","&primes;":"ℙ","&prnE;":"⪵","&prnap;":"⪹","&prnsim;":"⋨","&prod;":"∏","&profalar;":"⌮","&profline;":"⌒","&profsurf;":"⌓","&prop;":"∝","&propto;":"∝","&prsim;":"≾","&prurel;":"⊰","&pscr;":"𝓅","&psi;":"ψ","&puncsp;":" ","&qfr;":"𝔮","&qint;":"⨌","&qopf;":"𝕢","&qprime;":"⁗","&qscr;":"𝓆","&quaternions;":"ℍ","&quatint;":"⨖","&quest;":"?","&questeq;":"≟","&quot":'"',"&quot;":'"',"&rAarr;":"⇛","&rArr;":"⇒","&rAtail;":"⤜","&rBarr;":"⤏","&rHar;":"⥤","&race;":"∽̱","&racute;":"ŕ","&radic;":"√","&raemptyv;":"⦳","&rang;":"⟩","&rangd;":"⦒","&range;":"⦥","&rangle;":"⟩","&raquo":"»","&raquo;":"»","&rarr;":"→","&rarrap;":"⥵","&rarrb;":"⇥","&rarrbfs;":"⤠","&rarrc;":"⤳","&rarrfs;":"⤞","&rarrhk;":"↪","&rarrlp;":"↬","&rarrpl;":"⥅","&rarrsim;":"⥴","&rarrtl;":"↣","&rarrw;":"↝","&ratail;":"⤚","&ratio;":"∶","&rationals;":"ℚ","&rbarr;":"⤍","&rbbrk;":"❳","&rbrace;":"}","&rbrack;":"]","&rbrke;":"⦌","&rbrksld;":"⦎","&rbrkslu;":"⦐","&rcaron;":"ř","&rcedil;":"ŗ","&rceil;":"⌉","&rcub;":"}","&rcy;":"р","&rdca;":"⤷","&rdldhar;":"⥩","&rdquo;":"”","&rdquor;":"”","&rdsh;":"↳","&real;":"ℜ","&realine;":"ℛ","&realpart;":"ℜ","&reals;":"ℝ","&rect;":"▭","&reg":"®","&reg;":"®","&rfisht;":"⥽","&rfloor;":"⌋","&rfr;":"𝔯","&rhard;":"⇁","&rharu;":"⇀","&rharul;":"⥬","&rho;":"ρ","&rhov;":"ϱ","&rightarrow;":"→","&rightarrowtail;":"↣","&rightharpoondown;":"⇁","&rightharpoonup;":"⇀","&rightleftarrows;":"⇄","&rightleftharpoons;":"⇌","&rightrightarrows;":"⇉","&rightsquigarrow;":"↝","&rightthreetimes;":"⋌","&ring;":"˚","&risingdotseq;":"≓","&rlarr;":"⇄","&rlhar;":"⇌","&rlm;":"‏","&rmoust;":"⎱","&rmoustache;":"⎱","&rnmid;":"⫮","&roang;":"⟭","&roarr;":"⇾","&robrk;":"⟧","&ropar;":"⦆","&ropf;":"𝕣","&roplus;":"⨮","&rotimes;":"⨵","&rpar;":")","&rpargt;":"⦔","&rppolint;":"⨒","&rrarr;":"⇉","&rsaquo;":"›","&rscr;":"𝓇","&rsh;":"↱","&rsqb;":"]","&rsquo;":"’","&rsquor;":"’","&rthree;":"⋌","&rtimes;":"⋊","&rtri;":"▹","&rtrie;":"⊵","&rtrif;":"▸","&rtriltri;":"⧎","&ruluhar;":"⥨","&rx;":"℞","&sacute;":"ś","&sbquo;":"‚","&sc;":"≻","&scE;":"⪴","&scap;":"⪸","&scaron;":"š","&sccue;":"≽","&sce;":"⪰","&scedil;":"ş","&scirc;":"ŝ","&scnE;":"⪶","&scnap;":"⪺","&scnsim;":"⋩","&scpolint;":"⨓","&scsim;":"≿","&scy;":"с","&sdot;":"⋅","&sdotb;":"⊡","&sdote;":"⩦","&seArr;":"⇘","&searhk;":"⤥","&searr;":"↘","&searrow;":"↘","&sect":"§","&sect;":"§","&semi;":";","&seswar;":"⤩","&setminus;":"∖","&setmn;":"∖","&sext;":"✶","&sfr;":"𝔰","&sfrown;":"⌢","&sharp;":"♯","&shchcy;":"щ","&shcy;":"ш","&shortmid;":"∣","&shortparallel;":"∥","&shy":"­","&shy;":"­","&sigma;":"σ","&sigmaf;":"ς","&sigmav;":"ς","&sim;":"∼","&simdot;":"⩪","&sime;":"≃","&simeq;":"≃","&simg;":"⪞","&simgE;":"⪠","&siml;":"⪝","&simlE;":"⪟","&simne;":"≆","&simplus;":"⨤","&simrarr;":"⥲","&slarr;":"←","&smallsetminus;":"∖","&smashp;":"⨳","&smeparsl;":"⧤","&smid;":"∣","&smile;":"⌣","&smt;":"⪪","&smte;":"⪬","&smtes;":"⪬︀","&softcy;":"ь","&sol;":"/","&solb;":"⧄","&solbar;":"⌿","&sopf;":"𝕤","&spades;":"♠","&spadesuit;":"♠","&spar;":"∥","&sqcap;":"⊓","&sqcaps;":"⊓︀","&sqcup;":"⊔","&sqcups;":"⊔︀","&sqsub;":"⊏","&sqsube;":"⊑","&sqsubset;":"⊏","&sqsubseteq;":"⊑","&sqsup;":"⊐","&sqsupe;":"⊒","&sqsupset;":"⊐","&sqsupseteq;":"⊒","&squ;":"□","&square;":"□","&squarf;":"▪","&squf;":"▪","&srarr;":"→","&sscr;":"𝓈","&ssetmn;":"∖","&ssmile;":"⌣","&sstarf;":"⋆","&star;":"☆","&starf;":"★","&straightepsilon;":"ϵ","&straightphi;":"ϕ","&strns;":"¯","&sub;":"⊂","&subE;":"⫅","&subdot;":"⪽","&sube;":"⊆","&subedot;":"⫃","&submult;":"⫁","&subnE;":"⫋","&subne;":"⊊","&subplus;":"⪿","&subrarr;":"⥹","&subset;":"⊂","&subseteq;":"⊆","&subseteqq;":"⫅","&subsetneq;":"⊊","&subsetneqq;":"⫋","&subsim;":"⫇","&subsub;":"⫕","&subsup;":"⫓","&succ;":"≻","&succapprox;":"⪸","&succcurlyeq;":"≽","&succeq;":"⪰","&succnapprox;":"⪺","&succneqq;":"⪶","&succnsim;":"⋩","&succsim;":"≿","&sum;":"∑","&sung;":"♪","&sup1":"¹","&sup1;":"¹","&sup2":"²","&sup2;":"²","&sup3":"³","&sup3;":"³","&sup;":"⊃","&supE;":"⫆","&supdot;":"⪾","&supdsub;":"⫘","&supe;":"⊇","&supedot;":"⫄","&suphsol;":"⟉","&suphsub;":"⫗","&suplarr;":"⥻","&supmult;":"⫂","&supnE;":"⫌","&supne;":"⊋","&supplus;":"⫀","&supset;":"⊃","&supseteq;":"⊇","&supseteqq;":"⫆","&supsetneq;":"⊋","&supsetneqq;":"⫌","&supsim;":"⫈","&supsub;":"⫔","&supsup;":"⫖","&swArr;":"⇙","&swarhk;":"⤦","&swarr;":"↙","&swarrow;":"↙","&swnwar;":"⤪","&szlig":"ß","&szlig;":"ß","&target;":"⌖","&tau;":"τ","&tbrk;":"⎴","&tcaron;":"ť","&tcedil;":"ţ","&tcy;":"т","&tdot;":"⃛","&telrec;":"⌕","&tfr;":"𝔱","&there4;":"∴","&therefore;":"∴","&theta;":"θ","&thetasym;":"ϑ","&thetav;":"ϑ","&thickapprox;":"≈","&thicksim;":"∼","&thinsp;":" ","&thkap;":"≈","&thksim;":"∼","&thorn":"þ","&thorn;":"þ","&tilde;":"˜","&times":"×","&times;":"×","&timesb;":"⊠","&timesbar;":"⨱","&timesd;":"⨰","&tint;":"∭","&toea;":"⤨","&top;":"⊤","&topbot;":"⌶","&topcir;":"⫱","&topf;":"𝕥","&topfork;":"⫚","&tosa;":"⤩","&tprime;":"‴","&trade;":"™","&triangle;":"▵","&triangledown;":"▿","&triangleleft;":"◃","&trianglelefteq;":"⊴","&triangleq;":"≜","&triangleright;":"▹","&trianglerighteq;":"⊵","&tridot;":"◬","&trie;":"≜","&triminus;":"⨺","&triplus;":"⨹","&trisb;":"⧍","&tritime;":"⨻","&trpezium;":"⏢","&tscr;":"𝓉","&tscy;":"ц","&tshcy;":"ћ","&tstrok;":"ŧ","&twixt;":"≬","&twoheadleftarrow;":"↞","&twoheadrightarrow;":"↠","&uArr;":"⇑","&uHar;":"⥣","&uacute":"ú","&uacute;":"ú","&uarr;":"↑","&ubrcy;":"ў","&ubreve;":"ŭ","&ucirc":"û","&ucirc;":"û","&ucy;":"у","&udarr;":"⇅","&udblac;":"ű","&udhar;":"⥮","&ufisht;":"⥾","&ufr;":"𝔲","&ugrave":"ù","&ugrave;":"ù","&uharl;":"↿","&uharr;":"↾","&uhblk;":"▀","&ulcorn;":"⌜","&ulcorner;":"⌜","&ulcrop;":"⌏","&ultri;":"◸","&umacr;":"ū","&uml":"¨","&uml;":"¨","&uogon;":"ų","&uopf;":"𝕦","&uparrow;":"↑","&updownarrow;":"↕","&upharpoonleft;":"↿","&upharpoonright;":"↾","&uplus;":"⊎","&upsi;":"υ","&upsih;":"ϒ","&upsilon;":"υ","&upuparrows;":"⇈","&urcorn;":"⌝","&urcorner;":"⌝","&urcrop;":"⌎","&uring;":"ů","&urtri;":"◹","&uscr;":"𝓊","&utdot;":"⋰","&utilde;":"ũ","&utri;":"▵","&utrif;":"▴","&uuarr;":"⇈","&uuml":"ü","&uuml;":"ü","&uwangle;":"⦧","&vArr;":"⇕","&vBar;":"⫨","&vBarv;":"⫩","&vDash;":"⊨","&vangrt;":"⦜","&varepsilon;":"ϵ","&varkappa;":"ϰ","&varnothing;":"∅","&varphi;":"ϕ","&varpi;":"ϖ","&varpropto;":"∝","&varr;":"↕","&varrho;":"ϱ","&varsigma;":"ς","&varsubsetneq;":"⊊︀","&varsubsetneqq;":"⫋︀","&varsupsetneq;":"⊋︀","&varsupsetneqq;":"⫌︀","&vartheta;":"ϑ","&vartriangleleft;":"⊲","&vartriangleright;":"⊳","&vcy;":"в","&vdash;":"⊢","&vee;":"∨","&veebar;":"⊻","&veeeq;":"≚","&vellip;":"⋮","&verbar;":"|","&vert;":"|","&vfr;":"𝔳","&vltri;":"⊲","&vnsub;":"⊂⃒","&vnsup;":"⊃⃒","&vopf;":"𝕧","&vprop;":"∝","&vrtri;":"⊳","&vscr;":"𝓋","&vsubnE;":"⫋︀","&vsubne;":"⊊︀","&vsupnE;":"⫌︀","&vsupne;":"⊋︀","&vzigzag;":"⦚","&wcirc;":"ŵ","&wedbar;":"⩟","&wedge;":"∧","&wedgeq;":"≙","&weierp;":"℘","&wfr;":"𝔴","&wopf;":"𝕨","&wp;":"℘","&wr;":"≀","&wreath;":"≀","&wscr;":"𝓌","&xcap;":"⋂","&xcirc;":"◯","&xcup;":"⋃","&xdtri;":"▽","&xfr;":"𝔵","&xhArr;":"⟺","&xharr;":"⟷","&xi;":"ξ","&xlArr;":"⟸","&xlarr;":"⟵","&xmap;":"⟼","&xnis;":"⋻","&xodot;":"⨀","&xopf;":"𝕩","&xoplus;":"⨁","&xotime;":"⨂","&xrArr;":"⟹","&xrarr;":"⟶","&xscr;":"𝓍","&xsqcup;":"⨆","&xuplus;":"⨄","&xutri;":"△","&xvee;":"⋁","&xwedge;":"⋀","&yacute":"ý","&yacute;":"ý","&yacy;":"я","&ycirc;":"ŷ","&ycy;":"ы","&yen":"¥","&yen;":"¥","&yfr;":"𝔶","&yicy;":"ї","&yopf;":"𝕪","&yscr;":"𝓎","&yucy;":"ю","&yuml":"ÿ","&yuml;":"ÿ","&zacute;":"ź","&zcaron;":"ž","&zcy;":"з","&zdot;":"ż","&zeetrf;":"ℨ","&zeta;":"ζ","&zfr;":"𝔷","&zhcy;":"ж","&zigrarr;":"⇝","&zopf;":"𝕫","&zscr;":"𝓏","&zwj;":"‍","&zwnj;":"‌"},characters:{"Æ":"&AElig;","&":"&amp;","Á":"&Aacute;","Ă":"&Abreve;","Â":"&Acirc;","А":"&Acy;","𝔄":"&Afr;","À":"&Agrave;","Α":"&Alpha;","Ā":"&Amacr;","⩓":"&And;","Ą":"&Aogon;","𝔸":"&Aopf;","⁡":"&af;","Å":"&angst;","𝒜":"&Ascr;","≔":"&coloneq;","Ã":"&Atilde;","Ä":"&Auml;","∖":"&ssetmn;","⫧":"&Barv;","⌆":"&doublebarwedge;","Б":"&Bcy;","∵":"&because;","ℬ":"&bernou;","Β":"&Beta;","𝔅":"&Bfr;","𝔹":"&Bopf;","˘":"&breve;","≎":"&bump;","Ч":"&CHcy;","©":"&copy;","Ć":"&Cacute;","⋒":"&Cap;","ⅅ":"&DD;","ℭ":"&Cfr;","Č":"&Ccaron;","Ç":"&Ccedil;","Ĉ":"&Ccirc;","∰":"&Cconint;","Ċ":"&Cdot;","¸":"&cedil;","·":"&middot;","Χ":"&Chi;","⊙":"&odot;","⊖":"&ominus;","⊕":"&oplus;","⊗":"&otimes;","∲":"&cwconint;","”":"&rdquor;","’":"&rsquor;","∷":"&Proportion;","⩴":"&Colone;","≡":"&equiv;","∯":"&DoubleContourIntegral;","∮":"&oint;","ℂ":"&complexes;","∐":"&coprod;","∳":"&awconint;","⨯":"&Cross;","𝒞":"&Cscr;","⋓":"&Cup;","≍":"&asympeq;","⤑":"&DDotrahd;","Ђ":"&DJcy;","Ѕ":"&DScy;","Џ":"&DZcy;","‡":"&ddagger;","↡":"&Darr;","⫤":"&DoubleLeftTee;","Ď":"&Dcaron;","Д":"&Dcy;","∇":"&nabla;","Δ":"&Delta;","𝔇":"&Dfr;","´":"&acute;","˙":"&dot;","˝":"&dblac;","`":"&grave;","˜":"&tilde;","⋄":"&diamond;","ⅆ":"&dd;","𝔻":"&Dopf;","¨":"&uml;","⃜":"&DotDot;","≐":"&esdot;","⇓":"&dArr;","⇐":"&lArr;","⇔":"&iff;","⟸":"&xlArr;","⟺":"&xhArr;","⟹":"&xrArr;","⇒":"&rArr;","⊨":"&vDash;","⇑":"&uArr;","⇕":"&vArr;","∥":"&spar;","↓":"&downarrow;","⤓":"&DownArrowBar;","⇵":"&duarr;","̑":"&DownBreve;","⥐":"&DownLeftRightVector;","⥞":"&DownLeftTeeVector;","↽":"&lhard;","⥖":"&DownLeftVectorBar;","⥟":"&DownRightTeeVector;","⇁":"&rightharpoondown;","⥗":"&DownRightVectorBar;","⊤":"&top;","↧":"&mapstodown;","𝒟":"&Dscr;","Đ":"&Dstrok;","Ŋ":"&ENG;","Ð":"&ETH;","É":"&Eacute;","Ě":"&Ecaron;","Ê":"&Ecirc;","Э":"&Ecy;","Ė":"&Edot;","𝔈":"&Efr;","È":"&Egrave;","∈":"&isinv;","Ē":"&Emacr;","◻":"&EmptySmallSquare;","▫":"&EmptyVerySmallSquare;","Ę":"&Eogon;","𝔼":"&Eopf;","Ε":"&Epsilon;","⩵":"&Equal;","≂":"&esim;","⇌":"&rlhar;","ℰ":"&expectation;","⩳":"&Esim;","Η":"&Eta;","Ë":"&Euml;","∃":"&exist;","ⅇ":"&exponentiale;","Ф":"&Fcy;","𝔉":"&Ffr;","◼":"&FilledSmallSquare;","▪":"&squf;","𝔽":"&Fopf;","∀":"&forall;","ℱ":"&Fscr;","Ѓ":"&GJcy;",">":"&gt;","Γ":"&Gamma;","Ϝ":"&Gammad;","Ğ":"&Gbreve;","Ģ":"&Gcedil;","Ĝ":"&Gcirc;","Г":"&Gcy;","Ġ":"&Gdot;","𝔊":"&Gfr;","⋙":"&ggg;","𝔾":"&Gopf;","≥":"&geq;","⋛":"&gtreqless;","≧":"&geqq;","⪢":"&GreaterGreater;","≷":"&gtrless;","⩾":"&ges;","≳":"&gtrsim;","𝒢":"&Gscr;","≫":"&gg;","Ъ":"&HARDcy;","ˇ":"&caron;","^":"&Hat;","Ĥ":"&Hcirc;","ℌ":"&Poincareplane;","ℋ":"&hamilt;","ℍ":"&quaternions;","─":"&boxh;","Ħ":"&Hstrok;","≏":"&bumpeq;","Е":"&IEcy;","IJ":"&IJlig;","Ё":"&IOcy;","Í":"&Iacute;","Î":"&Icirc;","И":"&Icy;","İ":"&Idot;","ℑ":"&imagpart;","Ì":"&Igrave;","Ī":"&Imacr;","ⅈ":"&ii;","∬":"&Int;","∫":"&int;","⋂":"&xcap;","⁣":"&ic;","⁢":"&it;","Į":"&Iogon;","𝕀":"&Iopf;","Ι":"&Iota;","ℐ":"&imagline;","Ĩ":"&Itilde;","І":"&Iukcy;","Ï":"&Iuml;","Ĵ":"&Jcirc;","Й":"&Jcy;","𝔍":"&Jfr;","𝕁":"&Jopf;","𝒥":"&Jscr;","Ј":"&Jsercy;","Є":"&Jukcy;","Х":"&KHcy;","Ќ":"&KJcy;","Κ":"&Kappa;","Ķ":"&Kcedil;","К":"&Kcy;","𝔎":"&Kfr;","𝕂":"&Kopf;","𝒦":"&Kscr;","Љ":"&LJcy;","<":"&lt;","Ĺ":"&Lacute;","Λ":"&Lambda;","⟪":"&Lang;","ℒ":"&lagran;","↞":"&twoheadleftarrow;","Ľ":"&Lcaron;","Ļ":"&Lcedil;","Л":"&Lcy;","⟨":"&langle;","←":"&slarr;","⇤":"&larrb;","⇆":"&lrarr;","⌈":"&lceil;","⟦":"&lobrk;","⥡":"&LeftDownTeeVector;","⇃":"&downharpoonleft;","⥙":"&LeftDownVectorBar;","⌊":"&lfloor;","↔":"&leftrightarrow;","⥎":"&LeftRightVector;","⊣":"&dashv;","↤":"&mapstoleft;","⥚":"&LeftTeeVector;","⊲":"&vltri;","⧏":"&LeftTriangleBar;","⊴":"&trianglelefteq;","⥑":"&LeftUpDownVector;","⥠":"&LeftUpTeeVector;","↿":"&upharpoonleft;","⥘":"&LeftUpVectorBar;","↼":"&lharu;","⥒":"&LeftVectorBar;","⋚":"&lesseqgtr;","≦":"&leqq;","≶":"&lg;","⪡":"&LessLess;","⩽":"&les;","≲":"&lsim;","𝔏":"&Lfr;","⋘":"&Ll;","⇚":"&lAarr;","Ŀ":"&Lmidot;","⟵":"&xlarr;","⟷":"&xharr;","⟶":"&xrarr;","𝕃":"&Lopf;","↙":"&swarrow;","↘":"&searrow;","↰":"&lsh;","Ł":"&Lstrok;","≪":"&ll;","⤅":"&Map;","М":"&Mcy;"," ":"&MediumSpace;","ℳ":"&phmmat;","𝔐":"&Mfr;","∓":"&mp;","𝕄":"&Mopf;","Μ":"&Mu;","Њ":"&NJcy;","Ń":"&Nacute;","Ň":"&Ncaron;","Ņ":"&Ncedil;","Н":"&Ncy;","​":"&ZeroWidthSpace;","\n":"&NewLine;","𝔑":"&Nfr;","⁠":"&NoBreak;"," ":"&nbsp;","ℕ":"&naturals;","⫬":"&Not;","≢":"&nequiv;","≭":"&NotCupCap;","∦":"&nspar;","∉":"&notinva;","≠":"&ne;","≂̸":"&nesim;","∄":"&nexists;","≯":"&ngtr;","≱":"&ngeq;","≧̸":"&ngeqq;","≫̸":"&nGtv;","≹":"&ntgl;","⩾̸":"&nges;","≵":"&ngsim;","≎̸":"&nbump;","≏̸":"&nbumpe;","⋪":"&ntriangleleft;","⧏̸":"&NotLeftTriangleBar;","⋬":"&ntrianglelefteq;","≮":"&nlt;","≰":"&nleq;","≸":"&ntlg;","≪̸":"&nLtv;","⩽̸":"&nles;","≴":"&nlsim;","⪢̸":"&NotNestedGreaterGreater;","⪡̸":"&NotNestedLessLess;","⊀":"&nprec;","⪯̸":"&npreceq;","⋠":"&nprcue;","∌":"&notniva;","⋫":"&ntriangleright;","⧐̸":"&NotRightTriangleBar;","⋭":"&ntrianglerighteq;","⊏̸":"&NotSquareSubset;","⋢":"&nsqsube;","⊐̸":"&NotSquareSuperset;","⋣":"&nsqsupe;","⊂⃒":"&vnsub;","⊈":"&nsubseteq;","⊁":"&nsucc;","⪰̸":"&nsucceq;","⋡":"&nsccue;","≿̸":"&NotSucceedsTilde;","⊃⃒":"&vnsup;","⊉":"&nsupseteq;","≁":"&nsim;","≄":"&nsimeq;","≇":"&ncong;","≉":"&napprox;","∤":"&nsmid;","𝒩":"&Nscr;","Ñ":"&Ntilde;","Ν":"&Nu;","Œ":"&OElig;","Ó":"&Oacute;","Ô":"&Ocirc;","О":"&Ocy;","Ő":"&Odblac;","𝔒":"&Ofr;","Ò":"&Ograve;","Ō":"&Omacr;","Ω":"&ohm;","Ο":"&Omicron;","𝕆":"&Oopf;","“":"&ldquo;","‘":"&lsquo;","⩔":"&Or;","𝒪":"&Oscr;","Ø":"&Oslash;","Õ":"&Otilde;","⨷":"&Otimes;","Ö":"&Ouml;","‾":"&oline;","⏞":"&OverBrace;","⎴":"&tbrk;","⏜":"&OverParenthesis;","∂":"&part;","П":"&Pcy;","𝔓":"&Pfr;","Φ":"&Phi;","Π":"&Pi;","±":"&pm;","ℙ":"&primes;","⪻":"&Pr;","≺":"&prec;","⪯":"&preceq;","≼":"&preccurlyeq;","≾":"&prsim;","″":"&Prime;","∏":"&prod;","∝":"&vprop;","𝒫":"&Pscr;","Ψ":"&Psi;",'"':"&quot;","𝔔":"&Qfr;","ℚ":"&rationals;","𝒬":"&Qscr;","⤐":"&drbkarow;","®":"&reg;","Ŕ":"&Racute;","⟫":"&Rang;","↠":"&twoheadrightarrow;","⤖":"&Rarrtl;","Ř":"&Rcaron;","Ŗ":"&Rcedil;","Р":"&Rcy;","ℜ":"&realpart;","∋":"&niv;","⇋":"&lrhar;","⥯":"&duhar;","Ρ":"&Rho;","⟩":"&rangle;","→":"&srarr;","⇥":"&rarrb;","⇄":"&rlarr;","⌉":"&rceil;","⟧":"&robrk;","⥝":"&RightDownTeeVector;","⇂":"&downharpoonright;","⥕":"&RightDownVectorBar;","⌋":"&rfloor;","⊢":"&vdash;","↦":"&mapsto;","⥛":"&RightTeeVector;","⊳":"&vrtri;","⧐":"&RightTriangleBar;","⊵":"&trianglerighteq;","⥏":"&RightUpDownVector;","⥜":"&RightUpTeeVector;","↾":"&upharpoonright;","⥔":"&RightUpVectorBar;","⇀":"&rightharpoonup;","⥓":"&RightVectorBar;","ℝ":"&reals;","⥰":"&RoundImplies;","⇛":"&rAarr;","ℛ":"&realine;","↱":"&rsh;","⧴":"&RuleDelayed;","Щ":"&SHCHcy;","Ш":"&SHcy;","Ь":"&SOFTcy;","Ś":"&Sacute;","⪼":"&Sc;","Š":"&Scaron;","Ş":"&Scedil;","Ŝ":"&Scirc;","С":"&Scy;","𝔖":"&Sfr;","↑":"&uparrow;","Σ":"&Sigma;","∘":"&compfn;","𝕊":"&Sopf;","√":"&radic;","□":"&square;","⊓":"&sqcap;","⊏":"&sqsubset;","⊑":"&sqsubseteq;","⊐":"&sqsupset;","⊒":"&sqsupseteq;","⊔":"&sqcup;","𝒮":"&Sscr;","⋆":"&sstarf;","⋐":"&Subset;","⊆":"&subseteq;","≻":"&succ;","⪰":"&succeq;","≽":"&succcurlyeq;","≿":"&succsim;","∑":"&sum;","⋑":"&Supset;","⊃":"&supset;","⊇":"&supseteq;","Þ":"&THORN;","™":"&trade;","Ћ":"&TSHcy;","Ц":"&TScy;","\t":"&Tab;","Τ":"&Tau;","Ť":"&Tcaron;","Ţ":"&Tcedil;","Т":"&Tcy;","𝔗":"&Tfr;","∴":"&therefore;","Θ":"&Theta;","  ":"&ThickSpace;"," ":"&thinsp;","∼":"&thksim;","≃":"&simeq;","≅":"&cong;","≈":"&thkap;","𝕋":"&Topf;","⃛":"&tdot;","𝒯":"&Tscr;","Ŧ":"&Tstrok;","Ú":"&Uacute;","↟":"&Uarr;","⥉":"&Uarrocir;","Ў":"&Ubrcy;","Ŭ":"&Ubreve;","Û":"&Ucirc;","У":"&Ucy;","Ű":"&Udblac;","𝔘":"&Ufr;","Ù":"&Ugrave;","Ū":"&Umacr;",_:"&lowbar;","⏟":"&UnderBrace;","⎵":"&bbrk;","⏝":"&UnderParenthesis;","⋃":"&xcup;","⊎":"&uplus;","Ų":"&Uogon;","𝕌":"&Uopf;","⤒":"&UpArrowBar;","⇅":"&udarr;","↕":"&varr;","⥮":"&udhar;","⊥":"&perp;","↥":"&mapstoup;","↖":"&nwarrow;","↗":"&nearrow;","ϒ":"&upsih;","Υ":"&Upsilon;","Ů":"&Uring;","𝒰":"&Uscr;","Ũ":"&Utilde;","Ü":"&Uuml;","⊫":"&VDash;","⫫":"&Vbar;","В":"&Vcy;","⊩":"&Vdash;","⫦":"&Vdashl;","⋁":"&xvee;","‖":"&Vert;","∣":"&smid;","|":"&vert;","❘":"&VerticalSeparator;","≀":"&wreath;"," ":"&hairsp;","𝔙":"&Vfr;","𝕍":"&Vopf;","𝒱":"&Vscr;","⊪":"&Vvdash;","Ŵ":"&Wcirc;","⋀":"&xwedge;","𝔚":"&Wfr;","𝕎":"&Wopf;","𝒲":"&Wscr;","𝔛":"&Xfr;","Ξ":"&Xi;","𝕏":"&Xopf;","𝒳":"&Xscr;","Я":"&YAcy;","Ї":"&YIcy;","Ю":"&YUcy;","Ý":"&Yacute;","Ŷ":"&Ycirc;","Ы":"&Ycy;","𝔜":"&Yfr;","𝕐":"&Yopf;","𝒴":"&Yscr;","Ÿ":"&Yuml;","Ж":"&ZHcy;","Ź":"&Zacute;","Ž":"&Zcaron;","З":"&Zcy;","Ż":"&Zdot;","Ζ":"&Zeta;","ℨ":"&zeetrf;","ℤ":"&integers;","𝒵":"&Zscr;","á":"&aacute;","ă":"&abreve;","∾":"&mstpos;","∾̳":"&acE;","∿":"&acd;","â":"&acirc;","а":"&acy;","æ":"&aelig;","𝔞":"&afr;","à":"&agrave;","ℵ":"&aleph;","α":"&alpha;","ā":"&amacr;","⨿":"&amalg;","∧":"&wedge;","⩕":"&andand;","⩜":"&andd;","⩘":"&andslope;","⩚":"&andv;","∠":"&angle;","⦤":"&ange;","∡":"&measuredangle;","⦨":"&angmsdaa;","⦩":"&angmsdab;","⦪":"&angmsdac;","⦫":"&angmsdad;","⦬":"&angmsdae;","⦭":"&angmsdaf;","⦮":"&angmsdag;","⦯":"&angmsdah;","∟":"&angrt;","⊾":"&angrtvb;","⦝":"&angrtvbd;","∢":"&angsph;","⍼":"&angzarr;","ą":"&aogon;","𝕒":"&aopf;","⩰":"&apE;","⩯":"&apacir;","≊":"&approxeq;","≋":"&apid;","'":"&apos;","å":"&aring;","𝒶":"&ascr;","*":"&midast;","ã":"&atilde;","ä":"&auml;","⨑":"&awint;","⫭":"&bNot;","≌":"&bcong;","϶":"&bepsi;","‵":"&bprime;","∽":"&bsim;","⋍":"&bsime;","⊽":"&barvee;","⌅":"&barwedge;","⎶":"&bbrktbrk;","б":"&bcy;","„":"&ldquor;","⦰":"&bemptyv;","β":"&beta;","ℶ":"&beth;","≬":"&twixt;","𝔟":"&bfr;","◯":"&xcirc;","⨀":"&xodot;","⨁":"&xoplus;","⨂":"&xotime;","⨆":"&xsqcup;","★":"&starf;","▽":"&xdtri;","△":"&xutri;","⨄":"&xuplus;","⤍":"&rbarr;","⧫":"&lozf;","▴":"&utrif;","▾":"&dtrif;","◂":"&ltrif;","▸":"&rtrif;","␣":"&blank;","▒":"&blk12;","░":"&blk14;","▓":"&blk34;","█":"&block;","=⃥":"&bne;","≡⃥":"&bnequiv;","⌐":"&bnot;","𝕓":"&bopf;","⋈":"&bowtie;","╗":"&boxDL;","╔":"&boxDR;","╖":"&boxDl;","╓":"&boxDr;","═":"&boxH;","╦":"&boxHD;","╩":"&boxHU;","╤":"&boxHd;","╧":"&boxHu;","╝":"&boxUL;","╚":"&boxUR;","╜":"&boxUl;","╙":"&boxUr;","║":"&boxV;","╬":"&boxVH;","╣":"&boxVL;","╠":"&boxVR;","╫":"&boxVh;","╢":"&boxVl;","╟":"&boxVr;","⧉":"&boxbox;","╕":"&boxdL;","╒":"&boxdR;","┐":"&boxdl;","┌":"&boxdr;","╥":"&boxhD;","╨":"&boxhU;","┬":"&boxhd;","┴":"&boxhu;","⊟":"&minusb;","⊞":"&plusb;","⊠":"&timesb;","╛":"&boxuL;","╘":"&boxuR;","┘":"&boxul;","└":"&boxur;","│":"&boxv;","╪":"&boxvH;","╡":"&boxvL;","╞":"&boxvR;","┼":"&boxvh;","┤":"&boxvl;","├":"&boxvr;","¦":"&brvbar;","𝒷":"&bscr;","⁏":"&bsemi;","\\":"&bsol;","⧅":"&bsolb;","⟈":"&bsolhsub;","•":"&bullet;","⪮":"&bumpE;","ć":"&cacute;","∩":"&cap;","⩄":"&capand;","⩉":"&capbrcup;","⩋":"&capcap;","⩇":"&capcup;","⩀":"&capdot;","∩︀":"&caps;","⁁":"&caret;","⩍":"&ccaps;","č":"&ccaron;","ç":"&ccedil;","ĉ":"&ccirc;","⩌":"&ccups;","⩐":"&ccupssm;","ċ":"&cdot;","⦲":"&cemptyv;","¢":"&cent;","𝔠":"&cfr;","ч":"&chcy;","✓":"&checkmark;","χ":"&chi;","○":"&cir;","⧃":"&cirE;","ˆ":"&circ;","≗":"&cire;","↺":"&olarr;","↻":"&orarr;","Ⓢ":"&oS;","⊛":"&oast;","⊚":"&ocir;","⊝":"&odash;","⨐":"&cirfnint;","⫯":"&cirmid;","⧂":"&cirscir;","♣":"&clubsuit;",":":"&colon;",",":"&comma;","@":"&commat;","∁":"&complement;","⩭":"&congdot;","𝕔":"&copf;","℗":"&copysr;","↵":"&crarr;","✗":"&cross;","𝒸":"&cscr;","⫏":"&csub;","⫑":"&csube;","⫐":"&csup;","⫒":"&csupe;","⋯":"&ctdot;","⤸":"&cudarrl;","⤵":"&cudarrr;","⋞":"&curlyeqprec;","⋟":"&curlyeqsucc;","↶":"&curvearrowleft;","⤽":"&cularrp;","∪":"&cup;","⩈":"&cupbrcap;","⩆":"&cupcap;","⩊":"&cupcup;","⊍":"&cupdot;","⩅":"&cupor;","∪︀":"&cups;","↷":"&curvearrowright;","⤼":"&curarrm;","⋎":"&cuvee;","⋏":"&cuwed;","¤":"&curren;","∱":"&cwint;","⌭":"&cylcty;","⥥":"&dHar;","†":"&dagger;","ℸ":"&daleth;","‐":"&hyphen;","⤏":"&rBarr;","ď":"&dcaron;","д":"&dcy;","⇊":"&downdownarrows;","⩷":"&eDDot;","°":"&deg;","δ":"&delta;","⦱":"&demptyv;","⥿":"&dfisht;","𝔡":"&dfr;","♦":"&diams;","ϝ":"&gammad;","⋲":"&disin;","÷":"&divide;","⋇":"&divonx;","ђ":"&djcy;","⌞":"&llcorner;","⌍":"&dlcrop;",$:"&dollar;","𝕕":"&dopf;","≑":"&eDot;","∸":"&minusd;","∔":"&plusdo;","⊡":"&sdotb;","⌟":"&lrcorner;","⌌":"&drcrop;","𝒹":"&dscr;","ѕ":"&dscy;","⧶":"&dsol;","đ":"&dstrok;","⋱":"&dtdot;","▿":"&triangledown;","⦦":"&dwangle;","џ":"&dzcy;","⟿":"&dzigrarr;","é":"&eacute;","⩮":"&easter;","ě":"&ecaron;","≖":"&eqcirc;","ê":"&ecirc;","≕":"&eqcolon;","э":"&ecy;","ė":"&edot;","≒":"&fallingdotseq;","𝔢":"&efr;","⪚":"&eg;","è":"&egrave;","⪖":"&eqslantgtr;","⪘":"&egsdot;","⪙":"&el;","⏧":"&elinters;","ℓ":"&ell;","⪕":"&eqslantless;","⪗":"&elsdot;","ē":"&emacr;","∅":"&varnothing;"," ":"&emsp13;"," ":"&emsp14;"," ":"&emsp;","ŋ":"&eng;"," ":"&ensp;","ę":"&eogon;","𝕖":"&eopf;","⋕":"&epar;","⧣":"&eparsl;","⩱":"&eplus;","ε":"&epsilon;","ϵ":"&varepsilon;","=":"&equals;","≟":"&questeq;","⩸":"&equivDD;","⧥":"&eqvparsl;","≓":"&risingdotseq;","⥱":"&erarr;","ℯ":"&escr;","η":"&eta;","ð":"&eth;","ë":"&euml;","€":"&euro;","!":"&excl;","ф":"&fcy;","♀":"&female;","ffi":"&ffilig;","ff":"&fflig;","ffl":"&ffllig;","𝔣":"&ffr;","fi":"&filig;",fj:"&fjlig;","♭":"&flat;","fl":"&fllig;","▱":"&fltns;","ƒ":"&fnof;","𝕗":"&fopf;","⋔":"&pitchfork;","⫙":"&forkv;","⨍":"&fpartint;","½":"&half;","⅓":"&frac13;","¼":"&frac14;","⅕":"&frac15;","⅙":"&frac16;","⅛":"&frac18;","⅔":"&frac23;","⅖":"&frac25;","¾":"&frac34;","⅗":"&frac35;","⅜":"&frac38;","⅘":"&frac45;","⅚":"&frac56;","⅝":"&frac58;","⅞":"&frac78;","⁄":"&frasl;","⌢":"&sfrown;","𝒻":"&fscr;","⪌":"&gtreqqless;","ǵ":"&gacute;","γ":"&gamma;","⪆":"&gtrapprox;","ğ":"&gbreve;","ĝ":"&gcirc;","г":"&gcy;","ġ":"&gdot;","⪩":"&gescc;","⪀":"&gesdot;","⪂":"&gesdoto;","⪄":"&gesdotol;","⋛︀":"&gesl;","⪔":"&gesles;","𝔤":"&gfr;","ℷ":"&gimel;","ѓ":"&gjcy;","⪒":"&glE;","⪥":"&gla;","⪤":"&glj;","≩":"&gneqq;","⪊":"&gnapprox;","⪈":"&gneq;","⋧":"&gnsim;","𝕘":"&gopf;","ℊ":"&gscr;","⪎":"&gsime;","⪐":"&gsiml;","⪧":"&gtcc;","⩺":"&gtcir;","⋗":"&gtrdot;","⦕":"&gtlPar;","⩼":"&gtquest;","⥸":"&gtrarr;","≩︀":"&gvnE;","ъ":"&hardcy;","⥈":"&harrcir;","↭":"&leftrightsquigarrow;","ℏ":"&plankv;","ĥ":"&hcirc;","♥":"&heartsuit;","…":"&mldr;","⊹":"&hercon;","𝔥":"&hfr;","⤥":"&searhk;","⤦":"&swarhk;","⇿":"&hoarr;","∻":"&homtht;","↩":"&larrhk;","↪":"&rarrhk;","𝕙":"&hopf;","―":"&horbar;","𝒽":"&hscr;","ħ":"&hstrok;","⁃":"&hybull;","í":"&iacute;","î":"&icirc;","и":"&icy;","е":"&iecy;","¡":"&iexcl;","𝔦":"&ifr;","ì":"&igrave;","⨌":"&qint;","∭":"&tint;","⧜":"&iinfin;","℩":"&iiota;","ij":"&ijlig;","ī":"&imacr;","ı":"&inodot;","⊷":"&imof;","Ƶ":"&imped;","℅":"&incare;","∞":"&infin;","⧝":"&infintie;","⊺":"&intercal;","⨗":"&intlarhk;","⨼":"&iprod;","ё":"&iocy;","į":"&iogon;","𝕚":"&iopf;","ι":"&iota;","¿":"&iquest;","𝒾":"&iscr;","⋹":"&isinE;","⋵":"&isindot;","⋴":"&isins;","⋳":"&isinsv;","ĩ":"&itilde;","і":"&iukcy;","ï":"&iuml;","ĵ":"&jcirc;","й":"&jcy;","𝔧":"&jfr;","ȷ":"&jmath;","𝕛":"&jopf;","𝒿":"&jscr;","ј":"&jsercy;","є":"&jukcy;","κ":"&kappa;","ϰ":"&varkappa;","ķ":"&kcedil;","к":"&kcy;","𝔨":"&kfr;","ĸ":"&kgreen;","х":"&khcy;","ќ":"&kjcy;","𝕜":"&kopf;","𝓀":"&kscr;","⤛":"&lAtail;","⤎":"&lBarr;","⪋":"&lesseqqgtr;","⥢":"&lHar;","ĺ":"&lacute;","⦴":"&laemptyv;","λ":"&lambda;","⦑":"&langd;","⪅":"&lessapprox;","«":"&laquo;","⤟":"&larrbfs;","⤝":"&larrfs;","↫":"&looparrowleft;","⤹":"&larrpl;","⥳":"&larrsim;","↢":"&leftarrowtail;","⪫":"&lat;","⤙":"&latail;","⪭":"&late;","⪭︀":"&lates;","⤌":"&lbarr;","❲":"&lbbrk;","{":"&lcub;","[":"&lsqb;","⦋":"&lbrke;","⦏":"&lbrksld;","⦍":"&lbrkslu;","ľ":"&lcaron;","ļ":"&lcedil;","л":"&lcy;","⤶":"&ldca;","⥧":"&ldrdhar;","⥋":"&ldrushar;","↲":"&ldsh;","≤":"&leq;","⇇":"&llarr;","⋋":"&lthree;","⪨":"&lescc;","⩿":"&lesdot;","⪁":"&lesdoto;","⪃":"&lesdotor;","⋚︀":"&lesg;","⪓":"&lesges;","⋖":"&ltdot;","⥼":"&lfisht;","𝔩":"&lfr;","⪑":"&lgE;","⥪":"&lharul;","▄":"&lhblk;","љ":"&ljcy;","⥫":"&llhard;","◺":"&lltri;","ŀ":"&lmidot;","⎰":"&lmoustache;","≨":"&lneqq;","⪉":"&lnapprox;","⪇":"&lneq;","⋦":"&lnsim;","⟬":"&loang;","⇽":"&loarr;","⟼":"&xmap;","↬":"&rarrlp;","⦅":"&lopar;","𝕝":"&lopf;","⨭":"&loplus;","⨴":"&lotimes;","∗":"&lowast;","◊":"&lozenge;","(":"&lpar;","⦓":"&lparlt;","⥭":"&lrhard;","‎":"&lrm;","⊿":"&lrtri;","‹":"&lsaquo;","𝓁":"&lscr;","⪍":"&lsime;","⪏":"&lsimg;","‚":"&sbquo;","ł":"&lstrok;","⪦":"&ltcc;","⩹":"&ltcir;","⋉":"&ltimes;","⥶":"&ltlarr;","⩻":"&ltquest;","⦖":"&ltrPar;","◃":"&triangleleft;","⥊":"&lurdshar;","⥦":"&luruhar;","≨︀":"&lvnE;","∺":"&mDDot;","¯":"&strns;","♂":"&male;","✠":"&maltese;","▮":"&marker;","⨩":"&mcomma;","м":"&mcy;","—":"&mdash;","𝔪":"&mfr;","℧":"&mho;","µ":"&micro;","⫰":"&midcir;","−":"&minus;","⨪":"&minusdu;","⫛":"&mlcp;","⊧":"&models;","𝕞":"&mopf;","𝓂":"&mscr;","μ":"&mu;","⊸":"&mumap;","⋙̸":"&nGg;","≫⃒":"&nGt;","⇍":"&nlArr;","⇎":"&nhArr;","⋘̸":"&nLl;","≪⃒":"&nLt;","⇏":"&nrArr;","⊯":"&nVDash;","⊮":"&nVdash;","ń":"&nacute;","∠⃒":"&nang;","⩰̸":"&napE;","≋̸":"&napid;","ʼn":"&napos;","♮":"&natural;","⩃":"&ncap;","ň":"&ncaron;","ņ":"&ncedil;","⩭̸":"&ncongdot;","⩂":"&ncup;","н":"&ncy;","–":"&ndash;","⇗":"&neArr;","⤤":"&nearhk;","≐̸":"&nedot;","⤨":"&toea;","𝔫":"&nfr;","↮":"&nleftrightarrow;","⫲":"&nhpar;","⋼":"&nis;","⋺":"&nisd;","њ":"&njcy;","≦̸":"&nleqq;","↚":"&nleftarrow;","‥":"&nldr;","𝕟":"&nopf;","¬":"&not;","⋹̸":"&notinE;","⋵̸":"&notindot;","⋷":"&notinvb;","⋶":"&notinvc;","⋾":"&notnivb;","⋽":"&notnivc;","⫽⃥":"&nparsl;","∂̸":"&npart;","⨔":"&npolint;","↛":"&nrightarrow;","⤳̸":"&nrarrc;","↝̸":"&nrarrw;","𝓃":"&nscr;","⊄":"&nsub;","⫅̸":"&nsubseteqq;","⊅":"&nsup;","⫆̸":"&nsupseteqq;","ñ":"&ntilde;","ν":"&nu;","#":"&num;","№":"&numero;"," ":"&numsp;","⊭":"&nvDash;","⤄":"&nvHarr;","≍⃒":"&nvap;","⊬":"&nvdash;","≥⃒":"&nvge;",">⃒":"&nvgt;","⧞":"&nvinfin;","⤂":"&nvlArr;","≤⃒":"&nvle;","<⃒":"&nvlt;","⊴⃒":"&nvltrie;","⤃":"&nvrArr;","⊵⃒":"&nvrtrie;","∼⃒":"&nvsim;","⇖":"&nwArr;","⤣":"&nwarhk;","⤧":"&nwnear;","ó":"&oacute;","ô":"&ocirc;","о":"&ocy;","ő":"&odblac;","⨸":"&odiv;","⦼":"&odsold;","œ":"&oelig;","⦿":"&ofcir;","𝔬":"&ofr;","˛":"&ogon;","ò":"&ograve;","⧁":"&ogt;","⦵":"&ohbar;","⦾":"&olcir;","⦻":"&olcross;","⧀":"&olt;","ō":"&omacr;","ω":"&omega;","ο":"&omicron;","⦶":"&omid;","𝕠":"&oopf;","⦷":"&opar;","⦹":"&operp;","∨":"&vee;","⩝":"&ord;","ℴ":"&oscr;","ª":"&ordf;","º":"&ordm;","⊶":"&origof;","⩖":"&oror;","⩗":"&orslope;","⩛":"&orv;","ø":"&oslash;","⊘":"&osol;","õ":"&otilde;","⨶":"&otimesas;","ö":"&ouml;","⌽":"&ovbar;","¶":"&para;","⫳":"&parsim;","⫽":"&parsl;","п":"&pcy;","%":"&percnt;",".":"&period;","‰":"&permil;","‱":"&pertenk;","𝔭":"&pfr;","φ":"&phi;","ϕ":"&varphi;","☎":"&phone;","π":"&pi;","ϖ":"&varpi;","ℎ":"&planckh;","+":"&plus;","⨣":"&plusacir;","⨢":"&pluscir;","⨥":"&plusdu;","⩲":"&pluse;","⨦":"&plussim;","⨧":"&plustwo;","⨕":"&pointint;","𝕡":"&popf;","£":"&pound;","⪳":"&prE;","⪷":"&precapprox;","⪹":"&prnap;","⪵":"&prnE;","⋨":"&prnsim;","′":"&prime;","⌮":"&profalar;","⌒":"&profline;","⌓":"&profsurf;","⊰":"&prurel;","𝓅":"&pscr;","ψ":"&psi;"," ":"&puncsp;","𝔮":"&qfr;","𝕢":"&qopf;","⁗":"&qprime;","𝓆":"&qscr;","⨖":"&quatint;","?":"&quest;","⤜":"&rAtail;","⥤":"&rHar;","∽̱":"&race;","ŕ":"&racute;","⦳":"&raemptyv;","⦒":"&rangd;","⦥":"&range;","»":"&raquo;","⥵":"&rarrap;","⤠":"&rarrbfs;","⤳":"&rarrc;","⤞":"&rarrfs;","⥅":"&rarrpl;","⥴":"&rarrsim;","↣":"&rightarrowtail;","↝":"&rightsquigarrow;","⤚":"&ratail;","∶":"&ratio;","❳":"&rbbrk;","}":"&rcub;","]":"&rsqb;","⦌":"&rbrke;","⦎":"&rbrksld;","⦐":"&rbrkslu;","ř":"&rcaron;","ŗ":"&rcedil;","р":"&rcy;","⤷":"&rdca;","⥩":"&rdldhar;","↳":"&rdsh;","▭":"&rect;","⥽":"&rfisht;","𝔯":"&rfr;","⥬":"&rharul;","ρ":"&rho;","ϱ":"&varrho;","⇉":"&rrarr;","⋌":"&rthree;","˚":"&ring;","‏":"&rlm;","⎱":"&rmoustache;","⫮":"&rnmid;","⟭":"&roang;","⇾":"&roarr;","⦆":"&ropar;","𝕣":"&ropf;","⨮":"&roplus;","⨵":"&rotimes;",")":"&rpar;","⦔":"&rpargt;","⨒":"&rppolint;","›":"&rsaquo;","𝓇":"&rscr;","⋊":"&rtimes;","▹":"&triangleright;","⧎":"&rtriltri;","⥨":"&ruluhar;","℞":"&rx;","ś":"&sacute;","⪴":"&scE;","⪸":"&succapprox;","š":"&scaron;","ş":"&scedil;","ŝ":"&scirc;","⪶":"&succneqq;","⪺":"&succnapprox;","⋩":"&succnsim;","⨓":"&scpolint;","с":"&scy;","⋅":"&sdot;","⩦":"&sdote;","⇘":"&seArr;","§":"&sect;",";":"&semi;","⤩":"&tosa;","✶":"&sext;","𝔰":"&sfr;","♯":"&sharp;","щ":"&shchcy;","ш":"&shcy;","­":"&shy;","σ":"&sigma;","ς":"&varsigma;","⩪":"&simdot;","⪞":"&simg;","⪠":"&simgE;","⪝":"&siml;","⪟":"&simlE;","≆":"&simne;","⨤":"&simplus;","⥲":"&simrarr;","⨳":"&smashp;","⧤":"&smeparsl;","⌣":"&ssmile;","⪪":"&smt;","⪬":"&smte;","⪬︀":"&smtes;","ь":"&softcy;","/":"&sol;","⧄":"&solb;","⌿":"&solbar;","𝕤":"&sopf;","♠":"&spadesuit;","⊓︀":"&sqcaps;","⊔︀":"&sqcups;","𝓈":"&sscr;","☆":"&star;","⊂":"&subset;","⫅":"&subseteqq;","⪽":"&subdot;","⫃":"&subedot;","⫁":"&submult;","⫋":"&subsetneqq;","⊊":"&subsetneq;","⪿":"&subplus;","⥹":"&subrarr;","⫇":"&subsim;","⫕":"&subsub;","⫓":"&subsup;","♪":"&sung;","¹":"&sup1;","²":"&sup2;","³":"&sup3;","⫆":"&supseteqq;","⪾":"&supdot;","⫘":"&supdsub;","⫄":"&supedot;","⟉":"&suphsol;","⫗":"&suphsub;","⥻":"&suplarr;","⫂":"&supmult;","⫌":"&supsetneqq;","⊋":"&supsetneq;","⫀":"&supplus;","⫈":"&supsim;","⫔":"&supsub;","⫖":"&supsup;","⇙":"&swArr;","⤪":"&swnwar;","ß":"&szlig;","⌖":"&target;","τ":"&tau;","ť":"&tcaron;","ţ":"&tcedil;","т":"&tcy;","⌕":"&telrec;","𝔱":"&tfr;","θ":"&theta;","ϑ":"&vartheta;","þ":"&thorn;","×":"&times;","⨱":"&timesbar;","⨰":"&timesd;","⌶":"&topbot;","⫱":"&topcir;","𝕥":"&topf;","⫚":"&topfork;","‴":"&tprime;","▵":"&utri;","≜":"&trie;","◬":"&tridot;","⨺":"&triminus;","⨹":"&triplus;","⧍":"&trisb;","⨻":"&tritime;","⏢":"&trpezium;","𝓉":"&tscr;","ц":"&tscy;","ћ":"&tshcy;","ŧ":"&tstrok;","⥣":"&uHar;","ú":"&uacute;","ў":"&ubrcy;","ŭ":"&ubreve;","û":"&ucirc;","у":"&ucy;","ű":"&udblac;","⥾":"&ufisht;","𝔲":"&ufr;","ù":"&ugrave;","▀":"&uhblk;","⌜":"&ulcorner;","⌏":"&ulcrop;","◸":"&ultri;","ū":"&umacr;","ų":"&uogon;","𝕦":"&uopf;","υ":"&upsilon;","⇈":"&uuarr;","⌝":"&urcorner;","⌎":"&urcrop;","ů":"&uring;","◹":"&urtri;","𝓊":"&uscr;","⋰":"&utdot;","ũ":"&utilde;","ü":"&uuml;","⦧":"&uwangle;","⫨":"&vBar;","⫩":"&vBarv;","⦜":"&vangrt;","⊊︀":"&vsubne;","⫋︀":"&vsubnE;","⊋︀":"&vsupne;","⫌︀":"&vsupnE;","в":"&vcy;","⊻":"&veebar;","≚":"&veeeq;","⋮":"&vellip;","𝔳":"&vfr;","𝕧":"&vopf;","𝓋":"&vscr;","⦚":"&vzigzag;","ŵ":"&wcirc;","⩟":"&wedbar;","≙":"&wedgeq;","℘":"&wp;","𝔴":"&wfr;","𝕨":"&wopf;","𝓌":"&wscr;","𝔵":"&xfr;","ξ":"&xi;","⋻":"&xnis;","𝕩":"&xopf;","𝓍":"&xscr;","ý":"&yacute;","я":"&yacy;","ŷ":"&ycirc;","ы":"&ycy;","¥":"&yen;","𝔶":"&yfr;","ї":"&yicy;","𝕪":"&yopf;","𝓎":"&yscr;","ю":"&yucy;","ÿ":"&yuml;","ź":"&zacute;","ž":"&zcaron;","з":"&zcy;","ż":"&zdot;","ζ":"&zeta;","𝔷":"&zfr;","ж":"&zhcy;","⇝":"&zigrarr;","𝕫":"&zopf;","𝓏":"&zscr;","‍":"&zwj;","‌":"&zwnj;"}}};var Vn={};Object.defineProperty(Vn,"__esModule",{value:!0}),Vn.numericUnicodeMap={0:65533,128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376};var Wn={};Object.defineProperty(Wn,"__esModule",{value:!0}),Wn.fromCodePoint=String.fromCodePoint||function(e){return String.fromCharCode(Math.floor((e-65536)/1024)+55296,(e-65536)%1024+56320)},Wn.getCodePoint=String.prototype.codePointAt?function(e,t){return e.codePointAt(t)}:function(e,t){return 1024*(e.charCodeAt(t)-55296)+e.charCodeAt(t+1)-56320+65536},Wn.highSurrogateFrom=55296,Wn.highSurrogateTo=56319;var zn=je&&je.__assign||function(){return zn=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e},zn.apply(this,arguments)};Object.defineProperty(Mn,"__esModule",{value:!0});var Kn=Hn,Gn=Vn,Jn=Wn,Yn=zn(zn({},Kn.namedReferences),{all:Kn.namedReferences.html5});function Qn(e,t,r){t.lastIndex=0;var n,s=t.exec(e);if(s){n="";var a=0;do{a!==s.index&&(n+=e.substring(a,s.index));var i=s[0];n+=r(i),a=s.index+i.length}while(s=t.exec(e));a!==e.length&&(n+=e.substring(a))}else n=e;return n}var Xn={specialChars:/[<>'"&]/g,nonAscii:/[<>'"&\u0080-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,nonAsciiPrintable:/[<>'"&\x01-\x08\x11-\x15\x17-\x1F\x7f-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,nonAsciiPrintableOnly:/[\x01-\x08\x11-\x15\x17-\x1F\x7f-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,extensive:/[\x01-\x0c\x0e-\x1f\x21-\x2c\x2e-\x2f\x3a-\x40\x5b-\x60\x7b-\x7d\x7f-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g},es={mode:"specialChars",level:"all",numeric:"decimal"};Mn.encode=function(e,t){var r=void 0===t?es:t,n=r.mode,s=void 0===n?"specialChars":n,a=r.numeric,i=void 0===a?"decimal":a,o=r.level;if(!e)return"";var l=Xn[s],u=Yn[void 0===o?"all":o].characters,c="hexadecimal"===i;return Qn(e,l,(function(e){var t=u[e];if(!t){var r=e.length>1?Jn.getCodePoint(e,0):e.charCodeAt(0);t=(c?"&#x"+r.toString(16):"&#"+r)+";"}return t}))};var ts={scope:"body",level:"all"},rs=/&(?:#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+);/g,ns=/&(?:#\d+|#[xX][\da-fA-F]+|[0-9a-zA-Z]+)[;=]?/g,ss={xml:{strict:rs,attribute:ns,body:Kn.bodyRegExps.xml},html4:{strict:rs,attribute:ns,body:Kn.bodyRegExps.html4},html5:{strict:rs,attribute:ns,body:Kn.bodyRegExps.html5}},as=zn(zn({},ss),{all:ss.html5}),is=String.fromCharCode,os=is(65533),ls={level:"all"};function us(e,t,r,n){var s=e,a=e[e.length-1];if(r&&"="===a)s=e;else if(n&&";"!==a)s=e;else{var i=t[e];if(i)s=i;else if("&"===e[0]&&"#"===e[1]){var o=e[2],l="x"==o||"X"==o?parseInt(e.substr(3),16):parseInt(e.substr(2));s=l>=1114111?os:l>65535?Jn.fromCodePoint(l):is(Gn.numericUnicodeMap[l]||l)}}return s}Mn.decodeEntity=function(e,t){var r=(void 0===t?ls:t).level;return e?us(e,Yn[void 0===r?"all":r].entities,!1,!1):""};var cs=Mn.decode=function(e,t){var r=void 0===t?ts:t,n=r.level,s=void 0===n?"all":n,a=r.scope,i=void 0===a?"xml"===s?"strict":"body":a;if(!e)return"";var o=as[s][i],l=Yn[s].entities,u="attribute"===i,c="strict"===i;return Qn(e,o,(function(e){return us(e,l,u,c)}))},ds={strictlyTwoElementsInRangeArrays:!1,progressFn:null};
/**
 * @name ranges-sort
 * @fileoverview Sort string index ranges
 * @version 6.0.11
 * @author Roy Revelt, Codsen Ltd
 * @license MIT
 * {@link https://codsen.com/os/ranges-sort/}
 */function ps(e,t){if(!Array.isArray(e)||!e.length)return e;let r,n,s={...ds,...t};if(s.strictlyTwoElementsInRangeArrays&&!e.every(((e,t)=>!(!Array.isArray(e)||2!==e.length)||(r=t,n=e.length,!1))))throw new TypeError(`ranges-sort: [THROW_ID_03] The first argument should be an array and must consist of arrays which are natural number indexes representing TWO string index ranges. However, ${r}th range (${JSON.stringify(e[r],null,4)}) has not two but ${n} elements!`);if(!e.every(((e,t)=>!(!Array.isArray(e)||!Number.isInteger(e[0])||e[0]<0||!Number.isInteger(e[1])||e[1]<0)||(r=t,!1))))throw new TypeError(`ranges-sort: [THROW_ID_04] The first argument should be an array and must consist of arrays which are natural number indexes representing string index ranges. However, ${r}th range (${JSON.stringify(e[r],null,4)}) does not consist of only natural numbers!`);let a=e.length**2,i=0;return Array.from(e).sort(((e,t)=>(s.progressFn&&(i+=1,s.progressFn(Math.floor(100*i/a))),e[0]===t[0]?e[1]<t[1]?-1:e[1]>t[1]?1:0:e[0]<t[0]?-1:1
/**
 * @name ranges-merge
 * @fileoverview Merge and sort string index ranges
 * @version 9.0.15
 * @author Roy Revelt, Codsen Ltd
 * @license MIT
 * {@link https://codsen.com/os/ranges-merge/}
 */)))}var hs={mergeType:1,progressFn:null,joinRangesThatTouchEdges:!0};var gs=!0,ms="Invariant failed";
/**
 * @name ranges-apply
 * @fileoverview Take an array of string index ranges, delete/replace the string according to them
 * @version 7.0.16
 * @author Roy Revelt, Codsen Ltd
 * @license MIT
 * {@link https://codsen.com/os/ranges-apply/}
 */
function fs(e,t,r){let n,s=0,a=0;if(0===arguments.length)throw new Error("ranges-apply: [THROW_ID_01] inputs missing!");if("string"!=typeof e)throw new TypeError(`ranges-apply: [THROW_ID_02] first input argument must be a string! Currently it's: ${typeof e}, equal to: ${JSON.stringify(e,null,4)}`);if(t&&!Array.isArray(t))throw new TypeError(`ranges-apply: [THROW_ID_03] second input argument must be an array (or null)! Currently it's: ${typeof t}, equal to: ${JSON.stringify(t,null,4)}`);if(r&&"function"!=typeof r)throw new TypeError(`ranges-apply: [THROW_ID_04] the third input argument must be a function (or falsey)! Currently it's: ${typeof r}, equal to: ${JSON.stringify(r,null,4)}`);if(!t?.filter((e=>e)).length)return e;n=Array.isArray(t)&&Number.isInteger(t[0])&&Number.isInteger(t[1])?[Array.from(t)]:Array.from(t);let i=n.length,o=0;n.filter((e=>e)).forEach(((e,t)=>{if(r&&(s=Math.floor(o/i*10),s!==a&&(a=s,r(s))),!Array.isArray(e))throw new TypeError(`ranges-apply: [THROW_ID_05] ranges array, second input arg., has ${t}th element not an array: ${JSON.stringify(e,null,4)}, which is ${typeof e}`);if(!Number.isInteger(e[0])){if(!Number.isInteger(+e[0])||+e[0]<0)throw new TypeError(`ranges-apply: [THROW_ID_06] ranges array, second input arg. has ${t}th element, array ${JSON.stringify(e,null,0)}. Its first element is not an integer, string index, but ${typeof e[0]}, equal to: ${JSON.stringify(e[0],null,4)}.`);n[t][0]=+n[t][0]}if(!Number.isInteger(e[1])){if(!Number.isInteger(+e[1])||+e[1]<0)throw new TypeError(`ranges-apply: [THROW_ID_07] ranges array, second input arg. has ${t}th element, array ${JSON.stringify(e,null,0)}. Its second element is not an integer, string index, but ${typeof e[1]}, equal to: ${JSON.stringify(e[1],null,4)}.`);n[t][1]=+n[t][1]}o+=1}));let l=function(e,t){function r(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}if(!Array.isArray(e)||!e.length)return null;let n;if(t){if(!r(t))throw new Error(`emlint: [THROW_ID_03] the second input argument must be a plain object. It was given as:\n${JSON.stringify(t,null,4)} (type ${typeof t})`);if(n={...hs,...t},n.progressFn&&r(n.progressFn)&&!Object.keys(n.progressFn).length)n.progressFn=null;else if(n.progressFn&&"function"!=typeof n.progressFn)throw new Error(`ranges-merge: [THROW_ID_01] opts.progressFn must be a function! It was given of a type: "${typeof n.progressFn}", equal to ${JSON.stringify(n.progressFn,null,4)}`);if(![1,2,"1","2"].includes(n.mergeType))throw new Error(`ranges-merge: [THROW_ID_02] opts.mergeType was customised to a wrong thing! It was given of a type: "${typeof n.mergeType}", equal to ${JSON.stringify(n.mergeType,null,4)}`);if("boolean"!=typeof n.joinRangesThatTouchEdges)throw new Error(`ranges-merge: [THROW_ID_04] opts.joinRangesThatTouchEdges was customised to a wrong thing! It was given of a type: "${typeof n.joinRangesThatTouchEdges}", equal to ${JSON.stringify(n.joinRangesThatTouchEdges,null,4)}`)}else n={...hs};let s,a,i,o=e.filter((e=>Array.isArray(e))).map((e=>[...e])).filter((e=>void 0!==e[2]||e[0]!==e[1]));s=n.progressFn?ps(o,{progressFn:e=>{i=Math.floor(e/5),i!==a&&(a=i,n.progressFn(i))}}):ps(o);let l=s.length-1;for(let e=l;e>0;e--)n.progressFn&&(i=Math.floor(78*(1-e/l))+21,i!==a&&i>a&&(a=i,n.progressFn(i))),(s[e][0]<=s[e-1][0]||!n.joinRangesThatTouchEdges&&s[e][0]<s[e-1][1]||n.joinRangesThatTouchEdges&&s[e][0]<=s[e-1][1])&&(s[e-1][0]=Math.min(s[e][0],s[e-1][0]),s[e-1][1]=Math.max(s[e][1],s[e-1][1]),void 0!==s[e][2]&&(s[e-1][0]>=s[e][0]||s[e-1][1]<=s[e][1])&&null!==s[e-1][2]&&(null===s[e][2]&&null!==s[e-1][2]?s[e-1][2]=null:null!=s[e-1][2]?2==+n.mergeType&&s[e-1][0]===s[e][0]?s[e-1][2]=s[e][2]:s[e-1][2]+=s[e][2]:s[e-1][2]=s[e][2]),s.splice(e,1),e=s.length);return s.length?s:null}(n,{progressFn:e=>{r&&(s=10+Math.floor(e/10),s!==a&&(a=s,r(s)))}});!function(e,t){if(!e){if(gs)throw new Error(ms);var r="function"==typeof t?t():t,n=r?"".concat(ms,": ").concat(r):ms;throw new Error(n)}}(l);let u=l.length;if(u>0){let t=e.slice(l[u-1][1]);e=l.reduce(((t,n,i,o)=>{r&&(s=20+Math.floor(i/u*80),s!==a&&(a=s,r(s)));let l=0===i?0:o[i-1][1],c=o[i][0];return`${t}${e.slice(l,c)}${o[i][2]||""}`}),""),e+=t}return e}
/**
 * @name string-collapse-leading-whitespace
 * @fileoverview Collapse the leading and trailing whitespace of a string
 * @version 7.0.7
 * @author Roy Revelt, Codsen Ltd
 * @license MIT
 * {@link https://codsen.com/os/string-collapse-leading-whitespace/}
 */function ys(e,t=1){function r(e){return Array.from(e).reverse().join("")}function n(e,t,r){let n=r?"\n":"\r",s=r?"\r":"\n";if(!e)return e;let a=0,i="";for(let r=0,o=e.length;r<o;r++)(e[r]===n||e[r]===s&&e[r-1]!==n)&&a++,"\r\n".includes(e[r])||" "===e[r]?" "===e[r]?i+=e[r]:e[r]===n?a<=t&&(i+=e[r],e[r+1]===s&&(i+=e[r+1],r++)):e[r]===s&&e?.[r-1]!==n&&a<=t&&(i+=e[r]):!e[r+1]&&!a&&(i+=" ");return i}if("string"==typeof e&&e.length){let s=1;"number"==typeof+t&&Number.isInteger(+t)&&+t>=0&&(s=+t);let a="",i="";if(e.trim()){if(!e[0].trim())for(let t=0,r=e.length;t<r;t++)if(e[t].trim()){a=e.slice(0,t);break}}else a=e;if(e.trim()&&(""===e.slice(-1).trim()||" "===e.slice(-1)))for(let t=e.length;t--;)if(e[t].trim()){i=e.slice(t+1);break}return`${n(a,s,!1)}${e.trim()}${r(n(r(i),s,!0))}`}return e}
/**
 * @name ranges-push
 * @fileoverview Gather string index ranges
 * @version 7.0.15
 * @author Roy Revelt, Codsen Ltd
 * @license MIT
 * {@link https://codsen.com/os/ranges-push/}
 */var bs={mergeType:1,progressFn:null,joinRangesThatTouchEdges:!0};var vs={limitToBeAddedWhitespace:!1,limitLinebreaksCount:1,mergeType:1},ws=class{constructor(e){let t={...vs,...e};if(t.mergeType&&1!==t.mergeType&&2!==t.mergeType)if(Pn(t.mergeType)&&"1"===t.mergeType.trim())t.mergeType=1;else{if(!Pn(t.mergeType)||"2"!==t.mergeType.trim())throw new Error(`ranges-push: [THROW_ID_02] opts.mergeType was customised to a wrong thing! It was given of a type: "${typeof t.mergeType}", equal to ${JSON.stringify(t.mergeType,null,4)}`);t.mergeType=2}this.opts=t,this.ranges=[]}ranges;opts;add(e,t,r){if(null==e&&null==t)return;if(Zn(e)&&!Zn(t)){if(Array.isArray(e)){if(e.length){if(e.some((e=>Array.isArray(e))))return void e.forEach((e=>{Array.isArray(e)&&this.add(...e)}));e.length&&Bn(+e[0])&&Bn(+e[1])&&this.add(...e)}return}throw new TypeError(`ranges-push/Ranges/add(): [THROW_ID_12] the first input argument, "from" is set (${JSON.stringify(e,null,0)}) but second-one, "to" is not (${JSON.stringify(t,null,0)})`)}if(!Zn(e)&&Zn(t))throw new TypeError(`ranges-push/Ranges/add(): [THROW_ID_13] the second input argument, "to" is set (${JSON.stringify(t,null,0)}) but first-one, "from" is not (${JSON.stringify(e,null,0)})`);let n=+e,s=+t;if(Bn(r)&&(r=String(r)),!Bn(n)||!Bn(s))throw Bn(n)&&n>=0?new TypeError(`ranges-push/Ranges/add(): [THROW_ID_10] "to" value, the second input argument, must be a natural number or zero! Currently it's of a type "${typeof s}" equal to: ${JSON.stringify(s,null,4)}`):new TypeError(`ranges-push/Ranges/add(): [THROW_ID_09] "from" value, the first input argument, must be a natural number or zero! Currently it's of a type "${typeof n}" equal to: ${JSON.stringify(n,null,4)}`);if(Zn(r)&&!Pn(r)&&!Bn(r))throw new TypeError(`ranges-push/Ranges/add(): [THROW_ID_08] The third argument, the value to add, was given not as string but ${typeof r}, equal to:\n${JSON.stringify(r,null,4)}`);if(Zn(this.ranges)&&Array.isArray(this.last())&&n===this.last()[1]){if(this.last()[1]=s,this.last()[2],null!==this.last()[2]&&Zn(r)){let e=!this.last()[2]||!this.last()[2].length||this.opts?.mergeType&&1!==this.opts.mergeType?r:`${this.last()[2]}${r}`;this.opts.limitToBeAddedWhitespace&&(e=ys(e,this.opts.limitLinebreaksCount)),Pn(e)&&!e.length||(this.last()[2]=e)}}else{this.ranges||(this.ranges=[]);let e=void 0===r||Pn(r)&&!r.length?[n,s]:[n,s,r&&this.opts.limitToBeAddedWhitespace?ys(r,this.opts.limitLinebreaksCount):r];this.ranges.push(e)}}push(e,t,r){this.add(e,t,r)}current(){return Array.isArray(this.ranges)&&this.ranges.length?(this.ranges=function(e,t){function r(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}if(!Array.isArray(e)||!e.length)return null;let n;if(t){if(!r(t))throw new Error(`emlint: [THROW_ID_03] the second input argument must be a plain object. It was given as:\n${JSON.stringify(t,null,4)} (type ${typeof t})`);if(n={...bs,...t},n.progressFn&&r(n.progressFn)&&!Object.keys(n.progressFn).length)n.progressFn=null;else if(n.progressFn&&"function"!=typeof n.progressFn)throw new Error(`ranges-merge: [THROW_ID_01] resolvedOpts.progressFn must be a function! It was given of a type: "${typeof n.progressFn}", equal to ${JSON.stringify(n.progressFn,null,4)}`);if(![1,2,"1","2"].includes(n.mergeType))throw new Error(`ranges-merge: [THROW_ID_02] resolvedOpts.mergeType was customised to a wrong thing! It was given of a type: "${typeof n.mergeType}", equal to ${JSON.stringify(n.mergeType,null,4)}`);if("boolean"!=typeof n.joinRangesThatTouchEdges)throw new Error(`ranges-merge: [THROW_ID_04] resolvedOpts.joinRangesThatTouchEdges was customised to a wrong thing! It was given of a type: "${typeof n.joinRangesThatTouchEdges}", equal to ${JSON.stringify(n.joinRangesThatTouchEdges,null,4)}`)}else n={...bs};let s,a,i,o=e.filter((e=>Array.isArray(e))).map((e=>[...e])).filter((e=>void 0!==e[2]||e[0]!==e[1]));s=n.progressFn?ps(o,{progressFn:e=>{i=Math.floor(e/5),i!==a&&(a=i,n.progressFn(i))}}):ps(o);let l=s.length-1;for(let e=l;e>0;e--)n.progressFn&&(i=Math.floor(78*(1-e/l))+21,i!==a&&i>a&&(a=i,n.progressFn(i))),(s[e][0]<=s[e-1][0]||!n.joinRangesThatTouchEdges&&s[e][0]<s[e-1][1]||n.joinRangesThatTouchEdges&&s[e][0]<=s[e-1][1])&&(s[e-1][0]=Math.min(s[e][0],s[e-1][0]),s[e-1][1]=Math.max(s[e][1],s[e-1][1]),void 0!==s[e][2]&&(s[e-1][0]>=s[e][0]||s[e-1][1]<=s[e][1])&&null!==s[e-1][2]&&(null===s[e][2]&&null!==s[e-1][2]?s[e-1][2]=null:null!=s[e-1][2]?2==+n.mergeType&&s[e-1][0]===s[e][0]?s[e-1][2]=s[e][2]:s[e-1][2]+=s[e][2]:s[e-1][2]=s[e][2]),s.splice(e,1),e=s.length);return s.length?s:null}(this.ranges,{mergeType:this.opts.mergeType}),this.ranges&&this.opts.limitToBeAddedWhitespace?this.ranges.map((e=>Zn(e[2])?[e[0],e[1],ys(e[2],this.opts.limitLinebreaksCount)]:e)):this.ranges):null}wipe(){this.ranges=[]}replace(e){if(Array.isArray(e)&&e.length){if(!Array.isArray(e[0])||!Bn(e[0][0]))throw new Error(`ranges-push/Ranges/replace(): [THROW_ID_11] Single range was given but we expected array of arrays! The first element, ${JSON.stringify(e[0],null,4)} should be an array and its first element should be an integer, a string index.`);this.ranges=Array.from(e)}else this.ranges=[]}last(){return Array.isArray(this.ranges)&&this.ranges.length?this.ranges[this.ranges.length-1]:null}};
/**
 * @name string-left-right
 * @fileoverview Looks up the first non-whitespace character to the left/right of a given index
 * @version 6.0.17
 * @author Roy Revelt, Codsen Ltd
 * @license MIT
 * {@link https://codsen.com/os/string-left-right/}
 */Fn();var _s=" ";function ks(e,t=0){return function({str:e,idx:t=0,stopAtNewlines:r=!1,stopAtRawNbsp:n=!1}){if("string"!=typeof e||!e.length||((!t||"number"!=typeof t)&&(t=0),!e[t+1]))return null;if(e[t+1]&&(e[t+1].trim()||r&&"\n\r".includes(e[t+1])||n&&e[t+1]===_s))return t+1;if(e[t+2]&&(e[t+2].trim()||r&&"\n\r".includes(e[t+2])||n&&e[t+2]===_s))return t+2;for(let s=t+1,a=e.length;s<a;s++)if(e[s].trim()||r&&"\n\r".includes(e[s])||n&&e[s]===_s)return s;return null}({str:e,idx:t,stopAtNewlines:!1,stopAtRawNbsp:!1})}
/**
 * @name string-strip-html
 * @fileoverview Strip HTML tags from strings. No parser, accepts mixed sources.
 * @version 13.4.8
 * @author Roy Revelt, Codsen Ltd
 * @license MIT
 * {@link https://codsen.com/os/string-strip-html/}
 */function xs(e){return/[-_A-Za-z0-9]/.test(e)}function qs(e,t){if(!e)return[];if(Array.isArray(e))return e.filter((e=>"string"==typeof e&&e.trim()));if("string"==typeof e)return e.trim()?[e]:[];throw new TypeError(`string-strip-html/stripHtml(): [THROW_ID_05] ${t} must be array containing zero or more strings or something falsey. Currently it's equal to: ${e}, that a type of ${typeof e}.`)}function Ts(e,t,r,n){for(let s=t,a=e.length;s<a;s++){if(e.startsWith(r,s))return!0;if(e.startsWith(n,s))return!1}return!1}function As(e,t,r){return e?.quotes?.value&&Ts(t,r+1,e.quotes.value,">"),Ts(t,e?.quotes?.next-1,e?.quotes?.value,">"),!e?.quotes||!Ts(t,r+1,e.quotes.value,">")&&-1!==e?.quotes?.next&&Ts(t,e?.quotes?.next-1,e?.quotes?.value,">")}function Os(e,t){return(t.match(new RegExp(e,"g"))||[]).length}var Es=new Set(["!doctype","abbr","address","area","article","aside","audio","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","doctype","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","math","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","param","picture","pre","progress","rb","rp","rt","rtc","ruby","samp","script","section","select","slot","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","ul","var","video","wbr","xml"]),Ss=new Set(["a","b","i","p","q","s","u"]),Rs=new Set([".",",",";","!","?"]),Ds=new Set([".",",","?",";",")","…",'"',"»"]),Cs=new Set(["a","abbr","acronym","audio","b","bdi","bdo","big","button","canvas","cite","code","data","datalist","del","dfn","em","embed","i","iframe","input","ins","kbd","label","map","mark","meter","noscript","object","output","picture","progress","q","ruby","s","samp","select","slot","small","span","strong","sub","sup","svg","template","textarea","time","u","tt","var","video","wbr"]),Ns={ignoreTags:[],ignoreTagsWithTheirContents:[],onlyStripTags:[],stripTogetherWithTheirContents:["script","style","xml"],skipHtmlDecoding:!1,trimOnlySpaces:!1,stripRecognisedHTMLOnly:!1,dumpLinkHrefsNearby:{enabled:!1,putOnNewLine:!1,wrapHeads:"",wrapTails:""},ignoreIndentations:!1,cb:null,reportProgressFunc:null,reportProgressFuncFrom:0,reportProgressFuncTo:100};function $s(e,t){let r=Date.now(),n=[],s=[],a=[],i=[],o={};o={attributes:[]};let l=null,u=null,c=null,d=!1,p={},h={tagName:"",hrefValue:"",openingTagEnds:void 0},g="",m=!1,f=null,y=!0;function b(t,r,s){if(Array.isArray(r.stripTogetherWithTheirContents)&&(r.stripTogetherWithTheirContents.includes(o.name)||r.stripTogetherWithTheirContents.includes("*")))if(o.slashPresent&&Array.isArray(n)&&n.some((e=>e.name===o.name))){for(let a=n.length;a--;)if(n[a].name===o.name){i=i.filter((([e,r])=>(e<n[a].lastOpeningBracketAt||e>=t+1)&&(r<=n[a].lastOpeningBracketAt||r>t+1)));let l=t+1;o.lastClosingBracketAt&&(l=o.lastClosingBracketAt+1),i.push([n[a].lastOpeningBracketAt,l]),Ds.has(e[t])&&r.cb?r.cb({tag:o,deleteFrom:n[a].lastOpeningBracketAt,deleteTo:t+1,insert:null,rangesArr:s,proposedReturn:[n[a].lastOpeningBracketAt,t,null]}):r.cb&&r.cb({tag:o,deleteFrom:n[a].lastOpeningBracketAt,deleteTo:t,insert:"",rangesArr:s,proposedReturn:[n[a].lastOpeningBracketAt,t,""]}),n.splice(a,1);break}}else o.slashPresent||n.push(o);else Array.isArray(r.ignoreTagsWithTheirContents)&&x(t,r,o)&&(y=!1)}function v(t,r,n,s,a,i){if(Array.isArray(E.current())&&"number"==typeof n&&0===E.current()[0][0]&&E.current()[0][1]>=n)return"";if(e.length===s&&i&&!T?.dumpLinkHrefsNearby?.enabled)return null;let l="";if(Number.isInteger(n)&&n<a&&(l+=t.slice(n,a)),Number.isInteger(s)&&s>i+1){let r=t.slice(i+1,s);s&&!ks(e,s-1)&&(r=r.trimEnd()),r.includes("\n")&&_(s,t)?l+=" ":l+=r}let u=!Ds.has(t[r]),c=">"!==t[s-1]||!t[n].trim(),d=!['"',"("].includes(t[a-1]),p=![";",".",":","!"].includes(t[r]);if((u||c&&d&&p)&&(c||d)&&"!"!==t[r]&&(!Cs.has(o.name)||"number"==typeof n&&n<a||"number"==typeof s&&s>i+1)){let e=l.match(/\n/g);return Array.isArray(e)&&e.length?1===e.length?"\n":2===e.length?"\n\n":"\n\n\n":" "}return""}function w(t,r){if(t.dumpLinkHrefsNearby?.enabled&&h.tagName&&h.tagName===o.name&&o.lastOpeningBracketAt&&(h.openingTagEnds&&o.lastOpeningBracketAt>h.openingTagEnds||!h.openingTagEnds)&&(m=!0),m){let n=t.dumpLinkHrefsNearby?.putOnNewLine?"\n\n":"";g=`${n}${h.hrefValue}`,("number"!=typeof r||ks(e,r-1))&&(g+=n)}}function _(t,r){return r?"<"===r[t]&&"%"!==r[t+1]:"<"===e[t]&&"%"!==e[t+1]}function k(t){return">"===e[t]&&"%"!==e[t-1]}function x(t,r,n){if(r.ignoreTagsWithTheirContents.includes("*"))return!0;let a=e.indexOf(`<${n.name}`,t),i=e.indexOf(`</${n.name}`,t);return!(!n.slashPresent&&-1===i||n.slashPresent&&!s.some((e=>e.name===n.name))||i>-1&&a>-1&&a<i)&&r.ignoreTagsWithTheirContents.includes(n.name)}if("string"!=typeof e)throw new TypeError(`string-strip-html/stripHtml(): [THROW_ID_01] Input must be string! Currently it's: ${(typeof e).toLowerCase()}, equal to:\n${JSON.stringify(e,null,4)}`);if(t){if(!Ln(t))throw new TypeError(`string-strip-html/stripHtml(): [THROW_ID_02] Optional Options Object must be a plain object! Currently it's: ${(typeof t).toLowerCase()}, equal to:\n${JSON.stringify(t,null,4)}`);if(t.reportProgressFunc&&"function"!=typeof t.reportProgressFunc)throw new Error(`string-strip-html/stripHtml(): [THROW_ID_03] The Optional Options Object's key reportProgressFunc, callback function, should be a function but it was given as type ${typeof t.reportProgressFunc}, equal to ${JSON.stringify(t.reportProgressFunc,null,4)}`);if("boolean"==typeof t.dumpLinkHrefsNearby&&null!=t.dumpLinkHrefsNearby)throw new Error(`string-strip-html/stripHtml(): [THROW_ID_04] The Optional Options Object's key should be a plain object but it was given as type ${typeof t.dumpLinkHrefsNearby}, equal to ${JSON.stringify(t.dumpLinkHrefsNearby,null,4)}`)}function q(){m&&(h={tagName:"",hrefValue:"",openingTagEnds:void 0},m=!1)}let T={...Ns,...t,dumpLinkHrefsNearby:Object.assign({},Ns.dumpLinkHrefsNearby,t?.dumpLinkHrefsNearby)};if(Un(T,"returnRangesOnly"))throw new TypeError("string-strip-html/stripHtml(): [THROW_ID_05] The Optional Options Object's key returnRangesOnly has been removed from the API since v.5 release.");if(T.reportProgressFunc){if("number"!=typeof T.reportProgressFuncFrom)throw new Error(`string-strip-html/stripHtml(): [THROW_ID_06] The Optional Options Object's key reportProgressFuncFrom, callback function's "from" range, should be a number but it was given as type ${typeof T.reportProgressFuncFrom}, equal to ${JSON.stringify(T.reportProgressFuncFrom,null,4)}`);if("number"!=typeof T.reportProgressFuncTo)throw new Error(`string-strip-html/stripHtml(): [THROW_ID_07] The Optional Options Object's key reportProgressFuncTo, callback function's "to" range, should be a number but it was given as type ${typeof T.reportProgressFuncTo}, equal to ${JSON.stringify(T.reportProgressFuncTo,null,4)}`)}T.ignoreTags=qs(T.ignoreTags,"resolvedOpts.ignoreTags"),T.onlyStripTags=qs(T.onlyStripTags,"resolvedOpts.onlyStripTags");let A=!!T.onlyStripTags.length;T.onlyStripTags.length&&T.ignoreTags.length&&(T.onlyStripTags=$e(T.onlyStripTags,...T.ignoreTags)),T.stripTogetherWithTheirContents?"string"==typeof T.stripTogetherWithTheirContents&&T.stripTogetherWithTheirContents.length&&(T.stripTogetherWithTheirContents=[T.stripTogetherWithTheirContents]):T.stripTogetherWithTheirContents=[];let O={};if(T.stripTogetherWithTheirContents&&Array.isArray(T.stripTogetherWithTheirContents)&&T.stripTogetherWithTheirContents.length&&!T.stripTogetherWithTheirContents.every(((e,t)=>"string"==typeof e||(O.el=e,O.i=t,!1))))throw new TypeError(`string-strip-html/stripHtml(): [THROW_ID_08] Optional Options Object's key stripTogetherWithTheirContents was set to contain not just string elements! For example, element at index ${O.i} has a value ${O.el} which is not string but ${(typeof O.el).toLowerCase()}.`);T.cb||(T.cb=({rangesArr:e,proposedReturn:t})=>{t&&e.push(...t)});let E=new ws({limitToBeAddedWhitespace:!0,limitLinebreaksCount:2});if(!T.skipHtmlDecoding)for(;e!==cs(e,{scope:"strict"});)e=cs(e,{scope:"strict"});let S=!1,R=!1,D=0,C=0,N=e.length,$=Math.floor(N/2);for(let t=0;t<N;t++){if(T.reportProgressFunc&&(N>1e3&&N<2e3?t===$&&T.reportProgressFunc(Math.floor((T.reportProgressFuncTo-T.reportProgressFuncFrom)/2)):N>=2e3&&(D=T.reportProgressFuncFrom+Math.floor(t/N*(T.reportProgressFuncTo-T.reportProgressFuncFrom)),D!==C&&(C=D,T.reportProgressFunc(D)))),Object.keys(o).length>1&&o.lastClosingBracketAt&&o.lastClosingBracketAt<t&&" "!==e[t]&&null===f&&(f=t),!S&&"%"===e[t]&&"{"===e[t-1]&&e.includes("%}",t+1)){c=null;let r=e.indexOf("%}",t)-1;if(r>t){t=r;continue}}if(!S&&k(t)&&(!o||Object.keys(o).length<2)&&t>1)for(let r=t;r--;)if(void 0===e[r-1]||k(r)){let n=void 0===e[r-1]?r:r+1,s=e.slice(n,t+1)||"";if((s.includes("/>")||s.includes("/ >")||s.includes('="')||s.includes("='"))&&e!==`<${Re(s.trim(),"/>")}>`&&[...Es].some((e=>Re(s.trim().split(/\s+/).filter((e=>e.trim())).filter(((e,t)=>0===t)),"/>").toLowerCase()===e))&&""===$s(`<${s.trim()}>`,T).result){(!a.length||a[a.length-1][0]!==o.lastOpeningBracketAt)&&a.push([n,t+1]),(!i.length||i[i.length-1][0]!==o.lastOpeningBracketAt)&&i.push([n,t+1]);let r=v(e,t,n,t+1,n,t+1),s=t+1;if(e[s]&&!e[s].trim())for(let t=s;t<N;t++)if(e[t].trim()){s=t;break}T.cb({tag:o,deleteFrom:n,deleteTo:s,insert:r,rangesArr:E,proposedReturn:[n,s,r]})}break}if(!R&&"/"===e[t]&&!o.quotes?.value&&Number.isInteger(o.lastOpeningBracketAt)&&!Number.isInteger(o.lastClosingBracketAt)&&(o.slashPresent=t),'"'===e[t]||"'"===e[t])if(!R&&o.nameStarts&&o?.quotes?.value===e[t])if(void 0===p.valueStarts)p={},delete o.quotes;else{let r;p.valueEnds=t,p.value=e.slice(p.valueStarts,t),o.attributes.push(p),p={},delete o.quotes,T.dumpLinkHrefsNearby?.enabled&&!n.length&&o.attributes.some((e=>{if("string"==typeof e.name&&"href"===e.name.toLowerCase())return r=`${T.dumpLinkHrefsNearby?.wrapHeads||""}${e.value}${T.dumpLinkHrefsNearby?.wrapTails||""}`,!0}))&&(h={tagName:o.name,hrefValue:r,openingTagEnds:void 0})}else!R&&!o.quotes&&o.nameStarts&&(o.quotes={},o.quotes.value=e[t],o.quotes.start=t,o.quotes.next=e.indexOf(e[t],t+1),p.nameStarts&&p.nameEnds&&p.nameEnds<t&&p.nameStarts<t&&!p.valueStarts&&(p.name=e.slice(p.nameStarts,p.nameEnds)));if(!(void 0===o.nameStarts||void 0!==o.nameEnds||e[t].trim()&&xs(e[t]))){if(o.nameEnds=t,o.name=e.slice(o.nameStarts,o.nameEnds+(k(t)||"/"===e[t]||void 0!==e[t+1]?0:1)),"!"!==e[o.nameStarts-1]&&!o.name.replace(/-/g,"").length||/^\d+$/.test(o.name[0])){o={};continue}if("string"==typeof o.name&&"doctype"===o.name.toLowerCase()&&(R=!0),_(t)){w(T);let r=v(e,t,o.leftOuterWhitespace,t,o.lastOpeningBracketAt,t);(T.stripTogetherWithTheirContents.includes(o.name)||T.stripTogetherWithTheirContents.includes("*"))&&(i=i.filter((([e,r])=>!(e===o.leftOuterWhitespace&&r===t)))),T.cb({tag:o,deleteFrom:o.leftOuterWhitespace,deleteTo:t,insert:`${r}${g}${r}`,rangesArr:E,proposedReturn:[o.leftOuterWhitespace,t,`${r}${g}${r}`]}),q(),b(t,T,E)}}if(o.quotes?.start&&o.quotes.start<t&&!o.quotes.end&&p.nameEnds&&p.equalsAt&&!p.valueStarts&&(p.valueStarts=t),!o.quotes&&p.nameEnds&&"="===e[t]&&!p.valueStarts&&!p.equalsAt&&(p.equalsAt=t),!o.quotes&&p.nameStarts&&p.nameEnds&&!p.valueStarts&&e[t].trim()&&"="!==e[t]&&(o.attributes.push(p),p={}),!o.quotes&&p.nameStarts&&!p.nameEnds&&(R&&"'\"".includes(e[p.nameStarts])?p.nameStarts<t&&e[t]===e[p.nameStarts]&&(p.nameEnds=t+1,p.name=e.slice(p.nameStarts,p.nameEnds)):e[t].trim()?"="===e[t]?p.equalsAt||(p.nameEnds=t,p.equalsAt=t,p.name=e.slice(p.nameStarts,p.nameEnds)):("/"===e[t]||k(t)||_(t))&&(p.nameEnds=t,p.name=e.slice(p.nameStarts,p.nameEnds),o.attributes.push(p),p={}):(p.nameEnds=t,p.name=e.slice(p.nameStarts,p.nameEnds))),!o.quotes&&o.nameEnds<t&&!e[t-1].trim()&&e[t].trim()&&!"<>/!".includes(e[t])&&!p.nameStarts&&!o.lastClosingBracketAt&&(p.nameStarts=t),null!==o.lastOpeningBracketAt&&o.lastOpeningBracketAt<t&&"/"===e[t]&&o.onlyPlausible&&(o.onlyPlausible=!1),null!==o.lastOpeningBracketAt&&o.lastOpeningBracketAt<t&&"/"!==e[t]&&(void 0===o.onlyPlausible&&(e[t].trim()&&!_(t)||o.slashPresent?o.onlyPlausible=!1:o.onlyPlausible=!0),e[t].trim()&&void 0===o.nameStarts&&!_(t)&&"/"!==e[t]&&!k(t)&&"!"!==e[t]&&(o.nameStarts=t,o.nameContainsLetters=!1)),o.nameStarts&&!o.quotes&&"string"==typeof e[t]&&e[t].toLowerCase()!==e[t].toUpperCase()&&(o.nameContainsLetters=!0),k(t)&&(As(o,e,t)||o.quotes.value&&"number"==typeof o.lastOpeningBracketAt&&Os(o.quotes.value,e.slice(o.lastOpeningBracketAt,t))%2==1&&!e.slice(o.lastOpeningBracketAt+1,t).includes("<")&&!e.slice(o.lastOpeningBracketAt+1,t).includes(">"))&&void 0!==o.lastOpeningBracketAt&&(o.lastClosingBracketAt=t,f=null,Object.keys(p).length&&(o.attributes.push(p),p={}),T.dumpLinkHrefsNearby?.enabled&&h.tagName&&!h.openingTagEnds&&(h.openingTagEnds=t)),(!R||">"===e[t])&&void 0!==o.lastOpeningBracketAt){if(void 0===o.lastClosingBracketAt){if(o.lastOpeningBracketAt<t&&!_(t)&&(void 0===e[t+1]||_(t+1)&&!o?.quotes?.value)&&o.nameContainsLetters&&"number"==typeof o.nameStarts){if(o.name=e.slice(o.nameStarts,o.nameEnds||t+1).toLowerCase(),(!a.length||a[a.length-1][0]!==o.lastOpeningBracketAt)&&a.push([o.lastOpeningBracketAt,t+1]),T.ignoreTags.includes(o.name)||x(t,T,o)||!Es.has(o.name)&&(o.onlyPlausible||T.stripRecognisedHTMLOnly)){o={},p={};continue}if((Es.has(o.name)||Ss.has(o.name))&&(!1===o.onlyPlausible||!0===o.onlyPlausible&&o.attributes.length)||void 0===e[t+1]){w(T);let r,n=v(e,t,o.leftOuterWhitespace,t+1,o.lastOpeningBracketAt,o.lastClosingBracketAt);S&&"script"===o.name&&o.slashPresent&&(S=!1),r=null===n||null===g?null:`${n}${g}${n}`,T.cb({tag:o,deleteFrom:o.leftOuterWhitespace,deleteTo:t+1,insert:r,rangesArr:E,proposedReturn:[o.leftOuterWhitespace,t+1,r]}),q(),b(t,T,E)}if(!i.length||i[i.length-1][0]!==o.lastOpeningBracketAt&&i[i.length-1][1]!==t+1)if(T.stripTogetherWithTheirContents.includes(o.name)||T.stripTogetherWithTheirContents.includes("*")){let e;for(let t=n.length;t--;)n[t].name===o.name&&(e=n[t]);e?(i=i.filter((([t])=>t!==e.lastOpeningBracketAt)),i.push([e.lastOpeningBracketAt,t+1])):i.push([o.lastOpeningBracketAt,t+1])}else i.push([o.lastOpeningBracketAt,t+1])}}else if(t>o.lastClosingBracketAt&&e[t].trim()||void 0===e[t+1]||T.ignoreIndentations&&"\r\n".includes(e[t])){let r=o.lastClosingBracketAt===t?t+1:t;T.trimOnlySpaces&&r===N-1&&null!==f&&f<t&&(r=f),(!a.length||a[a.length-1][0]!==o.lastOpeningBracketAt)&&a.push([o.lastOpeningBracketAt,o.lastClosingBracketAt+1]);let n=T.ignoreTags.includes(o.name),l=x(t,T,o);if(!y||T.stripRecognisedHTMLOnly&&"string"==typeof o.name&&!Es.has(o.name.toLowerCase())&&!Ss.has(o.name.toLowerCase())||!A&&(n||l)||A&&!T.onlyStripTags.includes(o.name)||T.ignoreTagsWithTheirContents.includes(o.name)){if(l)if(o.slashPresent){for(let e=s.length;e--;)if(s[e].name===o.name){s.splice(e,1);break}s.length||(y=!0)}else y&&(y=!1),s.push(o);T.cb({tag:o,deleteFrom:null,deleteTo:null,insert:null,rangesArr:E,proposedReturn:null}),o={},p={}}else if(!o.onlyPlausible||0===o.attributes.length&&o.name&&(Es.has(o.name.toLowerCase())||Ss.has(o.name.toLowerCase()))||o.attributes?.some((e=>e.equalsAt))){(!i.length||i[i.length-1][0]!==o.lastOpeningBracketAt)&&i.push([o.lastOpeningBracketAt,o.lastClosingBracketAt+1]);let n,s=v(e,t,o.leftOuterWhitespace,r,o.lastOpeningBracketAt,o.lastClosingBracketAt);g="",m=!1,w(T,r),"string"==typeof g&&g.length?(n=`${s}${g}${"\n\n"===s?"\n":s}`,r===o.lastClosingBracketAt+1&&(!e[r]||!Rs.has(e[r]))&&(n+=" "),o.leftOuterWhitespace===o.lastOpeningBracketAt&&E.last()&&E.last()[1]<o.lastOpeningBracketAt&&(!T?.dumpLinkHrefsNearby?.putOnNewLine||!Rs.has(e[r]))&&(n=" "+n)):n=s,null!==n&&(0===o.leftOuterWhitespace||!ks(e,r-1))&&(!T.dumpLinkHrefsNearby?.enabled||"a"!==o.name)&&(n=void 0);let a=0;if(m&&Rs.has(e[r])){T.dumpLinkHrefsNearby?.putOnNewLine&&(n=`${e[r]}${n||""}`);let s=ks(e,r);s&&n?.endsWith("\n")?a+=s-t:(!s||s>t)&&a++}T.cb({tag:o,deleteFrom:o.leftOuterWhitespace,deleteTo:r+a,insert:n,rangesArr:E,proposedReturn:[o.leftOuterWhitespace,r+a,n]}),q(),b(t,T,E)}else o={};k(t)||(o={})}R&&(R=!1)}if((!S||"<"===e[t]&&ks(e,ks(e,t))&&"/"===e[ks(e,t)]&&e.startsWith("script",ks(e,ks(e,t))))&&_(t)&&!_(t-1)&&!"'\"".includes(e[t+1])&&(!"'\"".includes(e[t+2])||/\w/.test(e[t+1]))&&("c"!==e[t+1]||":"!==e[t+2])&&("f"!==e[t+1]||"m"!==e[t+2]||"t"!==e[t+3]||":"!==e[t+4])&&("s"!==e[t+1]||"q"!==e[t+2]||"l"!==e[t+3]||":"!==e[t+4])&&("x"!==e[t+1]||":"!==e[t+2])&&("f"!==e[t+1]||"n"!==e[t+2]||":"!==e[t+3])&&As(o,e,t)){if(k(ks(e,t)))continue;if(o.nameEnds&&o.nameEnds<t&&!o.lastClosingBracketAt&&(!0===o.onlyPlausible&&o.attributes?.length||!1===o.onlyPlausible)){let r=v(e,t,o.leftOuterWhitespace,t,o.lastOpeningBracketAt,t);T.cb({tag:o,deleteFrom:o.leftOuterWhitespace,deleteTo:t,insert:r,rangesArr:E,proposedReturn:[o.leftOuterWhitespace,t,r]}),b(t,T,E),o={},p={}}if(void 0!==o.lastOpeningBracketAt&&o.onlyPlausible&&o.name&&!o.quotes&&(o.lastOpeningBracketAt=void 0,o.name=void 0,o.onlyPlausible=!1),!(void 0!==o.lastOpeningBracketAt&&o.onlyPlausible||o.quotes||(o.lastOpeningBracketAt=t,o.slashPresent=!1,o.attributes=[],null===l?o.leftOuterWhitespace=t:T.trimOnlySpaces&&0===l?o.leftOuterWhitespace=u||t:o.leftOuterWhitespace=l,"!--"!=`${e[t+1]}${e[t+2]}${e[t+3]}`&&"![CDATA["!=`${e[t+1]}${e[t+2]}${e[t+3]}${e[t+4]}${e[t+5]}${e[t+6]}${e[t+7]}${e[t+8]}`))){let r,n=!0;"-"===e[t+2]&&(n=!1);for(let s=t;s<N;s++)if((!r&&n&&"]]>"==`${e[s-2]}${e[s-1]}${e[s]}`||!n&&"--\x3e"==`${e[s-2]}${e[s-1]}${e[s]}`)&&(r=s),r&&(r<s&&e[s].trim()||void 0===e[s+1])){let n=s;(void 0===e[s+1]&&!e[s].trim()||">"===e[s])&&(n+=1),(!a.length||a[a.length-1][0]!==o.lastOpeningBracketAt)&&a.push([o.lastOpeningBracketAt,r+1]),(!i.length||i[i.length-1][0]!==o.lastOpeningBracketAt)&&i.push([o.lastOpeningBracketAt,r+1]);let l=v(e,s,o.leftOuterWhitespace,n,o.lastOpeningBracketAt,r);T.cb({tag:o,deleteFrom:o.leftOuterWhitespace,deleteTo:n,insert:l,rangesArr:E,proposedReturn:[o.leftOuterWhitespace,n,l]}),t=s-1,">"===e[s]&&(t=s),o={},p={};break}}}e[t].trim()&&847!==e[t].charCodeAt(0)?(null!==l&&(!o.quotes&&p.equalsAt>l-1&&p.nameEnds&&p.equalsAt>p.nameEnds&&'"'!==e[t]&&"'"!==e[t]&&(Ln(p)&&o.attributes.push(p),p={},o.equalsSpottedAt=void 0),l=null),d||(d=!0,y&&!S&&"number"==typeof c&&t&&c<t-1&&(e.slice(c+1,t).trim()?c=null:T.ignoreIndentations||E.push([c+1,t])))):(null===l&&(l=t,void 0!==o.lastOpeningBracketAt&&o.lastOpeningBracketAt<t&&o.nameStarts&&o.nameStarts<o.lastOpeningBracketAt&&t===o.lastOpeningBracketAt+1&&!n.some((e=>e.name===o.name))&&(o.onlyPlausible=!0,o.name=void 0,o.nameStarts=void 0)),("\n"===e[t]||"\r"===e[t])&&(c=t,d&&(d=!1)))," "===e[t]?null===u&&(u=t):null!==u&&(u=null),"script"===o.name&&(S=!o.slashPresent)}if(e&&!T.ignoreIndentations&&(T.trimOnlySpaces&&" "===e[0]||!T.trimOnlySpaces&&!e[0].trim()))for(let t=0;t<N;t++){if(T.trimOnlySpaces&&" "!==e[t]||!T.trimOnlySpaces&&e[t].trim()){E.push([0,t]);break}e[t+1]||E.push([0,t+1])}if(e&&(T.trimOnlySpaces&&" "===e[~-e.length]||!T.trimOnlySpaces&&!e[~-e.length].trim()))for(let t=e.length;t--;)if(T.trimOnlySpaces&&" "!==e[t]||!T.trimOnlySpaces&&e[t].trim()){E.push([t+1,N]);break}let j=E.current();if(!t?.cb&&j&&(j[0]&&!j[0][0]&&(j[0][1],E.ranges[0]=[E.ranges[0][0],E.ranges[0][1]]),j[j.length-1]&&j[j.length-1][1]===e.length&&(j[j.length-1][0],E.ranges))){let t=E.ranges[E.ranges.length-1][0];e[t-1]&&(T.trimOnlySpaces&&" "===e[t-1]||!T.trimOnlySpaces&&!e[t-1].trim())&&(t-=1);let r=E.ranges[E.ranges.length-1][2];E.ranges[E.ranges.length-1]=[t,E.ranges[E.ranges.length-1][1]],r?.trim()&&E.ranges[E.ranges.length-1].push(r.trimEnd())}return{log:{timeTakenInMilliseconds:Date.now()-r},result:fs(e,E.current()),ranges:E.current(),allTagLocations:a,filteredTagLocations:i}}class js{constructor(e,t,r,n){this.Collection=e,this.QueryFilter=t,this.ActionFilter=r,this.Fields=n}}class Is{constructor(e){this.Host=e.host,this.Key=e.api_key;const t=e.collections_configuration;this.CollectionsConfiguration=t.map((e=>new js(e.collection,e.queryFilter,e.actionFilter,e.fields)))}}class Fs{constructor(e,t){this.Success=e,this.Message=t}}const Ls=e=>{const t=function(e,t){const r=(t=t||{}).delimiter||".",n=t.maxDepth,s=t.transformKey||hn,a={};return function e(i,o,l){l=l||1,Object.keys(i).forEach((function(u){const c=i[u],d=t.safe&&Array.isArray(c),p=Object.prototype.toString.call(c),h=(g=c)&&g.constructor&&"function"==typeof g.constructor.isBuffer&&g.constructor.isBuffer(g);var g;const m="[object Object]"===p||"[object Array]"===p,f=o?o+r+s(u):s(u);if(!d&&!h&&m&&Object.keys(c).length&&(!t.maxDepth||l<n))return e(c,f,l+1);a[f]=c}))}(e),a}(e);for(const e of Object.keys(t))(!(e.includes("blocks")||e.includes("nodes")||e.includes("content"))||e.endsWith(".title")||e.endsWith(".content")||e.endsWith(".text")||e.endsWith(".caption")||e.endsWith(".description")||e.endsWith(".summary"))&&null!=t[e]?(e.endsWith("content")||e.endsWith("description")||e.endsWith("text")||e.endsWith("summary")||e.endsWith("caption"))&&(t[e]=$s(t[e]).result):delete t[e];return t},Ps=e=>new Promise((t=>{setTimeout(t,e)}));var Bs=async({init:e,action:t},{logger:r,services:n,getSchema:s})=>{const a="meilisearch_settings",{CollectionsService:i,ItemsService:o}=n,l=await s();e("cli.before",(({program:e})=>{e.command("meilisearch:reindex").description("Goes through each collection and updates each collection's index.").action((async()=>{const e=await s(),t=new i({schema:e});if(void 0===(await t.readByQuery()).find((e=>e.collection===a)))return void r.info("Unable to reindex collections. You must first setup the extension.");const n=new o("meilisearch_settings",{schema:e}),l=await n.readOne("1"),u=new Is(l);if(0===u.Host.length||0===u.Key.length||0===u.CollectionsConfiguration.length)return;const c=new Nn({host:u.Host,apiKey:u.Key});await Promise.all(u.CollectionsConfiguration.map((async t=>{r.info(`Updating index for collection ${t.Collection}`);let n=null;try{n=await c.getIndex(t.Collection)}catch{const e=await c.createIndex(t.Collection),s=await((e,t)=>new Promise((async r=>{var n,s;let a=0,i=gn.TASK_ENQUEUED;for(;i!==gn.TASK_SUCCEEDED&&i!==gn.TASK_FAILED&&i!==gn.TASK_CANCELED;){const r=await e.getTask(t.taskUid);if(i=r.status,i===gn.TASK_FAILED&&(null==(n=r.error)||n.code,null==(s=r.error)||s.message),5===a)break;await Ps(5e3),a++}i===gn.TASK_FAILED&&r(new Fs(!1,i)),r(new Fs(!0,""))})))(c,e);s.Success?n=await c.getIndex(t.Collection):(r.warn(`Unable to create index for collection ${t.Collection}`),r.warn(s.Message))}if(null==n)return;const s=new o(t.Collection,{schema:e});for(let e=0;;e+=100){const a=await s.readByQuery({fields:t.Fields,filter:t.QueryFilter,limit:100,offset:e}),i=[];if(!a||!a.length)break;for(const e of a){const r=Ls(e);r.collection=t.Collection,i.push(r)}await n.updateDocuments(i),r.info(`Updated ${i.length} entities in meilisearch index ${t.Collection}.`)}}))),r.info("Finished reindexing.")}))})),t("server.start",(async()=>{const e=new i({schema:l});if(void 0===(await e.readByQuery()).find((e=>e.collection===a)))return await e.createOne($n),r.info("directus-extension-meilisearch-integration: Meilisearch Settings table created."),r.info("directus-extension-meilisearch-integration: To activate the extension fill out the settings and restart Directus."),void r.info("directus-extension-meilisearch-integration: Exiting.");await e.updateOne(a,$n),r.info("directus-extension-meilisearch-integration: Meilisearch Settings table updated.");const n=new o("meilisearch_settings",{schema:l}),s=await n.readOne("1"),u=new Is(s);if(0===u.Host.length||0===u.Key.length||0===u.CollectionsConfiguration.length)return;r.info("directus-extension-meilisearch-integration: Integration status OK.");const c=new Nn({host:u.Host,apiKey:u.Key});for(const e of u.CollectionsConfiguration)t(`${e.Collection}.items.create`,(async(t,n)=>{const s=new o(e.Collection,{schema:n.schema,accountability:n.accountability}),a=t.key,i=await s.readMany([a],{fields:e.Fields,filter:e.ActionFilter});if(0===i.length)return;const l=i[0],u=c.index(e.Collection),d=Ls(l);d.collection=e.Collection,await u.addDocuments(d),r.info(`Added entity with id: "${a}" to meilisearch.`)})),t(`${e.Collection}.items.update`,(async(t,n)=>{const s=new o(e.Collection,{schema:n.schema,accountability:n.accountability}),a=t.keys[0],i=c.index(e.Collection),l=await s.readMany([a],{fields:e.Fields,filter:e.ActionFilter});if(0===l.length)return void await i.deleteDocument(a);const u=l[0],d=Ls(u);d.collection=e.Collection,await i.updateDocuments(d),r.info(`Updated entity with id: "${a}" in meilisearch.`)})),t(`${e.Collection}.items.delete`,(async(t,n)=>{const s=t.keys[0],a=c.index(e.Collection);await a.deleteDocument(s),r.info(`Deleted entity with id: "${s}" in meilisearch.`)}))}))};export{Bs as default};