@fabricmc/cli 0.1.488 → 0.1.491

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/bundled.mjs +87 -87
  2. package/package.json +1 -1
package/bundled.mjs CHANGED
@@ -5,70 +5,70 @@
5
5
  * The source code for this tool can be found at: https://github.com/FabricMC/fabricmc.net
6
6
  */
7
7
  import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
8
- var Xy=Object.create;var Eu=Object.defineProperty;var zy=Object.getOwnPropertyDescriptor;var qy=Object.getOwnPropertyNames;var Ky=Object.getPrototypeOf,$y=Object.prototype.hasOwnProperty;var We=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(e,i)=>(typeof require<"u"?require:e)[i]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+r+'" is not supported')});var ae=(r,e)=>()=>{try{return e||r((e={exports:{}}).exports,e),e.exports}catch(i){throw e=0,i}};var eC=(r,e,i,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let A of qy(e))!$y.call(r,A)&&A!==i&&Eu(r,A,{get:()=>e[A],enumerable:!(a=zy(e,A))||a.enumerable});return r};var bn=(r,e,i)=>(i=r!=null?Xy(Ky(r)):{},eC(e||!r||!r.__esModule?Eu(i,"default",{value:r,enumerable:!0}):i,r));var xn=ae(lo=>{var Fs=class extends Error{constructor(e,i,a){super(a),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=i,this.exitCode=e,this.nestedError=void 0}},Ao=class extends Fs{constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};lo.CommanderError=Fs;lo.InvalidArgumentError=Ao});var Ts=ae(uo=>{var{InvalidArgumentError:tC}=xn(),co=class{constructor(e,i){switch(this.description=i||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e;break}this._name.endsWith("...")&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_collectValue(e,i){return i===this.defaultValue||!Array.isArray(i)?[e]:(i.push(e),i)}default(e,i){return this.defaultValue=e,this.defaultValueDescription=i,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(i,a)=>{if(!this.argChoices.includes(i))throw new tC(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(i,a):i},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function rC(r){let e=r.name()+(r.variadic===!0?"...":"");return r.required?"<"+e+">":"["+e+"]"}uo.Argument=co;uo.humanReadableArgName=rC});var po=ae(fo=>{var{humanReadableArgName:iC}=Ts(),ho=class{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(e){this.helpWidth=this.helpWidth??e.helpWidth??80}visibleCommands(e){let i=e.commands.filter(A=>!A._hidden),a=e._getHelpCommand();return a&&!a._hidden&&i.push(a),this.sortSubcommands&&i.sort((A,c)=>A.name().localeCompare(c.name())),i}compareOptions(e,i){let a=A=>A.short?A.short.replace(/^-/,""):A.long.replace(/^--/,"");return a(e).localeCompare(a(i))}visibleOptions(e){let i=e.options.filter(A=>!A.hidden),a=e._getHelpOption();if(a&&!a.hidden){let A=a.short&&e._findOption(a.short),c=a.long&&e._findOption(a.long);!A&&!c?i.push(a):a.long&&!c?i.push(e.createOption(a.long,a.description)):a.short&&!A&&i.push(e.createOption(a.short,a.description))}return this.sortOptions&&i.sort(this.compareOptions),i}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];let i=[];for(let a=e.parent;a;a=a.parent){let A=a.options.filter(c=>!c.hidden);i.push(...A)}return this.sortOptions&&i.sort(this.compareOptions),i}visibleArguments(e){return e._argsDescription&&e.registeredArguments.forEach(i=>{i.description=i.description||e._argsDescription[i.name()]||""}),e.registeredArguments.find(i=>i.description)?e.registeredArguments:[]}subcommandTerm(e){let i=e.registeredArguments.map(a=>iC(a)).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(i?" "+i:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,i){return i.visibleCommands(e).reduce((a,A)=>Math.max(a,this.displayWidth(i.styleSubcommandTerm(i.subcommandTerm(A)))),0)}longestOptionTermLength(e,i){return i.visibleOptions(e).reduce((a,A)=>Math.max(a,this.displayWidth(i.styleOptionTerm(i.optionTerm(A)))),0)}longestGlobalOptionTermLength(e,i){return i.visibleGlobalOptions(e).reduce((a,A)=>Math.max(a,this.displayWidth(i.styleOptionTerm(i.optionTerm(A)))),0)}longestArgumentTermLength(e,i){return i.visibleArguments(e).reduce((a,A)=>Math.max(a,this.displayWidth(i.styleArgumentTerm(i.argumentTerm(A)))),0)}commandUsage(e){let i=e._name;e._aliases[0]&&(i=i+"|"+e._aliases[0]);let a="";for(let A=e.parent;A;A=A.parent)a=A.name()+" "+a;return a+i+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){let i=[];if(e.argChoices&&i.push(`choices: ${e.argChoices.map(a=>JSON.stringify(a)).join(", ")}`),e.defaultValue!==void 0&&(e.required||e.optional||e.isBoolean()&&typeof e.defaultValue=="boolean")&&i.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),e.presetArg!==void 0&&e.optional&&i.push(`preset: ${JSON.stringify(e.presetArg)}`),e.envVar!==void 0&&i.push(`env: ${e.envVar}`),i.length>0){let a=`(${i.join(", ")})`;return e.description?`${e.description} ${a}`:a}return e.description}argumentDescription(e){let i=[];if(e.argChoices&&i.push(`choices: ${e.argChoices.map(a=>JSON.stringify(a)).join(", ")}`),e.defaultValue!==void 0&&i.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),i.length>0){let a=`(${i.join(", ")})`;return e.description?`${e.description} ${a}`:a}return e.description}formatItemList(e,i,a){return i.length===0?[]:[a.styleTitle(e),...i,""]}groupItems(e,i,a){let A=new Map;return e.forEach(c=>{let u=a(c);A.has(u)||A.set(u,[])}),i.forEach(c=>{let u=a(c);A.has(u)||A.set(u,[]),A.get(u).push(c)}),A}formatHelp(e,i){let a=i.padWidth(e,i),A=i.helpWidth??80;function c(E,b){return i.formatItem(E,a,b,i)}let u=[`${i.styleTitle("Usage:")} ${i.styleUsage(i.commandUsage(e))}`,""],f=i.commandDescription(e);f.length>0&&(u=u.concat([i.boxWrap(i.styleCommandDescription(f),A),""]));let p=i.visibleArguments(e).map(E=>c(i.styleArgumentTerm(i.argumentTerm(E)),i.styleArgumentDescription(i.argumentDescription(E))));if(u=u.concat(this.formatItemList("Arguments:",p,i)),this.groupItems(e.options,i.visibleOptions(e),E=>E.helpGroupHeading??"Options:").forEach((E,b)=>{let y=E.map(Q=>c(i.styleOptionTerm(i.optionTerm(Q)),i.styleOptionDescription(i.optionDescription(Q))));u=u.concat(this.formatItemList(b,y,i))}),i.showGlobalOptions){let E=i.visibleGlobalOptions(e).map(b=>c(i.styleOptionTerm(i.optionTerm(b)),i.styleOptionDescription(i.optionDescription(b))));u=u.concat(this.formatItemList("Global Options:",E,i))}return this.groupItems(e.commands,i.visibleCommands(e),E=>E.helpGroup()||"Commands:").forEach((E,b)=>{let y=E.map(Q=>c(i.styleSubcommandTerm(i.subcommandTerm(Q)),i.styleSubcommandDescription(i.subcommandDescription(Q))));u=u.concat(this.formatItemList(b,y,i))}),u.join(`
9
- `)}displayWidth(e){return wu(e).length}styleTitle(e){return e}styleUsage(e){return e.split(" ").map(i=>i==="[options]"?this.styleOptionText(i):i==="[command]"?this.styleSubcommandText(i):i[0]==="["||i[0]==="<"?this.styleArgumentText(i):this.styleCommandText(i)).join(" ")}styleCommandDescription(e){return this.styleDescriptionText(e)}styleOptionDescription(e){return this.styleDescriptionText(e)}styleSubcommandDescription(e){return this.styleDescriptionText(e)}styleArgumentDescription(e){return this.styleDescriptionText(e)}styleDescriptionText(e){return e}styleOptionTerm(e){return this.styleOptionText(e)}styleSubcommandTerm(e){return e.split(" ").map(i=>i==="[options]"?this.styleOptionText(i):i[0]==="["||i[0]==="<"?this.styleArgumentText(i):this.styleSubcommandText(i)).join(" ")}styleArgumentTerm(e){return this.styleArgumentText(e)}styleOptionText(e){return e}styleArgumentText(e){return e}styleSubcommandText(e){return e}styleCommandText(e){return e}padWidth(e,i){return Math.max(i.longestOptionTermLength(e,i),i.longestGlobalOptionTermLength(e,i),i.longestSubcommandTermLength(e,i),i.longestArgumentTermLength(e,i))}preformatted(e){return/\n[^\S\r\n]/.test(e)}formatItem(e,i,a,A){let u=" ".repeat(2);if(!a)return u+e;let f=e.padEnd(i+e.length-A.displayWidth(e)),p=2,m=(this.helpWidth??80)-i-p-2,E;return m<this.minWidthToWrap||A.preformatted(a)?E=a:E=A.boxWrap(a,m).replace(/\n/g,`
8
+ var Xy=Object.create;var Eu=Object.defineProperty;var zy=Object.getOwnPropertyDescriptor;var qy=Object.getOwnPropertyNames;var Ky=Object.getPrototypeOf,$y=Object.prototype.hasOwnProperty;var We=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(e,i)=>(typeof require<"u"?require:e)[i]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+r+'" is not supported')});var oe=(r,e)=>()=>{try{return e||r((e={exports:{}}).exports,e),e.exports}catch(i){throw e=0,i}};var eC=(r,e,i,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let A of qy(e))!$y.call(r,A)&&A!==i&&Eu(r,A,{get:()=>e[A],enumerable:!(o=zy(e,A))||o.enumerable});return r};var bn=(r,e,i)=>(i=r!=null?Xy(Ky(r)):{},eC(e||!r||!r.__esModule?Eu(i,"default",{value:r,enumerable:!0}):i,r));var xn=oe(ca=>{var Fs=class extends Error{constructor(e,i,o){super(o),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=i,this.exitCode=e,this.nestedError=void 0}},la=class extends Fs{constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};ca.CommanderError=Fs;ca.InvalidArgumentError=la});var Ts=oe(ha=>{var{InvalidArgumentError:tC}=xn(),ua=class{constructor(e,i){switch(this.description=i||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e;break}this._name.endsWith("...")&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_collectValue(e,i){return i===this.defaultValue||!Array.isArray(i)?[e]:(i.push(e),i)}default(e,i){return this.defaultValue=e,this.defaultValueDescription=i,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(i,o)=>{if(!this.argChoices.includes(i))throw new tC(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(i,o):i},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function rC(r){let e=r.name()+(r.variadic===!0?"...":"");return r.required?"<"+e+">":"["+e+"]"}ha.Argument=ua;ha.humanReadableArgName=rC});var da=oe(pa=>{var{humanReadableArgName:iC}=Ts(),fa=class{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(e){this.helpWidth=this.helpWidth??e.helpWidth??80}visibleCommands(e){let i=e.commands.filter(A=>!A._hidden),o=e._getHelpCommand();return o&&!o._hidden&&i.push(o),this.sortSubcommands&&i.sort((A,c)=>A.name().localeCompare(c.name())),i}compareOptions(e,i){let o=A=>A.short?A.short.replace(/^-/,""):A.long.replace(/^--/,"");return o(e).localeCompare(o(i))}visibleOptions(e){let i=e.options.filter(A=>!A.hidden),o=e._getHelpOption();if(o&&!o.hidden){let A=o.short&&e._findOption(o.short),c=o.long&&e._findOption(o.long);!A&&!c?i.push(o):o.long&&!c?i.push(e.createOption(o.long,o.description)):o.short&&!A&&i.push(e.createOption(o.short,o.description))}return this.sortOptions&&i.sort(this.compareOptions),i}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];let i=[];for(let o=e.parent;o;o=o.parent){let A=o.options.filter(c=>!c.hidden);i.push(...A)}return this.sortOptions&&i.sort(this.compareOptions),i}visibleArguments(e){return e._argsDescription&&e.registeredArguments.forEach(i=>{i.description=i.description||e._argsDescription[i.name()]||""}),e.registeredArguments.find(i=>i.description)?e.registeredArguments:[]}subcommandTerm(e){let i=e.registeredArguments.map(o=>iC(o)).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(i?" "+i:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,i){return i.visibleCommands(e).reduce((o,A)=>Math.max(o,this.displayWidth(i.styleSubcommandTerm(i.subcommandTerm(A)))),0)}longestOptionTermLength(e,i){return i.visibleOptions(e).reduce((o,A)=>Math.max(o,this.displayWidth(i.styleOptionTerm(i.optionTerm(A)))),0)}longestGlobalOptionTermLength(e,i){return i.visibleGlobalOptions(e).reduce((o,A)=>Math.max(o,this.displayWidth(i.styleOptionTerm(i.optionTerm(A)))),0)}longestArgumentTermLength(e,i){return i.visibleArguments(e).reduce((o,A)=>Math.max(o,this.displayWidth(i.styleArgumentTerm(i.argumentTerm(A)))),0)}commandUsage(e){let i=e._name;e._aliases[0]&&(i=i+"|"+e._aliases[0]);let o="";for(let A=e.parent;A;A=A.parent)o=A.name()+" "+o;return o+i+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){let i=[];if(e.argChoices&&i.push(`choices: ${e.argChoices.map(o=>JSON.stringify(o)).join(", ")}`),e.defaultValue!==void 0&&(e.required||e.optional||e.isBoolean()&&typeof e.defaultValue=="boolean")&&i.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),e.presetArg!==void 0&&e.optional&&i.push(`preset: ${JSON.stringify(e.presetArg)}`),e.envVar!==void 0&&i.push(`env: ${e.envVar}`),i.length>0){let o=`(${i.join(", ")})`;return e.description?`${e.description} ${o}`:o}return e.description}argumentDescription(e){let i=[];if(e.argChoices&&i.push(`choices: ${e.argChoices.map(o=>JSON.stringify(o)).join(", ")}`),e.defaultValue!==void 0&&i.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),i.length>0){let o=`(${i.join(", ")})`;return e.description?`${e.description} ${o}`:o}return e.description}formatItemList(e,i,o){return i.length===0?[]:[o.styleTitle(e),...i,""]}groupItems(e,i,o){let A=new Map;return e.forEach(c=>{let u=o(c);A.has(u)||A.set(u,[])}),i.forEach(c=>{let u=o(c);A.has(u)||A.set(u,[]),A.get(u).push(c)}),A}formatHelp(e,i){let o=i.padWidth(e,i),A=i.helpWidth??80;function c(E,b){return i.formatItem(E,o,b,i)}let u=[`${i.styleTitle("Usage:")} ${i.styleUsage(i.commandUsage(e))}`,""],f=i.commandDescription(e);f.length>0&&(u=u.concat([i.boxWrap(i.styleCommandDescription(f),A),""]));let p=i.visibleArguments(e).map(E=>c(i.styleArgumentTerm(i.argumentTerm(E)),i.styleArgumentDescription(i.argumentDescription(E))));if(u=u.concat(this.formatItemList("Arguments:",p,i)),this.groupItems(e.options,i.visibleOptions(e),E=>E.helpGroupHeading??"Options:").forEach((E,b)=>{let y=E.map(Q=>c(i.styleOptionTerm(i.optionTerm(Q)),i.styleOptionDescription(i.optionDescription(Q))));u=u.concat(this.formatItemList(b,y,i))}),i.showGlobalOptions){let E=i.visibleGlobalOptions(e).map(b=>c(i.styleOptionTerm(i.optionTerm(b)),i.styleOptionDescription(i.optionDescription(b))));u=u.concat(this.formatItemList("Global Options:",E,i))}return this.groupItems(e.commands,i.visibleCommands(e),E=>E.helpGroup()||"Commands:").forEach((E,b)=>{let y=E.map(Q=>c(i.styleSubcommandTerm(i.subcommandTerm(Q)),i.styleSubcommandDescription(i.subcommandDescription(Q))));u=u.concat(this.formatItemList(b,y,i))}),u.join(`
9
+ `)}displayWidth(e){return wu(e).length}styleTitle(e){return e}styleUsage(e){return e.split(" ").map(i=>i==="[options]"?this.styleOptionText(i):i==="[command]"?this.styleSubcommandText(i):i[0]==="["||i[0]==="<"?this.styleArgumentText(i):this.styleCommandText(i)).join(" ")}styleCommandDescription(e){return this.styleDescriptionText(e)}styleOptionDescription(e){return this.styleDescriptionText(e)}styleSubcommandDescription(e){return this.styleDescriptionText(e)}styleArgumentDescription(e){return this.styleDescriptionText(e)}styleDescriptionText(e){return e}styleOptionTerm(e){return this.styleOptionText(e)}styleSubcommandTerm(e){return e.split(" ").map(i=>i==="[options]"?this.styleOptionText(i):i[0]==="["||i[0]==="<"?this.styleArgumentText(i):this.styleSubcommandText(i)).join(" ")}styleArgumentTerm(e){return this.styleArgumentText(e)}styleOptionText(e){return e}styleArgumentText(e){return e}styleSubcommandText(e){return e}styleCommandText(e){return e}padWidth(e,i){return Math.max(i.longestOptionTermLength(e,i),i.longestGlobalOptionTermLength(e,i),i.longestSubcommandTermLength(e,i),i.longestArgumentTermLength(e,i))}preformatted(e){return/\n[^\S\r\n]/.test(e)}formatItem(e,i,o,A){let u=" ".repeat(2);if(!o)return u+e;let f=e.padEnd(i+e.length-A.displayWidth(e)),p=2,m=(this.helpWidth??80)-i-p-2,E;return m<this.minWidthToWrap||A.preformatted(o)?E=o:E=A.boxWrap(o,m).replace(/\n/g,`
10
10
  `+" ".repeat(i+p)),u+f+" ".repeat(p)+E.replace(/\n/g,`
11
- ${u}`)}boxWrap(e,i){if(i<this.minWidthToWrap)return e;let a=e.split(/\r\n|\n/),A=/[\s]*[^\s]+/g,c=[];return a.forEach(u=>{let f=u.match(A);if(f===null){c.push("");return}let p=[f.shift()],g=this.displayWidth(p[0]);f.forEach(m=>{let E=this.displayWidth(m);if(g+E<=i){p.push(m),g+=E;return}c.push(p.join(""));let b=m.trimStart();p=[b],g=this.displayWidth(b)}),c.push(p.join(""))}),c.join(`
12
- `)}};function wu(r){let e=/\x1b\[\d*(;\d*)*m/g;return r.replace(e,"")}fo.Help=ho;fo.stripColor=wu});var Eo=ae(Bo=>{var{InvalidArgumentError:nC}=xn(),go=class{constructor(e,i){this.flags=e,this.description=i||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;let a=sC(e);this.short=a.shortFlag,this.long=a.longFlag,this.negate=!1,this.long&&(this.negate=this.long.startsWith("--no-")),this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0,this.helpGroupHeading=void 0}default(e,i){return this.defaultValue=e,this.defaultValueDescription=i,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){let i=e;return typeof e=="string"&&(i={[e]:!0}),this.implied=Object.assign(this.implied||{},i),this}env(e){return this.envVar=e,this}argParser(e){return this.parseArg=e,this}makeOptionMandatory(e=!0){return this.mandatory=!!e,this}hideHelp(e=!0){return this.hidden=!!e,this}_collectValue(e,i){return i===this.defaultValue||!Array.isArray(i)?[e]:(i.push(e),i)}choices(e){return this.argChoices=e.slice(),this.parseArg=(i,a)=>{if(!this.argChoices.includes(i))throw new nC(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(i,a):i},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.negate?yu(this.name().replace(/^no-/,"")):yu(this.name())}helpGroup(e){return this.helpGroupHeading=e,this}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}},mo=class{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach(i=>{i.negate?this.negativeOptions.set(i.attributeName(),i):this.positiveOptions.set(i.attributeName(),i)}),this.negativeOptions.forEach((i,a)=>{this.positiveOptions.has(a)&&this.dualOptions.add(a)})}valueFromOption(e,i){let a=i.attributeName();if(!this.dualOptions.has(a))return!0;let A=this.negativeOptions.get(a).presetArg,c=A!==void 0?A:!1;return i.negate===(c===e)}};function yu(r){return r.split("-").reduce((e,i)=>e+i[0].toUpperCase()+i.slice(1))}function sC(r){let e,i,a=/^-[^-]$/,A=/^--[^-]/,c=r.split(/[ |,]+/).concat("guard");if(a.test(c[0])&&(e=c.shift()),A.test(c[0])&&(i=c.shift()),!e&&a.test(c[0])&&(e=c.shift()),!e&&A.test(c[0])&&(e=i,i=c.shift()),c[0].startsWith("-")){let u=c[0],f=`option creation failed due to '${u}' in option flags '${r}'`;throw/^-[^-][^-]/.test(u)?new Error(`${f}
11
+ ${u}`)}boxWrap(e,i){if(i<this.minWidthToWrap)return e;let o=e.split(/\r\n|\n/),A=/[\s]*[^\s]+/g,c=[];return o.forEach(u=>{let f=u.match(A);if(f===null){c.push("");return}let p=[f.shift()],g=this.displayWidth(p[0]);f.forEach(m=>{let E=this.displayWidth(m);if(g+E<=i){p.push(m),g+=E;return}c.push(p.join(""));let b=m.trimStart();p=[b],g=this.displayWidth(b)}),c.push(p.join(""))}),c.join(`
12
+ `)}};function wu(r){let e=/\x1b\[\d*(;\d*)*m/g;return r.replace(e,"")}pa.Help=fa;pa.stripColor=wu});var Ea=oe(Ba=>{var{InvalidArgumentError:nC}=xn(),ga=class{constructor(e,i){this.flags=e,this.description=i||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;let o=sC(e);this.short=o.shortFlag,this.long=o.longFlag,this.negate=!1,this.long&&(this.negate=this.long.startsWith("--no-")),this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0,this.helpGroupHeading=void 0}default(e,i){return this.defaultValue=e,this.defaultValueDescription=i,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){let i=e;return typeof e=="string"&&(i={[e]:!0}),this.implied=Object.assign(this.implied||{},i),this}env(e){return this.envVar=e,this}argParser(e){return this.parseArg=e,this}makeOptionMandatory(e=!0){return this.mandatory=!!e,this}hideHelp(e=!0){return this.hidden=!!e,this}_collectValue(e,i){return i===this.defaultValue||!Array.isArray(i)?[e]:(i.push(e),i)}choices(e){return this.argChoices=e.slice(),this.parseArg=(i,o)=>{if(!this.argChoices.includes(i))throw new nC(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(i,o):i},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.negate?yu(this.name().replace(/^no-/,"")):yu(this.name())}helpGroup(e){return this.helpGroupHeading=e,this}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}},ma=class{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach(i=>{i.negate?this.negativeOptions.set(i.attributeName(),i):this.positiveOptions.set(i.attributeName(),i)}),this.negativeOptions.forEach((i,o)=>{this.positiveOptions.has(o)&&this.dualOptions.add(o)})}valueFromOption(e,i){let o=i.attributeName();if(!this.dualOptions.has(o))return!0;let A=this.negativeOptions.get(o).presetArg,c=A!==void 0?A:!1;return i.negate===(c===e)}};function yu(r){return r.split("-").reduce((e,i)=>e+i[0].toUpperCase()+i.slice(1))}function sC(r){let e,i,o=/^-[^-]$/,A=/^--[^-]/,c=r.split(/[ |,]+/).concat("guard");if(o.test(c[0])&&(e=c.shift()),A.test(c[0])&&(i=c.shift()),!e&&o.test(c[0])&&(e=c.shift()),!e&&A.test(c[0])&&(e=i,i=c.shift()),c[0].startsWith("-")){let u=c[0],f=`option creation failed due to '${u}' in option flags '${r}'`;throw/^-[^-][^-]/.test(u)?new Error(`${f}
13
13
  - a short flag is a single dash and a single character
14
14
  - either use a single dash and a single character (for a short flag)
15
- - or use a double dash for a long option (and can have two, like '--ws, --workspace')`):a.test(u)?new Error(`${f}
15
+ - or use a double dash for a long option (and can have two, like '--ws, --workspace')`):o.test(u)?new Error(`${f}
16
16
  - too many short flags`):A.test(u)?new Error(`${f}
17
17
  - too many long flags`):new Error(`${f}
18
- - unrecognised flag format`)}if(e===void 0&&i===void 0)throw new Error(`option creation failed due to no flags found in '${r}'.`);return{shortFlag:e,longFlag:i}}Bo.Option=go;Bo.DualOptions=mo});var bu=ae(Cu=>{function aC(r,e){if(Math.abs(r.length-e.length)>3)return Math.max(r.length,e.length);let i=[];for(let a=0;a<=r.length;a++)i[a]=[a];for(let a=0;a<=e.length;a++)i[0][a]=a;for(let a=1;a<=e.length;a++)for(let A=1;A<=r.length;A++){let c=1;r[A-1]===e[a-1]?c=0:c=1,i[A][a]=Math.min(i[A-1][a]+1,i[A][a-1]+1,i[A-1][a-1]+c),A>1&&a>1&&r[A-1]===e[a-2]&&r[A-2]===e[a-1]&&(i[A][a]=Math.min(i[A][a],i[A-2][a-2]+1))}return i[r.length][e.length]}function oC(r,e){if(!e||e.length===0)return"";e=Array.from(new Set(e));let i=r.startsWith("--");i&&(r=r.slice(2),e=e.map(u=>u.slice(2)));let a=[],A=3,c=.4;return e.forEach(u=>{if(u.length<=1)return;let f=aC(r,u),p=Math.max(r.length,u.length);(p-f)/p>c&&(f<A?(A=f,a=[u]):f===A&&a.push(u))}),a.sort((u,f)=>u.localeCompare(f)),i&&(a=a.map(u=>`--${u}`)),a.length>1?`
19
- (Did you mean one of ${a.join(", ")}?)`:a.length===1?`
20
- (Did you mean ${a[0]}?)`:""}Cu.suggestSimilar=oC});var Iu=ae(xo=>{var AC=We("node:events").EventEmitter,wo=We("node:child_process"),Ur=We("node:path"),Ss=We("node:fs"),qe=We("node:process"),{Argument:lC,humanReadableArgName:cC}=Ts(),{CommanderError:yo}=xn(),{Help:uC,stripColor:hC}=po(),{Option:xu,DualOptions:fC}=Eo(),{suggestSimilar:Qu}=bu(),Co=class r extends AC{constructor(e){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!1,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=e||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._savedState=null,this._outputConfiguration={writeOut:i=>qe.stdout.write(i),writeErr:i=>qe.stderr.write(i),outputError:(i,a)=>a(i),getOutHelpWidth:()=>qe.stdout.isTTY?qe.stdout.columns:void 0,getErrHelpWidth:()=>qe.stderr.isTTY?qe.stderr.columns:void 0,getOutHasColors:()=>bo()??(qe.stdout.isTTY&&qe.stdout.hasColors?.()),getErrHasColors:()=>bo()??(qe.stderr.isTTY&&qe.stderr.hasColors?.()),stripColor:i=>hC(i)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={},this._helpGroupHeading=void 0,this._defaultCommandGroup=void 0,this._defaultOptionGroup=void 0}copyInheritedSettings(e){return this._outputConfiguration=e._outputConfiguration,this._helpOption=e._helpOption,this._helpCommand=e._helpCommand,this._helpConfiguration=e._helpConfiguration,this._exitCallback=e._exitCallback,this._storeOptionsAsProperties=e._storeOptionsAsProperties,this._combineFlagAndOptionalValue=e._combineFlagAndOptionalValue,this._allowExcessArguments=e._allowExcessArguments,this._enablePositionalOptions=e._enablePositionalOptions,this._showHelpAfterError=e._showHelpAfterError,this._showSuggestionAfterError=e._showSuggestionAfterError,this}_getCommandAndAncestors(){let e=[];for(let i=this;i;i=i.parent)e.push(i);return e}command(e,i,a){let A=i,c=a;typeof A=="object"&&A!==null&&(c=A,A=null),c=c||{};let[,u,f]=e.match(/([^ ]+) *(.*)/),p=this.createCommand(u);return A&&(p.description(A),p._executableHandler=!0),c.isDefault&&(this._defaultCommandName=p._name),p._hidden=!!(c.noHelp||c.hidden),p._executableFile=c.executableFile||null,f&&p.arguments(f),this._registerCommand(p),p.parent=this,p.copyInheritedSettings(this),A?this:p}createCommand(e){return new r(e)}createHelp(){return Object.assign(new uC,this.configureHelp())}configureHelp(e){return e===void 0?this._helpConfiguration:(this._helpConfiguration=e,this)}configureOutput(e){return e===void 0?this._outputConfiguration:(this._outputConfiguration={...this._outputConfiguration,...e},this)}showHelpAfterError(e=!0){return typeof e!="string"&&(e=!!e),this._showHelpAfterError=e,this}showSuggestionAfterError(e=!0){return this._showSuggestionAfterError=!!e,this}addCommand(e,i){if(!e._name)throw new Error(`Command passed to .addCommand() must have a name
21
- - specify the name in Command constructor or using .name()`);return i=i||{},i.isDefault&&(this._defaultCommandName=e._name),(i.noHelp||i.hidden)&&(e._hidden=!0),this._registerCommand(e),e.parent=this,e._checkForBrokenPassThrough(),this}createArgument(e,i){return new lC(e,i)}argument(e,i,a,A){let c=this.createArgument(e,i);return typeof a=="function"?c.default(A).argParser(a):c.default(a),this.addArgument(c),this}arguments(e){return e.trim().split(/ +/).forEach(i=>{this.argument(i)}),this}addArgument(e){let i=this.registeredArguments.slice(-1)[0];if(i?.variadic)throw new Error(`only the last argument can be variadic '${i.name()}'`);if(e.required&&e.defaultValue!==void 0&&e.parseArg===void 0)throw new Error(`a default value for a required argument is never used: '${e.name()}'`);return this.registeredArguments.push(e),this}helpCommand(e,i){if(typeof e=="boolean")return this._addImplicitHelpCommand=e,e&&this._defaultCommandGroup&&this._initCommandGroup(this._getHelpCommand()),this;let a=e??"help [command]",[,A,c]=a.match(/([^ ]+) *(.*)/),u=i??"display help for command",f=this.createCommand(A);return f.helpOption(!1),c&&f.arguments(c),u&&f.description(u),this._addImplicitHelpCommand=!0,this._helpCommand=f,(e||i)&&this._initCommandGroup(f),this}addHelpCommand(e,i){return typeof e!="object"?(this.helpCommand(e,i),this):(this._addImplicitHelpCommand=!0,this._helpCommand=e,this._initCommandGroup(e),this)}_getHelpCommand(){return this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))?(this._helpCommand===void 0&&this.helpCommand(void 0,void 0),this._helpCommand):null}hook(e,i){let a=["preSubcommand","preAction","postAction"];if(!a.includes(e))throw new Error(`Unexpected value for event passed to hook : '${e}'.
22
- Expecting one of '${a.join("', '")}'`);return this._lifeCycleHooks[e]?this._lifeCycleHooks[e].push(i):this._lifeCycleHooks[e]=[i],this}exitOverride(e){return e?this._exitCallback=e:this._exitCallback=i=>{if(i.code!=="commander.executeSubCommandAsync")throw i},this}_exit(e,i,a){this._exitCallback&&this._exitCallback(new yo(e,i,a)),qe.exit(e)}action(e){let i=a=>{let A=this.registeredArguments.length,c=a.slice(0,A);return this._storeOptionsAsProperties?c[A]=this:c[A]=this.opts(),c.push(this),e.apply(this,c)};return this._actionHandler=i,this}createOption(e,i){return new xu(e,i)}_callParseArg(e,i,a,A){try{return e.parseArg(i,a)}catch(c){if(c.code==="commander.invalidArgument"){let u=`${A} ${c.message}`;this.error(u,{exitCode:c.exitCode,code:c.code})}throw c}}_registerOption(e){let i=e.short&&this._findOption(e.short)||e.long&&this._findOption(e.long);if(i){let a=e.long&&this._findOption(e.long)?e.long:e.short;throw new Error(`Cannot add option '${e.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${a}'
23
- - already used by option '${i.flags}'`)}this._initOptionGroup(e),this.options.push(e)}_registerCommand(e){let i=A=>[A.name()].concat(A.aliases()),a=i(e).find(A=>this._findCommand(A));if(a){let A=i(this._findCommand(a)).join("|"),c=i(e).join("|");throw new Error(`cannot add command '${c}' as already have command '${A}'`)}this._initCommandGroup(e),this.commands.push(e)}addOption(e){this._registerOption(e);let i=e.name(),a=e.attributeName();if(e.negate){let c=e.long.replace(/^--no-/,"--");this._findOption(c)||this.setOptionValueWithSource(a,e.defaultValue===void 0?!0:e.defaultValue,"default")}else e.defaultValue!==void 0&&this.setOptionValueWithSource(a,e.defaultValue,"default");let A=(c,u,f)=>{c==null&&e.presetArg!==void 0&&(c=e.presetArg);let p=this.getOptionValue(a);c!==null&&e.parseArg?c=this._callParseArg(e,c,p,u):c!==null&&e.variadic&&(c=e._collectValue(c,p)),c==null&&(e.negate?c=!1:e.isBoolean()||e.optional?c=!0:c=""),this.setOptionValueWithSource(a,c,f)};return this.on("option:"+i,c=>{let u=`error: option '${e.flags}' argument '${c}' is invalid.`;A(c,u,"cli")}),e.envVar&&this.on("optionEnv:"+i,c=>{let u=`error: option '${e.flags}' value '${c}' from env '${e.envVar}' is invalid.`;A(c,u,"env")}),this}_optionEx(e,i,a,A,c){if(typeof i=="object"&&i instanceof xu)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");let u=this.createOption(i,a);if(u.makeOptionMandatory(!!e.mandatory),typeof A=="function")u.default(c).argParser(A);else if(A instanceof RegExp){let f=A;A=(p,g)=>{let m=f.exec(p);return m?m[0]:g},u.default(c).argParser(A)}else u.default(A);return this.addOption(u)}option(e,i,a,A){return this._optionEx({},e,i,a,A)}requiredOption(e,i,a,A){return this._optionEx({mandatory:!0},e,i,a,A)}combineFlagAndOptionalValue(e=!0){return this._combineFlagAndOptionalValue=!!e,this}allowUnknownOption(e=!0){return this._allowUnknownOption=!!e,this}allowExcessArguments(e=!0){return this._allowExcessArguments=!!e,this}enablePositionalOptions(e=!0){return this._enablePositionalOptions=!!e,this}passThroughOptions(e=!0){return this._passThroughOptions=!!e,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties(e=!0){if(this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw new Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!e,this}getOptionValue(e){return this._storeOptionsAsProperties?this[e]:this._optionValues[e]}setOptionValue(e,i){return this.setOptionValueWithSource(e,i,void 0)}setOptionValueWithSource(e,i,a){return this._storeOptionsAsProperties?this[e]=i:this._optionValues[e]=i,this._optionValueSources[e]=a,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let i;return this._getCommandAndAncestors().forEach(a=>{a.getOptionValueSource(e)!==void 0&&(i=a.getOptionValueSource(e))}),i}_prepareUserArgs(e,i){if(e!==void 0&&!Array.isArray(e))throw new Error("first parameter to parse must be array or undefined");if(i=i||{},e===void 0&&i.from===void 0){qe.versions?.electron&&(i.from="electron");let A=qe.execArgv??[];(A.includes("-e")||A.includes("--eval")||A.includes("-p")||A.includes("--print"))&&(i.from="eval")}e===void 0&&(e=qe.argv),this.rawArgs=e.slice();let a;switch(i.from){case void 0:case"node":this._scriptPath=e[1],a=e.slice(2);break;case"electron":qe.defaultApp?(this._scriptPath=e[1],a=e.slice(2)):a=e.slice(1);break;case"user":a=e.slice(0);break;case"eval":a=e.slice(1);break;default:throw new Error(`unexpected parse option { from: '${i.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",a}parse(e,i){this._prepareForParse();let a=this._prepareUserArgs(e,i);return this._parseCommand([],a),this}async parseAsync(e,i){this._prepareForParse();let a=this._prepareUserArgs(e,i);return await this._parseCommand([],a),this}_prepareForParse(){this._savedState===null?this.saveStateBeforeParse():this.restoreStateBeforeParse()}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw new Error(`Can not call parse again when storeOptionsAsProperties is true.
24
- - either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(e,i,a){if(Ss.existsSync(e))return;let A=i?`searched for local subcommand relative to directory '${i}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",c=`'${e}' does not exist
25
- - if '${a}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
18
+ - unrecognised flag format`)}if(e===void 0&&i===void 0)throw new Error(`option creation failed due to no flags found in '${r}'.`);return{shortFlag:e,longFlag:i}}Ba.Option=ga;Ba.DualOptions=ma});var bu=oe(Cu=>{function oC(r,e){if(Math.abs(r.length-e.length)>3)return Math.max(r.length,e.length);let i=[];for(let o=0;o<=r.length;o++)i[o]=[o];for(let o=0;o<=e.length;o++)i[0][o]=o;for(let o=1;o<=e.length;o++)for(let A=1;A<=r.length;A++){let c=1;r[A-1]===e[o-1]?c=0:c=1,i[A][o]=Math.min(i[A-1][o]+1,i[A][o-1]+1,i[A-1][o-1]+c),A>1&&o>1&&r[A-1]===e[o-2]&&r[A-2]===e[o-1]&&(i[A][o]=Math.min(i[A][o],i[A-2][o-2]+1))}return i[r.length][e.length]}function aC(r,e){if(!e||e.length===0)return"";e=Array.from(new Set(e));let i=r.startsWith("--");i&&(r=r.slice(2),e=e.map(u=>u.slice(2)));let o=[],A=3,c=.4;return e.forEach(u=>{if(u.length<=1)return;let f=oC(r,u),p=Math.max(r.length,u.length);(p-f)/p>c&&(f<A?(A=f,o=[u]):f===A&&o.push(u))}),o.sort((u,f)=>u.localeCompare(f)),i&&(o=o.map(u=>`--${u}`)),o.length>1?`
19
+ (Did you mean one of ${o.join(", ")}?)`:o.length===1?`
20
+ (Did you mean ${o[0]}?)`:""}Cu.suggestSimilar=aC});var Iu=oe(xa=>{var AC=We("node:events").EventEmitter,wa=We("node:child_process"),Ur=We("node:path"),Ss=We("node:fs"),qe=We("node:process"),{Argument:lC,humanReadableArgName:cC}=Ts(),{CommanderError:ya}=xn(),{Help:uC,stripColor:hC}=da(),{Option:xu,DualOptions:fC}=Ea(),{suggestSimilar:Qu}=bu(),Ca=class r extends AC{constructor(e){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!1,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=e||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._savedState=null,this._outputConfiguration={writeOut:i=>qe.stdout.write(i),writeErr:i=>qe.stderr.write(i),outputError:(i,o)=>o(i),getOutHelpWidth:()=>qe.stdout.isTTY?qe.stdout.columns:void 0,getErrHelpWidth:()=>qe.stderr.isTTY?qe.stderr.columns:void 0,getOutHasColors:()=>ba()??(qe.stdout.isTTY&&qe.stdout.hasColors?.()),getErrHasColors:()=>ba()??(qe.stderr.isTTY&&qe.stderr.hasColors?.()),stripColor:i=>hC(i)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={},this._helpGroupHeading=void 0,this._defaultCommandGroup=void 0,this._defaultOptionGroup=void 0}copyInheritedSettings(e){return this._outputConfiguration=e._outputConfiguration,this._helpOption=e._helpOption,this._helpCommand=e._helpCommand,this._helpConfiguration=e._helpConfiguration,this._exitCallback=e._exitCallback,this._storeOptionsAsProperties=e._storeOptionsAsProperties,this._combineFlagAndOptionalValue=e._combineFlagAndOptionalValue,this._allowExcessArguments=e._allowExcessArguments,this._enablePositionalOptions=e._enablePositionalOptions,this._showHelpAfterError=e._showHelpAfterError,this._showSuggestionAfterError=e._showSuggestionAfterError,this}_getCommandAndAncestors(){let e=[];for(let i=this;i;i=i.parent)e.push(i);return e}command(e,i,o){let A=i,c=o;typeof A=="object"&&A!==null&&(c=A,A=null),c=c||{};let[,u,f]=e.match(/([^ ]+) *(.*)/),p=this.createCommand(u);return A&&(p.description(A),p._executableHandler=!0),c.isDefault&&(this._defaultCommandName=p._name),p._hidden=!!(c.noHelp||c.hidden),p._executableFile=c.executableFile||null,f&&p.arguments(f),this._registerCommand(p),p.parent=this,p.copyInheritedSettings(this),A?this:p}createCommand(e){return new r(e)}createHelp(){return Object.assign(new uC,this.configureHelp())}configureHelp(e){return e===void 0?this._helpConfiguration:(this._helpConfiguration=e,this)}configureOutput(e){return e===void 0?this._outputConfiguration:(this._outputConfiguration={...this._outputConfiguration,...e},this)}showHelpAfterError(e=!0){return typeof e!="string"&&(e=!!e),this._showHelpAfterError=e,this}showSuggestionAfterError(e=!0){return this._showSuggestionAfterError=!!e,this}addCommand(e,i){if(!e._name)throw new Error(`Command passed to .addCommand() must have a name
21
+ - specify the name in Command constructor or using .name()`);return i=i||{},i.isDefault&&(this._defaultCommandName=e._name),(i.noHelp||i.hidden)&&(e._hidden=!0),this._registerCommand(e),e.parent=this,e._checkForBrokenPassThrough(),this}createArgument(e,i){return new lC(e,i)}argument(e,i,o,A){let c=this.createArgument(e,i);return typeof o=="function"?c.default(A).argParser(o):c.default(o),this.addArgument(c),this}arguments(e){return e.trim().split(/ +/).forEach(i=>{this.argument(i)}),this}addArgument(e){let i=this.registeredArguments.slice(-1)[0];if(i?.variadic)throw new Error(`only the last argument can be variadic '${i.name()}'`);if(e.required&&e.defaultValue!==void 0&&e.parseArg===void 0)throw new Error(`a default value for a required argument is never used: '${e.name()}'`);return this.registeredArguments.push(e),this}helpCommand(e,i){if(typeof e=="boolean")return this._addImplicitHelpCommand=e,e&&this._defaultCommandGroup&&this._initCommandGroup(this._getHelpCommand()),this;let o=e??"help [command]",[,A,c]=o.match(/([^ ]+) *(.*)/),u=i??"display help for command",f=this.createCommand(A);return f.helpOption(!1),c&&f.arguments(c),u&&f.description(u),this._addImplicitHelpCommand=!0,this._helpCommand=f,(e||i)&&this._initCommandGroup(f),this}addHelpCommand(e,i){return typeof e!="object"?(this.helpCommand(e,i),this):(this._addImplicitHelpCommand=!0,this._helpCommand=e,this._initCommandGroup(e),this)}_getHelpCommand(){return this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))?(this._helpCommand===void 0&&this.helpCommand(void 0,void 0),this._helpCommand):null}hook(e,i){let o=["preSubcommand","preAction","postAction"];if(!o.includes(e))throw new Error(`Unexpected value for event passed to hook : '${e}'.
22
+ Expecting one of '${o.join("', '")}'`);return this._lifeCycleHooks[e]?this._lifeCycleHooks[e].push(i):this._lifeCycleHooks[e]=[i],this}exitOverride(e){return e?this._exitCallback=e:this._exitCallback=i=>{if(i.code!=="commander.executeSubCommandAsync")throw i},this}_exit(e,i,o){this._exitCallback&&this._exitCallback(new ya(e,i,o)),qe.exit(e)}action(e){let i=o=>{let A=this.registeredArguments.length,c=o.slice(0,A);return this._storeOptionsAsProperties?c[A]=this:c[A]=this.opts(),c.push(this),e.apply(this,c)};return this._actionHandler=i,this}createOption(e,i){return new xu(e,i)}_callParseArg(e,i,o,A){try{return e.parseArg(i,o)}catch(c){if(c.code==="commander.invalidArgument"){let u=`${A} ${c.message}`;this.error(u,{exitCode:c.exitCode,code:c.code})}throw c}}_registerOption(e){let i=e.short&&this._findOption(e.short)||e.long&&this._findOption(e.long);if(i){let o=e.long&&this._findOption(e.long)?e.long:e.short;throw new Error(`Cannot add option '${e.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${o}'
23
+ - already used by option '${i.flags}'`)}this._initOptionGroup(e),this.options.push(e)}_registerCommand(e){let i=A=>[A.name()].concat(A.aliases()),o=i(e).find(A=>this._findCommand(A));if(o){let A=i(this._findCommand(o)).join("|"),c=i(e).join("|");throw new Error(`cannot add command '${c}' as already have command '${A}'`)}this._initCommandGroup(e),this.commands.push(e)}addOption(e){this._registerOption(e);let i=e.name(),o=e.attributeName();if(e.negate){let c=e.long.replace(/^--no-/,"--");this._findOption(c)||this.setOptionValueWithSource(o,e.defaultValue===void 0?!0:e.defaultValue,"default")}else e.defaultValue!==void 0&&this.setOptionValueWithSource(o,e.defaultValue,"default");let A=(c,u,f)=>{c==null&&e.presetArg!==void 0&&(c=e.presetArg);let p=this.getOptionValue(o);c!==null&&e.parseArg?c=this._callParseArg(e,c,p,u):c!==null&&e.variadic&&(c=e._collectValue(c,p)),c==null&&(e.negate?c=!1:e.isBoolean()||e.optional?c=!0:c=""),this.setOptionValueWithSource(o,c,f)};return this.on("option:"+i,c=>{let u=`error: option '${e.flags}' argument '${c}' is invalid.`;A(c,u,"cli")}),e.envVar&&this.on("optionEnv:"+i,c=>{let u=`error: option '${e.flags}' value '${c}' from env '${e.envVar}' is invalid.`;A(c,u,"env")}),this}_optionEx(e,i,o,A,c){if(typeof i=="object"&&i instanceof xu)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");let u=this.createOption(i,o);if(u.makeOptionMandatory(!!e.mandatory),typeof A=="function")u.default(c).argParser(A);else if(A instanceof RegExp){let f=A;A=(p,g)=>{let m=f.exec(p);return m?m[0]:g},u.default(c).argParser(A)}else u.default(A);return this.addOption(u)}option(e,i,o,A){return this._optionEx({},e,i,o,A)}requiredOption(e,i,o,A){return this._optionEx({mandatory:!0},e,i,o,A)}combineFlagAndOptionalValue(e=!0){return this._combineFlagAndOptionalValue=!!e,this}allowUnknownOption(e=!0){return this._allowUnknownOption=!!e,this}allowExcessArguments(e=!0){return this._allowExcessArguments=!!e,this}enablePositionalOptions(e=!0){return this._enablePositionalOptions=!!e,this}passThroughOptions(e=!0){return this._passThroughOptions=!!e,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties(e=!0){if(this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw new Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!e,this}getOptionValue(e){return this._storeOptionsAsProperties?this[e]:this._optionValues[e]}setOptionValue(e,i){return this.setOptionValueWithSource(e,i,void 0)}setOptionValueWithSource(e,i,o){return this._storeOptionsAsProperties?this[e]=i:this._optionValues[e]=i,this._optionValueSources[e]=o,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let i;return this._getCommandAndAncestors().forEach(o=>{o.getOptionValueSource(e)!==void 0&&(i=o.getOptionValueSource(e))}),i}_prepareUserArgs(e,i){if(e!==void 0&&!Array.isArray(e))throw new Error("first parameter to parse must be array or undefined");if(i=i||{},e===void 0&&i.from===void 0){qe.versions?.electron&&(i.from="electron");let A=qe.execArgv??[];(A.includes("-e")||A.includes("--eval")||A.includes("-p")||A.includes("--print"))&&(i.from="eval")}e===void 0&&(e=qe.argv),this.rawArgs=e.slice();let o;switch(i.from){case void 0:case"node":this._scriptPath=e[1],o=e.slice(2);break;case"electron":qe.defaultApp?(this._scriptPath=e[1],o=e.slice(2)):o=e.slice(1);break;case"user":o=e.slice(0);break;case"eval":o=e.slice(1);break;default:throw new Error(`unexpected parse option { from: '${i.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",o}parse(e,i){this._prepareForParse();let o=this._prepareUserArgs(e,i);return this._parseCommand([],o),this}async parseAsync(e,i){this._prepareForParse();let o=this._prepareUserArgs(e,i);return await this._parseCommand([],o),this}_prepareForParse(){this._savedState===null?this.saveStateBeforeParse():this.restoreStateBeforeParse()}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw new Error(`Can not call parse again when storeOptionsAsProperties is true.
24
+ - either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(e,i,o){if(Ss.existsSync(e))return;let A=i?`searched for local subcommand relative to directory '${i}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",c=`'${e}' does not exist
25
+ - if '${o}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
26
26
  - if the default executable name is not suitable, use the executableFile option to supply a custom name or path
27
- - ${A}`;throw new Error(c)}_executeSubCommand(e,i){i=i.slice();let a=!1,A=[".js",".ts",".tsx",".mjs",".cjs"];function c(m,E){let b=Ur.resolve(m,E);if(Ss.existsSync(b))return b;if(A.includes(Ur.extname(E)))return;let y=A.find(Q=>Ss.existsSync(`${b}${Q}`));if(y)return`${b}${y}`}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let u=e._executableFile||`${this._name}-${e._name}`,f=this._executableDir||"";if(this._scriptPath){let m;try{m=Ss.realpathSync(this._scriptPath)}catch{m=this._scriptPath}f=Ur.resolve(Ur.dirname(m),f)}if(f){let m=c(f,u);if(!m&&!e._executableFile&&this._scriptPath){let E=Ur.basename(this._scriptPath,Ur.extname(this._scriptPath));E!==this._name&&(m=c(f,`${E}-${e._name}`))}u=m||u}a=A.includes(Ur.extname(u));let p;qe.platform!=="win32"?a?(i.unshift(u),i=vu(qe.execArgv).concat(i),p=wo.spawn(qe.argv[0],i,{stdio:"inherit"})):p=wo.spawn(u,i,{stdio:"inherit"}):(this._checkForMissingExecutable(u,f,e._name),i.unshift(u),i=vu(qe.execArgv).concat(i),p=wo.spawn(qe.execPath,i,{stdio:"inherit"})),p.killed||["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach(E=>{qe.on(E,()=>{p.killed===!1&&p.exitCode===null&&p.kill(E)})});let g=this._exitCallback;p.on("close",m=>{m=m??1,g?g(new yo(m,"commander.executeSubCommandAsync","(close)")):qe.exit(m)}),p.on("error",m=>{if(m.code==="ENOENT")this._checkForMissingExecutable(u,f,e._name);else if(m.code==="EACCES")throw new Error(`'${u}' not executable`);if(!g)qe.exit(1);else{let E=new yo(1,"commander.executeSubCommandAsync","(error)");E.nestedError=m,g(E)}}),this.runningCommand=p}_dispatchSubcommand(e,i,a){let A=this._findCommand(e);A||this.help({error:!0}),A._prepareForParse();let c;return c=this._chainOrCallSubCommandHook(c,A,"preSubcommand"),c=this._chainOrCall(c,()=>{if(A._executableHandler)this._executeSubCommand(A,i.concat(a));else return A._parseCommand(i,a)}),c}_dispatchHelpCommand(e){e||this.help();let i=this._findCommand(e);return i&&!i._executableHandler&&i.help(),this._dispatchSubcommand(e,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){this.registeredArguments.forEach((e,i)=>{e.required&&this.args[i]==null&&this.missingArgument(e.name())}),!(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)&&this.args.length>this.registeredArguments.length&&this._excessArguments(this.args)}_processArguments(){let e=(a,A,c)=>{let u=A;if(A!==null&&a.parseArg){let f=`error: command-argument value '${A}' is invalid for argument '${a.name()}'.`;u=this._callParseArg(a,A,c,f)}return u};this._checkNumberOfArguments();let i=[];this.registeredArguments.forEach((a,A)=>{let c=a.defaultValue;a.variadic?A<this.args.length?(c=this.args.slice(A),a.parseArg&&(c=c.reduce((u,f)=>e(a,f,u),a.defaultValue))):c===void 0&&(c=[]):A<this.args.length&&(c=this.args[A],a.parseArg&&(c=e(a,c,a.defaultValue))),i[A]=c}),this.processedArgs=i}_chainOrCall(e,i){return e?.then&&typeof e.then=="function"?e.then(()=>i()):i()}_chainOrCallHooks(e,i){let a=e,A=[];return this._getCommandAndAncestors().reverse().filter(c=>c._lifeCycleHooks[i]!==void 0).forEach(c=>{c._lifeCycleHooks[i].forEach(u=>{A.push({hookedCommand:c,callback:u})})}),i==="postAction"&&A.reverse(),A.forEach(c=>{a=this._chainOrCall(a,()=>c.callback(c.hookedCommand,this))}),a}_chainOrCallSubCommandHook(e,i,a){let A=e;return this._lifeCycleHooks[a]!==void 0&&this._lifeCycleHooks[a].forEach(c=>{A=this._chainOrCall(A,()=>c(this,i))}),A}_parseCommand(e,i){let a=this.parseOptions(i);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(a.operands),i=a.unknown,this.args=e.concat(i),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),i);if(this._getHelpCommand()&&e[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(e[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(i),this._dispatchSubcommand(this._defaultCommandName,e,i);this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName&&this.help({error:!0}),this._outputHelpIfRequested(a.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let A=()=>{a.unknown.length>0&&this.unknownOption(a.unknown[0])},c=`command:${this.name()}`;if(this._actionHandler){A(),this._processArguments();let u;return u=this._chainOrCallHooks(u,"preAction"),u=this._chainOrCall(u,()=>this._actionHandler(this.processedArgs)),this.parent&&(u=this._chainOrCall(u,()=>{this.parent.emit(c,e,i)})),u=this._chainOrCallHooks(u,"postAction"),u}if(this.parent?.listenerCount(c))A(),this._processArguments(),this.parent.emit(c,e,i);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,i);this.listenerCount("command:*")?this.emit("command:*",e,i):this.commands.length?this.unknownCommand():(A(),this._processArguments())}else this.commands.length?(A(),this.help({error:!0})):(A(),this._processArguments())}_findCommand(e){if(e)return this.commands.find(i=>i._name===e||i._aliases.includes(e))}_findOption(e){return this.options.find(i=>i.is(e))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(e=>{e.options.forEach(i=>{i.mandatory&&e.getOptionValue(i.attributeName())===void 0&&e.missingMandatoryOptionValue(i)})})}_checkForConflictingLocalOptions(){let e=this.options.filter(a=>{let A=a.attributeName();return this.getOptionValue(A)===void 0?!1:this.getOptionValueSource(A)!=="default"});e.filter(a=>a.conflictsWith.length>0).forEach(a=>{let A=e.find(c=>a.conflictsWith.includes(c.attributeName()));A&&this._conflictingOption(a,A)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(e=>{e._checkForConflictingLocalOptions()})}parseOptions(e){let i=[],a=[],A=i;function c(m){return m.length>1&&m[0]==="-"}let u=m=>/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(m)?!this._getCommandAndAncestors().some(E=>E.options.map(b=>b.short).some(b=>/^-\d$/.test(b))):!1,f=null,p=null,g=0;for(;g<e.length||p;){let m=p??e[g++];if(p=null,m==="--"){A===a&&A.push(m),A.push(...e.slice(g));break}if(f&&(!c(m)||u(m))){this.emit(`option:${f.name()}`,m);continue}if(f=null,c(m)){let E=this._findOption(m);if(E){if(E.required){let b=e[g++];b===void 0&&this.optionMissingArgument(E),this.emit(`option:${E.name()}`,b)}else if(E.optional){let b=null;g<e.length&&(!c(e[g])||u(e[g]))&&(b=e[g++]),this.emit(`option:${E.name()}`,b)}else this.emit(`option:${E.name()}`);f=E.variadic?E:null;continue}}if(m.length>2&&m[0]==="-"&&m[1]!=="-"){let E=this._findOption(`-${m[1]}`);if(E){E.required||E.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${E.name()}`,m.slice(2)):(this.emit(`option:${E.name()}`),p=`-${m.slice(2)}`);continue}}if(/^--[^=]+=/.test(m)){let E=m.indexOf("="),b=this._findOption(m.slice(0,E));if(b&&(b.required||b.optional)){this.emit(`option:${b.name()}`,m.slice(E+1));continue}}if(A===i&&c(m)&&!(this.commands.length===0&&u(m))&&(A=a),(this._enablePositionalOptions||this._passThroughOptions)&&i.length===0&&a.length===0){if(this._findCommand(m)){i.push(m),a.push(...e.slice(g));break}else if(this._getHelpCommand()&&m===this._getHelpCommand().name()){i.push(m,...e.slice(g));break}else if(this._defaultCommandName){a.push(m,...e.slice(g));break}}if(this._passThroughOptions){A.push(m,...e.slice(g));break}A.push(m)}return{operands:i,unknown:a}}opts(){if(this._storeOptionsAsProperties){let e={},i=this.options.length;for(let a=0;a<i;a++){let A=this.options[a].attributeName();e[A]=A===this._versionOptionName?this._version:this[A]}return e}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((e,i)=>Object.assign(e,i.opts()),{})}error(e,i){this._outputConfiguration.outputError(`${e}
27
+ - ${A}`;throw new Error(c)}_executeSubCommand(e,i){i=i.slice();let o=!1,A=[".js",".ts",".tsx",".mjs",".cjs"];function c(m,E){let b=Ur.resolve(m,E);if(Ss.existsSync(b))return b;if(A.includes(Ur.extname(E)))return;let y=A.find(Q=>Ss.existsSync(`${b}${Q}`));if(y)return`${b}${y}`}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let u=e._executableFile||`${this._name}-${e._name}`,f=this._executableDir||"";if(this._scriptPath){let m;try{m=Ss.realpathSync(this._scriptPath)}catch{m=this._scriptPath}f=Ur.resolve(Ur.dirname(m),f)}if(f){let m=c(f,u);if(!m&&!e._executableFile&&this._scriptPath){let E=Ur.basename(this._scriptPath,Ur.extname(this._scriptPath));E!==this._name&&(m=c(f,`${E}-${e._name}`))}u=m||u}o=A.includes(Ur.extname(u));let p;qe.platform!=="win32"?o?(i.unshift(u),i=vu(qe.execArgv).concat(i),p=wa.spawn(qe.argv[0],i,{stdio:"inherit"})):p=wa.spawn(u,i,{stdio:"inherit"}):(this._checkForMissingExecutable(u,f,e._name),i.unshift(u),i=vu(qe.execArgv).concat(i),p=wa.spawn(qe.execPath,i,{stdio:"inherit"})),p.killed||["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach(E=>{qe.on(E,()=>{p.killed===!1&&p.exitCode===null&&p.kill(E)})});let g=this._exitCallback;p.on("close",m=>{m=m??1,g?g(new ya(m,"commander.executeSubCommandAsync","(close)")):qe.exit(m)}),p.on("error",m=>{if(m.code==="ENOENT")this._checkForMissingExecutable(u,f,e._name);else if(m.code==="EACCES")throw new Error(`'${u}' not executable`);if(!g)qe.exit(1);else{let E=new ya(1,"commander.executeSubCommandAsync","(error)");E.nestedError=m,g(E)}}),this.runningCommand=p}_dispatchSubcommand(e,i,o){let A=this._findCommand(e);A||this.help({error:!0}),A._prepareForParse();let c;return c=this._chainOrCallSubCommandHook(c,A,"preSubcommand"),c=this._chainOrCall(c,()=>{if(A._executableHandler)this._executeSubCommand(A,i.concat(o));else return A._parseCommand(i,o)}),c}_dispatchHelpCommand(e){e||this.help();let i=this._findCommand(e);return i&&!i._executableHandler&&i.help(),this._dispatchSubcommand(e,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){this.registeredArguments.forEach((e,i)=>{e.required&&this.args[i]==null&&this.missingArgument(e.name())}),!(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)&&this.args.length>this.registeredArguments.length&&this._excessArguments(this.args)}_processArguments(){let e=(o,A,c)=>{let u=A;if(A!==null&&o.parseArg){let f=`error: command-argument value '${A}' is invalid for argument '${o.name()}'.`;u=this._callParseArg(o,A,c,f)}return u};this._checkNumberOfArguments();let i=[];this.registeredArguments.forEach((o,A)=>{let c=o.defaultValue;o.variadic?A<this.args.length?(c=this.args.slice(A),o.parseArg&&(c=c.reduce((u,f)=>e(o,f,u),o.defaultValue))):c===void 0&&(c=[]):A<this.args.length&&(c=this.args[A],o.parseArg&&(c=e(o,c,o.defaultValue))),i[A]=c}),this.processedArgs=i}_chainOrCall(e,i){return e?.then&&typeof e.then=="function"?e.then(()=>i()):i()}_chainOrCallHooks(e,i){let o=e,A=[];return this._getCommandAndAncestors().reverse().filter(c=>c._lifeCycleHooks[i]!==void 0).forEach(c=>{c._lifeCycleHooks[i].forEach(u=>{A.push({hookedCommand:c,callback:u})})}),i==="postAction"&&A.reverse(),A.forEach(c=>{o=this._chainOrCall(o,()=>c.callback(c.hookedCommand,this))}),o}_chainOrCallSubCommandHook(e,i,o){let A=e;return this._lifeCycleHooks[o]!==void 0&&this._lifeCycleHooks[o].forEach(c=>{A=this._chainOrCall(A,()=>c(this,i))}),A}_parseCommand(e,i){let o=this.parseOptions(i);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(o.operands),i=o.unknown,this.args=e.concat(i),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),i);if(this._getHelpCommand()&&e[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(e[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(i),this._dispatchSubcommand(this._defaultCommandName,e,i);this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName&&this.help({error:!0}),this._outputHelpIfRequested(o.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let A=()=>{o.unknown.length>0&&this.unknownOption(o.unknown[0])},c=`command:${this.name()}`;if(this._actionHandler){A(),this._processArguments();let u;return u=this._chainOrCallHooks(u,"preAction"),u=this._chainOrCall(u,()=>this._actionHandler(this.processedArgs)),this.parent&&(u=this._chainOrCall(u,()=>{this.parent.emit(c,e,i)})),u=this._chainOrCallHooks(u,"postAction"),u}if(this.parent?.listenerCount(c))A(),this._processArguments(),this.parent.emit(c,e,i);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,i);this.listenerCount("command:*")?this.emit("command:*",e,i):this.commands.length?this.unknownCommand():(A(),this._processArguments())}else this.commands.length?(A(),this.help({error:!0})):(A(),this._processArguments())}_findCommand(e){if(e)return this.commands.find(i=>i._name===e||i._aliases.includes(e))}_findOption(e){return this.options.find(i=>i.is(e))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(e=>{e.options.forEach(i=>{i.mandatory&&e.getOptionValue(i.attributeName())===void 0&&e.missingMandatoryOptionValue(i)})})}_checkForConflictingLocalOptions(){let e=this.options.filter(o=>{let A=o.attributeName();return this.getOptionValue(A)===void 0?!1:this.getOptionValueSource(A)!=="default"});e.filter(o=>o.conflictsWith.length>0).forEach(o=>{let A=e.find(c=>o.conflictsWith.includes(c.attributeName()));A&&this._conflictingOption(o,A)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(e=>{e._checkForConflictingLocalOptions()})}parseOptions(e){let i=[],o=[],A=i;function c(m){return m.length>1&&m[0]==="-"}let u=m=>/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(m)?!this._getCommandAndAncestors().some(E=>E.options.map(b=>b.short).some(b=>/^-\d$/.test(b))):!1,f=null,p=null,g=0;for(;g<e.length||p;){let m=p??e[g++];if(p=null,m==="--"){A===o&&A.push(m),A.push(...e.slice(g));break}if(f&&(!c(m)||u(m))){this.emit(`option:${f.name()}`,m);continue}if(f=null,c(m)){let E=this._findOption(m);if(E){if(E.required){let b=e[g++];b===void 0&&this.optionMissingArgument(E),this.emit(`option:${E.name()}`,b)}else if(E.optional){let b=null;g<e.length&&(!c(e[g])||u(e[g]))&&(b=e[g++]),this.emit(`option:${E.name()}`,b)}else this.emit(`option:${E.name()}`);f=E.variadic?E:null;continue}}if(m.length>2&&m[0]==="-"&&m[1]!=="-"){let E=this._findOption(`-${m[1]}`);if(E){E.required||E.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${E.name()}`,m.slice(2)):(this.emit(`option:${E.name()}`),p=`-${m.slice(2)}`);continue}}if(/^--[^=]+=/.test(m)){let E=m.indexOf("="),b=this._findOption(m.slice(0,E));if(b&&(b.required||b.optional)){this.emit(`option:${b.name()}`,m.slice(E+1));continue}}if(A===i&&c(m)&&!(this.commands.length===0&&u(m))&&(A=o),(this._enablePositionalOptions||this._passThroughOptions)&&i.length===0&&o.length===0){if(this._findCommand(m)){i.push(m),o.push(...e.slice(g));break}else if(this._getHelpCommand()&&m===this._getHelpCommand().name()){i.push(m,...e.slice(g));break}else if(this._defaultCommandName){o.push(m,...e.slice(g));break}}if(this._passThroughOptions){A.push(m,...e.slice(g));break}A.push(m)}return{operands:i,unknown:o}}opts(){if(this._storeOptionsAsProperties){let e={},i=this.options.length;for(let o=0;o<i;o++){let A=this.options[o].attributeName();e[A]=A===this._versionOptionName?this._version:this[A]}return e}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((e,i)=>Object.assign(e,i.opts()),{})}error(e,i){this._outputConfiguration.outputError(`${e}
28
28
  `,this._outputConfiguration.writeErr),typeof this._showHelpAfterError=="string"?this._outputConfiguration.writeErr(`${this._showHelpAfterError}
29
29
  `):this._showHelpAfterError&&(this._outputConfiguration.writeErr(`
30
- `),this.outputHelp({error:!0}));let a=i||{},A=a.exitCode||1,c=a.code||"commander.error";this._exit(A,c,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in qe.env){let i=e.attributeName();(this.getOptionValue(i)===void 0||["default","config","env"].includes(this.getOptionValueSource(i)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,qe.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new fC(this.options),i=a=>this.getOptionValue(a)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(a));this.options.filter(a=>a.implied!==void 0&&i(a.attributeName())&&e.valueFromOption(this.getOptionValue(a.attributeName()),a)).forEach(a=>{Object.keys(a.implied).filter(A=>!i(A)).forEach(A=>{this.setOptionValueWithSource(A,a.implied[A],"implied")})})}missingArgument(e){let i=`error: missing required argument '${e}'`;this.error(i,{code:"commander.missingArgument"})}optionMissingArgument(e){let i=`error: option '${e.flags}' argument missing`;this.error(i,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let i=`error: required option '${e.flags}' not specified`;this.error(i,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,i){let a=u=>{let f=u.attributeName(),p=this.getOptionValue(f),g=this.options.find(E=>E.negate&&f===E.attributeName()),m=this.options.find(E=>!E.negate&&f===E.attributeName());return g&&(g.presetArg===void 0&&p===!1||g.presetArg!==void 0&&p===g.presetArg)?g:m||u},A=u=>{let f=a(u),p=f.attributeName();return this.getOptionValueSource(p)==="env"?`environment variable '${f.envVar}'`:`option '${f.flags}'`},c=`error: ${A(e)} cannot be used with ${A(i)}`;this.error(c,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let i="";if(e.startsWith("--")&&this._showSuggestionAfterError){let A=[],c=this;do{let u=c.createHelp().visibleOptions(c).filter(f=>f.long).map(f=>f.long);A=A.concat(u),c=c.parent}while(c&&!c._enablePositionalOptions);i=Qu(e,A)}let a=`error: unknown option '${e}'${i}`;this.error(a,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let i=this.registeredArguments.length,a=i===1?"":"s",c=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${i} argument${a} but got ${e.length}.`;this.error(c,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],i="";if(this._showSuggestionAfterError){let A=[];this.createHelp().visibleCommands(this).forEach(c=>{A.push(c.name()),c.alias()&&A.push(c.alias())}),i=Qu(e,A)}let a=`error: unknown command '${e}'${i}`;this.error(a,{code:"commander.unknownCommand"})}version(e,i,a){if(e===void 0)return this._version;this._version=e,i=i||"-V, --version",a=a||"output the version number";let A=this.createOption(i,a);return this._versionOptionName=A.attributeName(),this._registerOption(A),this.on("option:"+A.name(),()=>{this._outputConfiguration.writeOut(`${e}
31
- `),this._exit(0,"commander.version",e)}),this}description(e,i){return e===void 0&&i===void 0?this._description:(this._description=e,i&&(this._argsDescription=i),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let i=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(i=this.commands[this.commands.length-1]),e===i._name)throw new Error("Command alias can't be the same as its name");let a=this.parent?._findCommand(e);if(a){let A=[a.name()].concat(a.aliases()).join("|");throw new Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${A}'`)}return i._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(i=>this.alias(i)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let i=this.registeredArguments.map(a=>cC(a));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?i:[]).join(" ")}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}helpGroup(e){return e===void 0?this._helpGroupHeading??"":(this._helpGroupHeading=e,this)}commandsGroup(e){return e===void 0?this._defaultCommandGroup??"":(this._defaultCommandGroup=e,this)}optionsGroup(e){return e===void 0?this._defaultOptionGroup??"":(this._defaultOptionGroup=e,this)}_initOptionGroup(e){this._defaultOptionGroup&&!e.helpGroupHeading&&e.helpGroup(this._defaultOptionGroup)}_initCommandGroup(e){this._defaultCommandGroup&&!e.helpGroup()&&e.helpGroup(this._defaultCommandGroup)}nameFromFilename(e){return this._name=Ur.basename(e,Ur.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let i=this.createHelp(),a=this._getOutputContext(e);i.prepareContext({error:a.error,helpWidth:a.helpWidth,outputHasColors:a.hasColors});let A=i.formatHelp(this,i);return a.hasColors?A:this._outputConfiguration.stripColor(A)}_getOutputContext(e){e=e||{};let i=!!e.error,a,A,c;return i?(a=f=>this._outputConfiguration.writeErr(f),A=this._outputConfiguration.getErrHasColors(),c=this._outputConfiguration.getErrHelpWidth()):(a=f=>this._outputConfiguration.writeOut(f),A=this._outputConfiguration.getOutHasColors(),c=this._outputConfiguration.getOutHelpWidth()),{error:i,write:f=>(A||(f=this._outputConfiguration.stripColor(f)),a(f)),hasColors:A,helpWidth:c}}outputHelp(e){let i;typeof e=="function"&&(i=e,e=void 0);let a=this._getOutputContext(e),A={error:a.error,write:a.write,command:this};this._getCommandAndAncestors().reverse().forEach(u=>u.emit("beforeAllHelp",A)),this.emit("beforeHelp",A);let c=this.helpInformation({error:a.error});if(i&&(c=i(c),typeof c!="string"&&!Buffer.isBuffer(c)))throw new Error("outputHelp callback must return a string or a Buffer");a.write(c),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit("afterHelp",A),this._getCommandAndAncestors().forEach(u=>u.emit("afterAllHelp",A))}helpOption(e,i){return typeof e=="boolean"?(e?(this._helpOption===null&&(this._helpOption=void 0),this._defaultOptionGroup&&this._initOptionGroup(this._getHelpOption())):this._helpOption=null,this):(this._helpOption=this.createOption(e??"-h, --help",i??"display help for command"),(e||i)&&this._initOptionGroup(this._helpOption),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(e){return this._helpOption=e,this._initOptionGroup(e),this}help(e){this.outputHelp(e);let i=Number(qe.exitCode??0);i===0&&e&&typeof e!="function"&&e.error&&(i=1),this._exit(i,"commander.help","(outputHelp)")}addHelpText(e,i){let a=["beforeAll","before","after","afterAll"];if(!a.includes(e))throw new Error(`Unexpected value for position to addHelpText.
32
- Expecting one of '${a.join("', '")}'`);let A=`${e}Help`;return this.on(A,c=>{let u;typeof i=="function"?u=i({error:c.error,command:c.command}):u=i,u&&c.write(`${u}
33
- `)}),this}_outputHelpIfRequested(e){let i=this._getHelpOption();i&&e.find(A=>i.is(A))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function vu(r){return r.map(e=>{if(!e.startsWith("--inspect"))return e;let i,a="127.0.0.1",A="9229",c;return(c=e.match(/^(--inspect(-brk)?)$/))!==null?i=c[1]:(c=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(i=c[1],/^\d+$/.test(c[3])?A=c[3]:a=c[3]):(c=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(i=c[1],a=c[3],A=c[4]),i&&A!=="0"?`${i}=${a}:${parseInt(A)+1}`:e})}function bo(){if(qe.env.NO_COLOR||qe.env.FORCE_COLOR==="0"||qe.env.FORCE_COLOR==="false")return!1;if(qe.env.FORCE_COLOR||qe.env.CLICOLOR_FORCE!==void 0)return!0}xo.Command=Co;xo.useColor=bo});var Du=ae(Kt=>{var{Argument:Fu}=Ts(),{Command:Qo}=Iu(),{CommanderError:pC,InvalidArgumentError:Tu}=xn(),{Help:dC}=po(),{Option:Su}=Eo();Kt.program=new Qo;Kt.createCommand=r=>new Qo(r);Kt.createOption=(r,e)=>new Su(r,e);Kt.createArgument=(r,e)=>new Fu(r,e);Kt.Command=Qo;Kt.Option=Su;Kt.Argument=Fu;Kt.Help=dC;Kt.CommanderError=pC;Kt.InvalidArgumentError=Tu;Kt.InvalidOptionArgumentError=Tu});var ft=ae((WD,Dh)=>{"use strict";var{FORCE_COLOR:Qb,NODE_DISABLE_COLORS:vb,TERM:Ib}=process.env,tt={enabled:!vb&&Ib!=="dumb"&&Qb!=="0",reset:At(0,0),bold:At(1,22),dim:At(2,22),italic:At(3,23),underline:At(4,24),inverse:At(7,27),hidden:At(8,28),strikethrough:At(9,29),black:At(30,39),red:At(31,39),green:At(32,39),yellow:At(33,39),blue:At(34,39),magenta:At(35,39),cyan:At(36,39),white:At(37,39),gray:At(90,39),grey:At(90,39),bgBlack:At(40,49),bgRed:At(41,49),bgGreen:At(42,49),bgYellow:At(43,49),bgBlue:At(44,49),bgMagenta:At(45,49),bgCyan:At(46,49),bgWhite:At(47,49)};function Sh(r,e){let i=0,a,A="",c="";for(;i<r.length;i++)a=r[i],A+=a.open,c+=a.close,e.includes(a.close)&&(e=e.replace(a.rgx,a.close+a.open));return A+e+c}function Fb(r,e){let i={has:r,keys:e};return i.reset=tt.reset.bind(i),i.bold=tt.bold.bind(i),i.dim=tt.dim.bind(i),i.italic=tt.italic.bind(i),i.underline=tt.underline.bind(i),i.inverse=tt.inverse.bind(i),i.hidden=tt.hidden.bind(i),i.strikethrough=tt.strikethrough.bind(i),i.black=tt.black.bind(i),i.red=tt.red.bind(i),i.green=tt.green.bind(i),i.yellow=tt.yellow.bind(i),i.blue=tt.blue.bind(i),i.magenta=tt.magenta.bind(i),i.cyan=tt.cyan.bind(i),i.white=tt.white.bind(i),i.gray=tt.gray.bind(i),i.grey=tt.grey.bind(i),i.bgBlack=tt.bgBlack.bind(i),i.bgRed=tt.bgRed.bind(i),i.bgGreen=tt.bgGreen.bind(i),i.bgYellow=tt.bgYellow.bind(i),i.bgBlue=tt.bgBlue.bind(i),i.bgMagenta=tt.bgMagenta.bind(i),i.bgCyan=tt.bgCyan.bind(i),i.bgWhite=tt.bgWhite.bind(i),i}function At(r,e){let i={open:`\x1B[${r}m`,close:`\x1B[${e}m`,rgx:new RegExp(`\\x1b\\[${e}m`,"g")};return function(a){return this!==void 0&&this.has!==void 0?(this.has.includes(r)||(this.has.push(r),this.keys.push(i)),a===void 0?this:tt.enabled?Sh(this.keys,a+""):a+""):a===void 0?Fb([r],[i]):tt.enabled?Sh([i],a+""):a+""}}Dh.exports=tt});var Uh=ae((JD,Mh)=>{"use strict";Mh.exports=(r,e)=>{if(!(r.meta&&r.name!=="escape")){if(r.ctrl){if(r.name==="a")return"first";if(r.name==="c"||r.name==="d")return"abort";if(r.name==="e")return"last";if(r.name==="g")return"reset"}if(e){if(r.name==="j")return"down";if(r.name==="k")return"up"}return r.name==="return"||r.name==="enter"?"submit":r.name==="backspace"?"delete":r.name==="delete"?"deleteForward":r.name==="abort"?"abort":r.name==="escape"?"exit":r.name==="tab"?"next":r.name==="pagedown"?"nextPage":r.name==="pageup"?"prevPage":r.name==="home"?"home":r.name==="end"?"end":r.name==="up"?"up":r.name==="down"?"down":r.name==="right"?"right":r.name==="left"?"left":!1}}});var _s=ae((VD,kh)=>{"use strict";kh.exports=r=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"),i=new RegExp(e,"g");return typeof r=="string"?r.replace(i,""):r}});var pt=ae((jD,Yh)=>{"use strict";var Do={to(r,e){return e?`\x1B[${e+1};${r+1}H`:`\x1B[${r+1}G`},move(r,e){let i="";return r<0?i+=`\x1B[${-r}D`:r>0&&(i+=`\x1B[${r}C`),e<0?i+=`\x1B[${-e}A`:e>0&&(i+=`\x1B[${e}B`),i},up:(r=1)=>`\x1B[${r}A`,down:(r=1)=>`\x1B[${r}B`,forward:(r=1)=>`\x1B[${r}C`,backward:(r=1)=>`\x1B[${r}D`,nextLine:(r=1)=>"\x1B[E".repeat(r),prevLine:(r=1)=>"\x1B[F".repeat(r),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},Tb={up:(r=1)=>"\x1B[S".repeat(r),down:(r=1)=>"\x1B[T".repeat(r)},Sb={screen:"\x1B[2J",up:(r=1)=>"\x1B[1J".repeat(r),down:(r=1)=>"\x1B[J".repeat(r),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(r){let e="";for(let i=0;i<r;i++)e+=this.line+(i<r-1?Do.up():"");return r&&(e+=Do.left),e}};Yh.exports={cursor:Do,scroll:Tb,erase:Sb,beep:"\x07"}});var Lh=ae((_D,Gh)=>{"use strict";function Db(r,e){var i=typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(!i){if(Array.isArray(r)||(i=Mb(r))||e&&r&&typeof r.length=="number"){i&&(r=i);var a=0,A=function(){};return{s:A,n:function(){return a>=r.length?{done:!0}:{done:!1,value:r[a++]}},e:function(g){throw g},f:A}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
34
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c=!0,u=!1,f;return{s:function(){i=i.call(r)},n:function(){var g=i.next();return c=g.done,g},e:function(g){u=!0,f=g},f:function(){try{!c&&i.return!=null&&i.return()}finally{if(u)throw f}}}}function Mb(r,e){if(r){if(typeof r=="string")return Oh(r,e);var i=Object.prototype.toString.call(r).slice(8,-1);if(i==="Object"&&r.constructor&&(i=r.constructor.name),i==="Map"||i==="Set")return Array.from(r);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return Oh(r,e)}}function Oh(r,e){(e==null||e>r.length)&&(e=r.length);for(var i=0,a=new Array(e);i<e;i++)a[i]=r[i];return a}var Ub=_s(),Rh=pt(),Nh=Rh.erase,kb=Rh.cursor,Yb=r=>[...Ub(r)].length;Gh.exports=function(r,e){if(!e)return Nh.line+kb.to(0);let i=0,a=r.split(/\r?\n/);var A=Db(a),c;try{for(A.s();!(c=A.n()).done;){let u=c.value;i+=1+Math.floor(Math.max(Yb(u)-1,0)/e)}}catch(u){A.e(u)}finally{A.f()}return Nh.lines(i)}});var Mo=ae((ZD,Ph)=>{"use strict";var Fn={arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",tick:"\u2714",cross:"\u2716",ellipsis:"\u2026",pointerSmall:"\u203A",line:"\u2500",pointer:"\u276F"},Ob={arrowUp:Fn.arrowUp,arrowDown:Fn.arrowDown,arrowLeft:Fn.arrowLeft,arrowRight:Fn.arrowRight,radioOn:"(*)",radioOff:"( )",tick:"\u221A",cross:"\xD7",ellipsis:"...",pointerSmall:"\xBB",line:"\u2500",pointer:">"},Nb=process.platform==="win32"?Ob:Fn;Ph.exports=Nb});var Wh=ae((XD,Hh)=>{"use strict";var Hi=ft(),wi=Mo(),Uo=Object.freeze({password:{scale:1,render:r=>"*".repeat(r.length)},emoji:{scale:2,render:r=>"\u{1F603}".repeat(r.length)},invisible:{scale:0,render:r=>""},default:{scale:1,render:r=>`${r}`}}),Rb=r=>Uo[r]||Uo.default,Tn=Object.freeze({aborted:Hi.red(wi.cross),done:Hi.green(wi.tick),exited:Hi.yellow(wi.cross),default:Hi.cyan("?")}),Gb=(r,e,i)=>e?Tn.aborted:i?Tn.exited:r?Tn.done:Tn.default,Lb=r=>Hi.gray(r?wi.ellipsis:wi.pointerSmall),Pb=(r,e)=>Hi.gray(r?e?wi.pointerSmall:"+":wi.line);Hh.exports={styles:Uo,render:Rb,symbols:Tn,symbol:Gb,delimiter:Lb,item:Pb}});var Vh=ae((zD,Jh)=>{"use strict";var Hb=_s();Jh.exports=function(r,e){let i=String(Hb(r)||"").split(/\r?\n/);return e?i.map(a=>Math.ceil(a.length/e)).reduce((a,A)=>a+A):i.length}});var _h=ae((qD,jh)=>{"use strict";jh.exports=(r,e={})=>{let i=Number.isSafeInteger(parseInt(e.margin))?new Array(parseInt(e.margin)).fill(" ").join(""):e.margin||"",a=e.width;return(r||"").split(/\r?\n/g).map(A=>A.split(/\s+/g).reduce((c,u)=>(u.length+i.length>=a||c[c.length-1].length+u.length+1<a?c[c.length-1]+=` ${u}`:c.push(`${i}${u}`),c),[i]).join(`
30
+ `),this.outputHelp({error:!0}));let o=i||{},A=o.exitCode||1,c=o.code||"commander.error";this._exit(A,c,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in qe.env){let i=e.attributeName();(this.getOptionValue(i)===void 0||["default","config","env"].includes(this.getOptionValueSource(i)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,qe.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new fC(this.options),i=o=>this.getOptionValue(o)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(o));this.options.filter(o=>o.implied!==void 0&&i(o.attributeName())&&e.valueFromOption(this.getOptionValue(o.attributeName()),o)).forEach(o=>{Object.keys(o.implied).filter(A=>!i(A)).forEach(A=>{this.setOptionValueWithSource(A,o.implied[A],"implied")})})}missingArgument(e){let i=`error: missing required argument '${e}'`;this.error(i,{code:"commander.missingArgument"})}optionMissingArgument(e){let i=`error: option '${e.flags}' argument missing`;this.error(i,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let i=`error: required option '${e.flags}' not specified`;this.error(i,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,i){let o=u=>{let f=u.attributeName(),p=this.getOptionValue(f),g=this.options.find(E=>E.negate&&f===E.attributeName()),m=this.options.find(E=>!E.negate&&f===E.attributeName());return g&&(g.presetArg===void 0&&p===!1||g.presetArg!==void 0&&p===g.presetArg)?g:m||u},A=u=>{let f=o(u),p=f.attributeName();return this.getOptionValueSource(p)==="env"?`environment variable '${f.envVar}'`:`option '${f.flags}'`},c=`error: ${A(e)} cannot be used with ${A(i)}`;this.error(c,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let i="";if(e.startsWith("--")&&this._showSuggestionAfterError){let A=[],c=this;do{let u=c.createHelp().visibleOptions(c).filter(f=>f.long).map(f=>f.long);A=A.concat(u),c=c.parent}while(c&&!c._enablePositionalOptions);i=Qu(e,A)}let o=`error: unknown option '${e}'${i}`;this.error(o,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let i=this.registeredArguments.length,o=i===1?"":"s",c=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${i} argument${o} but got ${e.length}.`;this.error(c,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],i="";if(this._showSuggestionAfterError){let A=[];this.createHelp().visibleCommands(this).forEach(c=>{A.push(c.name()),c.alias()&&A.push(c.alias())}),i=Qu(e,A)}let o=`error: unknown command '${e}'${i}`;this.error(o,{code:"commander.unknownCommand"})}version(e,i,o){if(e===void 0)return this._version;this._version=e,i=i||"-V, --version",o=o||"output the version number";let A=this.createOption(i,o);return this._versionOptionName=A.attributeName(),this._registerOption(A),this.on("option:"+A.name(),()=>{this._outputConfiguration.writeOut(`${e}
31
+ `),this._exit(0,"commander.version",e)}),this}description(e,i){return e===void 0&&i===void 0?this._description:(this._description=e,i&&(this._argsDescription=i),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let i=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(i=this.commands[this.commands.length-1]),e===i._name)throw new Error("Command alias can't be the same as its name");let o=this.parent?._findCommand(e);if(o){let A=[o.name()].concat(o.aliases()).join("|");throw new Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${A}'`)}return i._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(i=>this.alias(i)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let i=this.registeredArguments.map(o=>cC(o));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?i:[]).join(" ")}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}helpGroup(e){return e===void 0?this._helpGroupHeading??"":(this._helpGroupHeading=e,this)}commandsGroup(e){return e===void 0?this._defaultCommandGroup??"":(this._defaultCommandGroup=e,this)}optionsGroup(e){return e===void 0?this._defaultOptionGroup??"":(this._defaultOptionGroup=e,this)}_initOptionGroup(e){this._defaultOptionGroup&&!e.helpGroupHeading&&e.helpGroup(this._defaultOptionGroup)}_initCommandGroup(e){this._defaultCommandGroup&&!e.helpGroup()&&e.helpGroup(this._defaultCommandGroup)}nameFromFilename(e){return this._name=Ur.basename(e,Ur.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let i=this.createHelp(),o=this._getOutputContext(e);i.prepareContext({error:o.error,helpWidth:o.helpWidth,outputHasColors:o.hasColors});let A=i.formatHelp(this,i);return o.hasColors?A:this._outputConfiguration.stripColor(A)}_getOutputContext(e){e=e||{};let i=!!e.error,o,A,c;return i?(o=f=>this._outputConfiguration.writeErr(f),A=this._outputConfiguration.getErrHasColors(),c=this._outputConfiguration.getErrHelpWidth()):(o=f=>this._outputConfiguration.writeOut(f),A=this._outputConfiguration.getOutHasColors(),c=this._outputConfiguration.getOutHelpWidth()),{error:i,write:f=>(A||(f=this._outputConfiguration.stripColor(f)),o(f)),hasColors:A,helpWidth:c}}outputHelp(e){let i;typeof e=="function"&&(i=e,e=void 0);let o=this._getOutputContext(e),A={error:o.error,write:o.write,command:this};this._getCommandAndAncestors().reverse().forEach(u=>u.emit("beforeAllHelp",A)),this.emit("beforeHelp",A);let c=this.helpInformation({error:o.error});if(i&&(c=i(c),typeof c!="string"&&!Buffer.isBuffer(c)))throw new Error("outputHelp callback must return a string or a Buffer");o.write(c),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit("afterHelp",A),this._getCommandAndAncestors().forEach(u=>u.emit("afterAllHelp",A))}helpOption(e,i){return typeof e=="boolean"?(e?(this._helpOption===null&&(this._helpOption=void 0),this._defaultOptionGroup&&this._initOptionGroup(this._getHelpOption())):this._helpOption=null,this):(this._helpOption=this.createOption(e??"-h, --help",i??"display help for command"),(e||i)&&this._initOptionGroup(this._helpOption),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(e){return this._helpOption=e,this._initOptionGroup(e),this}help(e){this.outputHelp(e);let i=Number(qe.exitCode??0);i===0&&e&&typeof e!="function"&&e.error&&(i=1),this._exit(i,"commander.help","(outputHelp)")}addHelpText(e,i){let o=["beforeAll","before","after","afterAll"];if(!o.includes(e))throw new Error(`Unexpected value for position to addHelpText.
32
+ Expecting one of '${o.join("', '")}'`);let A=`${e}Help`;return this.on(A,c=>{let u;typeof i=="function"?u=i({error:c.error,command:c.command}):u=i,u&&c.write(`${u}
33
+ `)}),this}_outputHelpIfRequested(e){let i=this._getHelpOption();i&&e.find(A=>i.is(A))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function vu(r){return r.map(e=>{if(!e.startsWith("--inspect"))return e;let i,o="127.0.0.1",A="9229",c;return(c=e.match(/^(--inspect(-brk)?)$/))!==null?i=c[1]:(c=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(i=c[1],/^\d+$/.test(c[3])?A=c[3]:o=c[3]):(c=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(i=c[1],o=c[3],A=c[4]),i&&A!=="0"?`${i}=${o}:${parseInt(A)+1}`:e})}function ba(){if(qe.env.NO_COLOR||qe.env.FORCE_COLOR==="0"||qe.env.FORCE_COLOR==="false")return!1;if(qe.env.FORCE_COLOR||qe.env.CLICOLOR_FORCE!==void 0)return!0}xa.Command=Ca;xa.useColor=ba});var Du=oe(Kt=>{var{Argument:Fu}=Ts(),{Command:Qa}=Iu(),{CommanderError:pC,InvalidArgumentError:Tu}=xn(),{Help:dC}=da(),{Option:Su}=Ea();Kt.program=new Qa;Kt.createCommand=r=>new Qa(r);Kt.createOption=(r,e)=>new Su(r,e);Kt.createArgument=(r,e)=>new Fu(r,e);Kt.Command=Qa;Kt.Option=Su;Kt.Argument=Fu;Kt.Help=dC;Kt.CommanderError=pC;Kt.InvalidArgumentError=Tu;Kt.InvalidOptionArgumentError=Tu});var ft=oe((WD,Dh)=>{"use strict";var{FORCE_COLOR:Qb,NODE_DISABLE_COLORS:vb,TERM:Ib}=process.env,tt={enabled:!vb&&Ib!=="dumb"&&Qb!=="0",reset:At(0,0),bold:At(1,22),dim:At(2,22),italic:At(3,23),underline:At(4,24),inverse:At(7,27),hidden:At(8,28),strikethrough:At(9,29),black:At(30,39),red:At(31,39),green:At(32,39),yellow:At(33,39),blue:At(34,39),magenta:At(35,39),cyan:At(36,39),white:At(37,39),gray:At(90,39),grey:At(90,39),bgBlack:At(40,49),bgRed:At(41,49),bgGreen:At(42,49),bgYellow:At(43,49),bgBlue:At(44,49),bgMagenta:At(45,49),bgCyan:At(46,49),bgWhite:At(47,49)};function Sh(r,e){let i=0,o,A="",c="";for(;i<r.length;i++)o=r[i],A+=o.open,c+=o.close,e.includes(o.close)&&(e=e.replace(o.rgx,o.close+o.open));return A+e+c}function Fb(r,e){let i={has:r,keys:e};return i.reset=tt.reset.bind(i),i.bold=tt.bold.bind(i),i.dim=tt.dim.bind(i),i.italic=tt.italic.bind(i),i.underline=tt.underline.bind(i),i.inverse=tt.inverse.bind(i),i.hidden=tt.hidden.bind(i),i.strikethrough=tt.strikethrough.bind(i),i.black=tt.black.bind(i),i.red=tt.red.bind(i),i.green=tt.green.bind(i),i.yellow=tt.yellow.bind(i),i.blue=tt.blue.bind(i),i.magenta=tt.magenta.bind(i),i.cyan=tt.cyan.bind(i),i.white=tt.white.bind(i),i.gray=tt.gray.bind(i),i.grey=tt.grey.bind(i),i.bgBlack=tt.bgBlack.bind(i),i.bgRed=tt.bgRed.bind(i),i.bgGreen=tt.bgGreen.bind(i),i.bgYellow=tt.bgYellow.bind(i),i.bgBlue=tt.bgBlue.bind(i),i.bgMagenta=tt.bgMagenta.bind(i),i.bgCyan=tt.bgCyan.bind(i),i.bgWhite=tt.bgWhite.bind(i),i}function At(r,e){let i={open:`\x1B[${r}m`,close:`\x1B[${e}m`,rgx:new RegExp(`\\x1b\\[${e}m`,"g")};return function(o){return this!==void 0&&this.has!==void 0?(this.has.includes(r)||(this.has.push(r),this.keys.push(i)),o===void 0?this:tt.enabled?Sh(this.keys,o+""):o+""):o===void 0?Fb([r],[i]):tt.enabled?Sh([i],o+""):o+""}}Dh.exports=tt});var Uh=oe((JD,Mh)=>{"use strict";Mh.exports=(r,e)=>{if(!(r.meta&&r.name!=="escape")){if(r.ctrl){if(r.name==="a")return"first";if(r.name==="c"||r.name==="d")return"abort";if(r.name==="e")return"last";if(r.name==="g")return"reset"}if(e){if(r.name==="j")return"down";if(r.name==="k")return"up"}return r.name==="return"||r.name==="enter"?"submit":r.name==="backspace"?"delete":r.name==="delete"?"deleteForward":r.name==="abort"?"abort":r.name==="escape"?"exit":r.name==="tab"?"next":r.name==="pagedown"?"nextPage":r.name==="pageup"?"prevPage":r.name==="home"?"home":r.name==="end"?"end":r.name==="up"?"up":r.name==="down"?"down":r.name==="right"?"right":r.name==="left"?"left":!1}}});var _s=oe((VD,kh)=>{"use strict";kh.exports=r=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"),i=new RegExp(e,"g");return typeof r=="string"?r.replace(i,""):r}});var pt=oe((jD,Yh)=>{"use strict";var Da={to(r,e){return e?`\x1B[${e+1};${r+1}H`:`\x1B[${r+1}G`},move(r,e){let i="";return r<0?i+=`\x1B[${-r}D`:r>0&&(i+=`\x1B[${r}C`),e<0?i+=`\x1B[${-e}A`:e>0&&(i+=`\x1B[${e}B`),i},up:(r=1)=>`\x1B[${r}A`,down:(r=1)=>`\x1B[${r}B`,forward:(r=1)=>`\x1B[${r}C`,backward:(r=1)=>`\x1B[${r}D`,nextLine:(r=1)=>"\x1B[E".repeat(r),prevLine:(r=1)=>"\x1B[F".repeat(r),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},Tb={up:(r=1)=>"\x1B[S".repeat(r),down:(r=1)=>"\x1B[T".repeat(r)},Sb={screen:"\x1B[2J",up:(r=1)=>"\x1B[1J".repeat(r),down:(r=1)=>"\x1B[J".repeat(r),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(r){let e="";for(let i=0;i<r;i++)e+=this.line+(i<r-1?Da.up():"");return r&&(e+=Da.left),e}};Yh.exports={cursor:Da,scroll:Tb,erase:Sb,beep:"\x07"}});var Lh=oe((_D,Gh)=>{"use strict";function Db(r,e){var i=typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(!i){if(Array.isArray(r)||(i=Mb(r))||e&&r&&typeof r.length=="number"){i&&(r=i);var o=0,A=function(){};return{s:A,n:function(){return o>=r.length?{done:!0}:{done:!1,value:r[o++]}},e:function(g){throw g},f:A}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
34
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c=!0,u=!1,f;return{s:function(){i=i.call(r)},n:function(){var g=i.next();return c=g.done,g},e:function(g){u=!0,f=g},f:function(){try{!c&&i.return!=null&&i.return()}finally{if(u)throw f}}}}function Mb(r,e){if(r){if(typeof r=="string")return Oh(r,e);var i=Object.prototype.toString.call(r).slice(8,-1);if(i==="Object"&&r.constructor&&(i=r.constructor.name),i==="Map"||i==="Set")return Array.from(r);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return Oh(r,e)}}function Oh(r,e){(e==null||e>r.length)&&(e=r.length);for(var i=0,o=new Array(e);i<e;i++)o[i]=r[i];return o}var Ub=_s(),Rh=pt(),Nh=Rh.erase,kb=Rh.cursor,Yb=r=>[...Ub(r)].length;Gh.exports=function(r,e){if(!e)return Nh.line+kb.to(0);let i=0,o=r.split(/\r?\n/);var A=Db(o),c;try{for(A.s();!(c=A.n()).done;){let u=c.value;i+=1+Math.floor(Math.max(Yb(u)-1,0)/e)}}catch(u){A.e(u)}finally{A.f()}return Nh.lines(i)}});var Ma=oe((ZD,Ph)=>{"use strict";var Fn={arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",tick:"\u2714",cross:"\u2716",ellipsis:"\u2026",pointerSmall:"\u203A",line:"\u2500",pointer:"\u276F"},Ob={arrowUp:Fn.arrowUp,arrowDown:Fn.arrowDown,arrowLeft:Fn.arrowLeft,arrowRight:Fn.arrowRight,radioOn:"(*)",radioOff:"( )",tick:"\u221A",cross:"\xD7",ellipsis:"...",pointerSmall:"\xBB",line:"\u2500",pointer:">"},Nb=process.platform==="win32"?Ob:Fn;Ph.exports=Nb});var Wh=oe((XD,Hh)=>{"use strict";var Hi=ft(),wi=Ma(),Ua=Object.freeze({password:{scale:1,render:r=>"*".repeat(r.length)},emoji:{scale:2,render:r=>"\u{1F603}".repeat(r.length)},invisible:{scale:0,render:r=>""},default:{scale:1,render:r=>`${r}`}}),Rb=r=>Ua[r]||Ua.default,Tn=Object.freeze({aborted:Hi.red(wi.cross),done:Hi.green(wi.tick),exited:Hi.yellow(wi.cross),default:Hi.cyan("?")}),Gb=(r,e,i)=>e?Tn.aborted:i?Tn.exited:r?Tn.done:Tn.default,Lb=r=>Hi.gray(r?wi.ellipsis:wi.pointerSmall),Pb=(r,e)=>Hi.gray(r?e?wi.pointerSmall:"+":wi.line);Hh.exports={styles:Ua,render:Rb,symbols:Tn,symbol:Gb,delimiter:Lb,item:Pb}});var Vh=oe((zD,Jh)=>{"use strict";var Hb=_s();Jh.exports=function(r,e){let i=String(Hb(r)||"").split(/\r?\n/);return e?i.map(o=>Math.ceil(o.length/e)).reduce((o,A)=>o+A):i.length}});var _h=oe((qD,jh)=>{"use strict";jh.exports=(r,e={})=>{let i=Number.isSafeInteger(parseInt(e.margin))?new Array(parseInt(e.margin)).fill(" ").join(""):e.margin||"",o=e.width;return(r||"").split(/\r?\n/g).map(A=>A.split(/\s+/g).reduce((c,u)=>(u.length+i.length>=o||c[c.length-1].length+u.length+1<o?c[c.length-1]+=` ${u}`:c.push(`${i}${u}`),c),[i]).join(`
35
35
  `)).join(`
36
- `)}});var Xh=ae((KD,Zh)=>{"use strict";Zh.exports=(r,e,i)=>{i=i||e;let a=Math.min(e-i,r-Math.floor(i/2));a<0&&(a=0);let A=Math.min(a+i,e);return{startIndex:a,endIndex:A}}});var Ar=ae(($D,zh)=>{"use strict";zh.exports={action:Uh(),clear:Lh(),style:Wh(),strip:_s(),figures:Mo(),lines:Vh(),wrap:_h(),entriesToDisplay:Xh()}});var Or=ae((eM,$h)=>{"use strict";var qh=We("readline"),Wb=Ar(),Jb=Wb.action,Vb=We("events"),Kh=pt(),jb=Kh.beep,_b=Kh.cursor,Zb=ft(),ko=class extends Vb{constructor(e={}){super(),this.firstRender=!0,this.in=e.stdin||process.stdin,this.out=e.stdout||process.stdout,this.onRender=(e.onRender||(()=>{})).bind(this);let i=qh.createInterface({input:this.in,escapeCodeTimeout:50});qh.emitKeypressEvents(this.in,i),this.in.isTTY&&this.in.setRawMode(!0);let a=["SelectPrompt","MultiselectPrompt"].indexOf(this.constructor.name)>-1,A=(c,u)=>{let f=Jb(u,a);f===!1?this._&&this._(c,u):typeof this[f]=="function"?this[f](u):this.bell()};this.close=()=>{this.out.write(_b.show),this.in.removeListener("keypress",A),this.in.isTTY&&this.in.setRawMode(!1),i.close(),this.emit(this.aborted?"abort":this.exited?"exit":"submit",this.value),this.closed=!0},this.in.on("keypress",A)}fire(){this.emit("state",{value:this.value,aborted:!!this.aborted,exited:!!this.exited})}bell(){this.out.write(jb)}render(){this.onRender(Zb),this.firstRender&&(this.firstRender=!1)}};$h.exports=ko});var sf=ae((tM,nf)=>{"use strict";function ef(r,e,i,a,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(a,A)}function tf(r){return function(){var e=this,i=arguments;return new Promise(function(a,A){var c=r.apply(e,i);function u(p){ef(c,a,A,u,f,"next",p)}function f(p){ef(c,a,A,u,f,"throw",p)}u(void 0)})}}var Zs=ft(),Xb=Or(),rf=pt(),zb=rf.erase,Sn=rf.cursor,Xs=Ar(),Yo=Xs.style,Oo=Xs.clear,qb=Xs.lines,Kb=Xs.figures,No=class extends Xb{constructor(e={}){super(e),this.transform=Yo.render(e.style),this.scale=this.transform.scale,this.msg=e.message,this.initial=e.initial||"",this.validator=e.validate||(()=>!0),this.value="",this.errorMsg=e.error||"Please Enter A Valid Value",this.cursor=+!!this.initial,this.cursorOffset=0,this.clear=Oo("",this.out.columns),this.render()}set value(e){!e&&this.initial?(this.placeholder=!0,this.rendered=Zs.gray(this.transform.render(this.initial))):(this.placeholder=!1,this.rendered=this.transform.render(e)),this._value=e,this.fire()}get value(){return this._value}reset(){this.value="",this.cursor=+!!this.initial,this.cursorOffset=0,this.fire(),this.render()}exit(){this.abort()}abort(){this.value=this.value||this.initial,this.done=this.aborted=!0,this.error=!1,this.red=!1,this.fire(),this.render(),this.out.write(`
36
+ `)}});var Xh=oe((KD,Zh)=>{"use strict";Zh.exports=(r,e,i)=>{i=i||e;let o=Math.min(e-i,r-Math.floor(i/2));o<0&&(o=0);let A=Math.min(o+i,e);return{startIndex:o,endIndex:A}}});var Ar=oe(($D,zh)=>{"use strict";zh.exports={action:Uh(),clear:Lh(),style:Wh(),strip:_s(),figures:Ma(),lines:Vh(),wrap:_h(),entriesToDisplay:Xh()}});var Or=oe((eM,$h)=>{"use strict";var qh=We("readline"),Wb=Ar(),Jb=Wb.action,Vb=We("events"),Kh=pt(),jb=Kh.beep,_b=Kh.cursor,Zb=ft(),ka=class extends Vb{constructor(e={}){super(),this.firstRender=!0,this.in=e.stdin||process.stdin,this.out=e.stdout||process.stdout,this.onRender=(e.onRender||(()=>{})).bind(this);let i=qh.createInterface({input:this.in,escapeCodeTimeout:50});qh.emitKeypressEvents(this.in,i),this.in.isTTY&&this.in.setRawMode(!0);let o=["SelectPrompt","MultiselectPrompt"].indexOf(this.constructor.name)>-1,A=(c,u)=>{let f=Jb(u,o);f===!1?this._&&this._(c,u):typeof this[f]=="function"?this[f](u):this.bell()};this.close=()=>{this.out.write(_b.show),this.in.removeListener("keypress",A),this.in.isTTY&&this.in.setRawMode(!1),i.close(),this.emit(this.aborted?"abort":this.exited?"exit":"submit",this.value),this.closed=!0},this.in.on("keypress",A)}fire(){this.emit("state",{value:this.value,aborted:!!this.aborted,exited:!!this.exited})}bell(){this.out.write(jb)}render(){this.onRender(Zb),this.firstRender&&(this.firstRender=!1)}};$h.exports=ka});var sf=oe((tM,nf)=>{"use strict";function ef(r,e,i,o,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(o,A)}function tf(r){return function(){var e=this,i=arguments;return new Promise(function(o,A){var c=r.apply(e,i);function u(p){ef(c,o,A,u,f,"next",p)}function f(p){ef(c,o,A,u,f,"throw",p)}u(void 0)})}}var Zs=ft(),Xb=Or(),rf=pt(),zb=rf.erase,Sn=rf.cursor,Xs=Ar(),Ya=Xs.style,Oa=Xs.clear,qb=Xs.lines,Kb=Xs.figures,Na=class extends Xb{constructor(e={}){super(e),this.transform=Ya.render(e.style),this.scale=this.transform.scale,this.msg=e.message,this.initial=e.initial||"",this.validator=e.validate||(()=>!0),this.value="",this.errorMsg=e.error||"Please Enter A Valid Value",this.cursor=+!!this.initial,this.cursorOffset=0,this.clear=Oa("",this.out.columns),this.render()}set value(e){!e&&this.initial?(this.placeholder=!0,this.rendered=Zs.gray(this.transform.render(this.initial))):(this.placeholder=!1,this.rendered=this.transform.render(e)),this._value=e,this.fire()}get value(){return this._value}reset(){this.value="",this.cursor=+!!this.initial,this.cursorOffset=0,this.fire(),this.render()}exit(){this.abort()}abort(){this.value=this.value||this.initial,this.done=this.aborted=!0,this.error=!1,this.red=!1,this.fire(),this.render(),this.out.write(`
37
37
  `),this.close()}validate(){var e=this;return tf(function*(){let i=yield e.validator(e.value);typeof i=="string"&&(e.errorMsg=i,i=!1),e.error=!i})()}submit(){var e=this;return tf(function*(){if(e.value=e.value||e.initial,e.cursorOffset=0,e.cursor=e.rendered.length,yield e.validate(),e.error){e.red=!0,e.fire(),e.render();return}e.done=!0,e.aborted=!1,e.fire(),e.render(),e.out.write(`
38
- `),e.close()})()}next(){if(!this.placeholder)return this.bell();this.value=this.initial,this.cursor=this.rendered.length,this.fire(),this.render()}moveCursor(e){this.placeholder||(this.cursor=this.cursor+e,this.cursorOffset+=e)}_(e,i){let a=this.value.slice(0,this.cursor),A=this.value.slice(this.cursor);this.value=`${a}${e}${A}`,this.red=!1,this.cursor=this.placeholder?0:a.length+1,this.render()}delete(){if(this.isCursorAtStart())return this.bell();let e=this.value.slice(0,this.cursor-1),i=this.value.slice(this.cursor);this.value=`${e}${i}`,this.red=!1,this.isCursorAtStart()?this.cursorOffset=0:(this.cursorOffset++,this.moveCursor(-1)),this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();let e=this.value.slice(0,this.cursor),i=this.value.slice(this.cursor+1);this.value=`${e}${i}`,this.red=!1,this.isCursorAtEnd()?this.cursorOffset=0:this.cursorOffset++,this.render()}first(){this.cursor=0,this.render()}last(){this.cursor=this.value.length,this.render()}left(){if(this.cursor<=0||this.placeholder)return this.bell();this.moveCursor(-1),this.render()}right(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();this.moveCursor(1),this.render()}isCursorAtStart(){return this.cursor===0||this.placeholder&&this.cursor===1}isCursorAtEnd(){return this.cursor===this.rendered.length||this.placeholder&&this.cursor===this.rendered.length+1}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(Sn.down(qb(this.outputError,this.out.columns)-1)+Oo(this.outputError,this.out.columns)),this.out.write(Oo(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[Yo.symbol(this.done,this.aborted),Zs.bold(this.msg),Yo.delimiter(this.done),this.red?Zs.red(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
39
- `).reduce((e,i,a)=>e+`
40
- ${a?" ":Kb.pointerSmall} ${Zs.red().italic(i)}`,"")),this.out.write(zb.line+Sn.to(0)+this.outputText+Sn.save+this.outputError+Sn.restore+Sn.move(this.cursorOffset,0)))}};nf.exports=No});var lf=ae((rM,Af)=>{"use strict";var Nr=ft(),$b=Or(),Dn=Ar(),af=Dn.style,of=Dn.clear,zs=Dn.figures,ex=Dn.wrap,tx=Dn.entriesToDisplay,rx=pt(),ix=rx.cursor,Ro=class extends $b{constructor(e={}){super(e),this.msg=e.message,this.hint=e.hint||"- Use arrow-keys. Return to submit.",this.warn=e.warn||"- This option is disabled",this.cursor=e.initial||0,this.choices=e.choices.map((i,a)=>(typeof i=="string"&&(i={title:i,value:a}),{title:i&&(i.title||i.value||i),value:i&&(i.value===void 0?a:i.value),description:i&&i.description,selected:i&&i.selected,disabled:i&&i.disabled})),this.optionsPerPage=e.optionsPerPage||10,this.value=(this.choices[this.cursor]||{}).value,this.clear=of("",this.out.columns),this.render()}moveCursor(e){this.cursor=e,this.value=this.choices[e].value,this.fire()}reset(){this.moveCursor(0),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
38
+ `),e.close()})()}next(){if(!this.placeholder)return this.bell();this.value=this.initial,this.cursor=this.rendered.length,this.fire(),this.render()}moveCursor(e){this.placeholder||(this.cursor=this.cursor+e,this.cursorOffset+=e)}_(e,i){let o=this.value.slice(0,this.cursor),A=this.value.slice(this.cursor);this.value=`${o}${e}${A}`,this.red=!1,this.cursor=this.placeholder?0:o.length+1,this.render()}delete(){if(this.isCursorAtStart())return this.bell();let e=this.value.slice(0,this.cursor-1),i=this.value.slice(this.cursor);this.value=`${e}${i}`,this.red=!1,this.isCursorAtStart()?this.cursorOffset=0:(this.cursorOffset++,this.moveCursor(-1)),this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();let e=this.value.slice(0,this.cursor),i=this.value.slice(this.cursor+1);this.value=`${e}${i}`,this.red=!1,this.isCursorAtEnd()?this.cursorOffset=0:this.cursorOffset++,this.render()}first(){this.cursor=0,this.render()}last(){this.cursor=this.value.length,this.render()}left(){if(this.cursor<=0||this.placeholder)return this.bell();this.moveCursor(-1),this.render()}right(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();this.moveCursor(1),this.render()}isCursorAtStart(){return this.cursor===0||this.placeholder&&this.cursor===1}isCursorAtEnd(){return this.cursor===this.rendered.length||this.placeholder&&this.cursor===this.rendered.length+1}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(Sn.down(qb(this.outputError,this.out.columns)-1)+Oa(this.outputError,this.out.columns)),this.out.write(Oa(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[Ya.symbol(this.done,this.aborted),Zs.bold(this.msg),Ya.delimiter(this.done),this.red?Zs.red(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
39
+ `).reduce((e,i,o)=>e+`
40
+ ${o?" ":Kb.pointerSmall} ${Zs.red().italic(i)}`,"")),this.out.write(zb.line+Sn.to(0)+this.outputText+Sn.save+this.outputError+Sn.restore+Sn.move(this.cursorOffset,0)))}};nf.exports=Na});var lf=oe((rM,Af)=>{"use strict";var Nr=ft(),$b=Or(),Dn=Ar(),of=Dn.style,af=Dn.clear,zs=Dn.figures,ex=Dn.wrap,tx=Dn.entriesToDisplay,rx=pt(),ix=rx.cursor,Ra=class extends $b{constructor(e={}){super(e),this.msg=e.message,this.hint=e.hint||"- Use arrow-keys. Return to submit.",this.warn=e.warn||"- This option is disabled",this.cursor=e.initial||0,this.choices=e.choices.map((i,o)=>(typeof i=="string"&&(i={title:i,value:o}),{title:i&&(i.title||i.value||i),value:i&&(i.value===void 0?o:i.value),description:i&&i.description,selected:i&&i.selected,disabled:i&&i.disabled})),this.optionsPerPage=e.optionsPerPage||10,this.value=(this.choices[this.cursor]||{}).value,this.clear=af("",this.out.columns),this.render()}moveCursor(e){this.cursor=e,this.value=this.choices[e].value,this.fire()}reset(){this.moveCursor(0),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
41
41
  `),this.close()}submit(){this.selection.disabled?this.bell():(this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
42
- `),this.close())}first(){this.moveCursor(0),this.render()}last(){this.moveCursor(this.choices.length-1),this.render()}up(){this.cursor===0?this.moveCursor(this.choices.length-1):this.moveCursor(this.cursor-1),this.render()}down(){this.cursor===this.choices.length-1?this.moveCursor(0):this.moveCursor(this.cursor+1),this.render()}next(){this.moveCursor((this.cursor+1)%this.choices.length),this.render()}_(e,i){if(e===" ")return this.submit()}get selection(){return this.choices[this.cursor]}render(){if(this.closed)return;this.firstRender?this.out.write(ix.hide):this.out.write(of(this.outputText,this.out.columns)),super.render();let e=tx(this.cursor,this.choices.length,this.optionsPerPage),i=e.startIndex,a=e.endIndex;if(this.outputText=[af.symbol(this.done,this.aborted),Nr.bold(this.msg),af.delimiter(!1),this.done?this.selection.title:this.selection.disabled?Nr.yellow(this.warn):Nr.gray(this.hint)].join(" "),!this.done){this.outputText+=`
43
- `;for(let A=i;A<a;A++){let c,u,f="",p=this.choices[A];A===i&&i>0?u=zs.arrowUp:A===a-1&&a<this.choices.length?u=zs.arrowDown:u=" ",p.disabled?(c=this.cursor===A?Nr.gray().underline(p.title):Nr.strikethrough().gray(p.title),u=(this.cursor===A?Nr.bold().gray(zs.pointer)+" ":" ")+u):(c=this.cursor===A?Nr.cyan().underline(p.title):p.title,u=(this.cursor===A?Nr.cyan(zs.pointer)+" ":" ")+u,p.description&&this.cursor===A&&(f=` - ${p.description}`,(u.length+c.length+f.length>=this.out.columns||p.description.split(/\r?\n/).length>1)&&(f=`
42
+ `),this.close())}first(){this.moveCursor(0),this.render()}last(){this.moveCursor(this.choices.length-1),this.render()}up(){this.cursor===0?this.moveCursor(this.choices.length-1):this.moveCursor(this.cursor-1),this.render()}down(){this.cursor===this.choices.length-1?this.moveCursor(0):this.moveCursor(this.cursor+1),this.render()}next(){this.moveCursor((this.cursor+1)%this.choices.length),this.render()}_(e,i){if(e===" ")return this.submit()}get selection(){return this.choices[this.cursor]}render(){if(this.closed)return;this.firstRender?this.out.write(ix.hide):this.out.write(af(this.outputText,this.out.columns)),super.render();let e=tx(this.cursor,this.choices.length,this.optionsPerPage),i=e.startIndex,o=e.endIndex;if(this.outputText=[of.symbol(this.done,this.aborted),Nr.bold(this.msg),of.delimiter(!1),this.done?this.selection.title:this.selection.disabled?Nr.yellow(this.warn):Nr.gray(this.hint)].join(" "),!this.done){this.outputText+=`
43
+ `;for(let A=i;A<o;A++){let c,u,f="",p=this.choices[A];A===i&&i>0?u=zs.arrowUp:A===o-1&&o<this.choices.length?u=zs.arrowDown:u=" ",p.disabled?(c=this.cursor===A?Nr.gray().underline(p.title):Nr.strikethrough().gray(p.title),u=(this.cursor===A?Nr.bold().gray(zs.pointer)+" ":" ")+u):(c=this.cursor===A?Nr.cyan().underline(p.title):p.title,u=(this.cursor===A?Nr.cyan(zs.pointer)+" ":" ")+u,p.description&&this.cursor===A&&(f=` - ${p.description}`,(u.length+c.length+f.length>=this.out.columns||p.description.split(/\r?\n/).length>1)&&(f=`
44
44
  `+ex(p.description,{margin:3,width:this.out.columns})))),this.outputText+=`${u} ${c}${Nr.gray(f)}
45
- `}}this.out.write(this.outputText)}};Af.exports=Ro});var df=ae((iM,pf)=>{"use strict";var qs=ft(),nx=Or(),hf=Ar(),cf=hf.style,sx=hf.clear,ff=pt(),uf=ff.cursor,ax=ff.erase,Go=class extends nx{constructor(e={}){super(e),this.msg=e.message,this.value=!!e.initial,this.active=e.active||"on",this.inactive=e.inactive||"off",this.initialValue=this.value,this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
45
+ `}}this.out.write(this.outputText)}};Af.exports=Ra});var df=oe((iM,pf)=>{"use strict";var qs=ft(),nx=Or(),hf=Ar(),cf=hf.style,sx=hf.clear,ff=pt(),uf=ff.cursor,ox=ff.erase,Ga=class extends nx{constructor(e={}){super(e),this.msg=e.message,this.value=!!e.initial,this.active=e.active||"on",this.inactive=e.inactive||"off",this.initialValue=this.value,this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
46
46
  `),this.close()}submit(){this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
47
- `),this.close()}deactivate(){if(this.value===!1)return this.bell();this.value=!1,this.render()}activate(){if(this.value===!0)return this.bell();this.value=!0,this.render()}delete(){this.deactivate()}left(){this.deactivate()}right(){this.activate()}down(){this.deactivate()}up(){this.activate()}next(){this.value=!this.value,this.fire(),this.render()}_(e,i){if(e===" ")this.value=!this.value;else if(e==="1")this.value=!0;else if(e==="0")this.value=!1;else return this.bell();this.render()}render(){this.closed||(this.firstRender?this.out.write(uf.hide):this.out.write(sx(this.outputText,this.out.columns)),super.render(),this.outputText=[cf.symbol(this.done,this.aborted),qs.bold(this.msg),cf.delimiter(this.done),this.value?this.inactive:qs.cyan().underline(this.inactive),qs.gray("/"),this.value?qs.cyan().underline(this.active):this.active].join(" "),this.out.write(ax.line+uf.to(0)+this.outputText))}};pf.exports=Go});var Er=ae((nM,gf)=>{"use strict";var Lo=class r{constructor({token:e,date:i,parts:a,locales:A}){this.token=e,this.date=i||new Date,this.parts=a||[this],this.locales=A||{}}up(){}down(){}next(){let e=this.parts.indexOf(this);return this.parts.find((i,a)=>a>e&&i instanceof r)}setTo(e){}prev(){let e=[].concat(this.parts).reverse(),i=e.indexOf(this);return e.find((a,A)=>A>i&&a instanceof r)}toString(){return String(this.date)}};gf.exports=Lo});var Bf=ae((sM,mf)=>{"use strict";var ox=Er(),Po=class extends ox{constructor(e={}){super(e)}up(){this.date.setHours((this.date.getHours()+12)%24)}down(){this.up()}toString(){let e=this.date.getHours()>12?"pm":"am";return/\A/.test(this.token)?e.toUpperCase():e}};mf.exports=Po});var wf=ae((aM,Ef)=>{"use strict";var Ax=Er(),lx=r=>(r=r%10,r===1?"st":r===2?"nd":r===3?"rd":"th"),Ho=class extends Ax{constructor(e={}){super(e)}up(){this.date.setDate(this.date.getDate()+1)}down(){this.date.setDate(this.date.getDate()-1)}setTo(e){this.date.setDate(parseInt(e.substr(-2)))}toString(){let e=this.date.getDate(),i=this.date.getDay();return this.token==="DD"?String(e).padStart(2,"0"):this.token==="Do"?e+lx(e):this.token==="d"?i+1:this.token==="ddd"?this.locales.weekdaysShort[i]:this.token==="dddd"?this.locales.weekdays[i]:e}};Ef.exports=Ho});var Cf=ae((oM,yf)=>{"use strict";var cx=Er(),Wo=class extends cx{constructor(e={}){super(e)}up(){this.date.setHours(this.date.getHours()+1)}down(){this.date.setHours(this.date.getHours()-1)}setTo(e){this.date.setHours(parseInt(e.substr(-2)))}toString(){let e=this.date.getHours();return/h/.test(this.token)&&(e=e%12||12),this.token.length>1?String(e).padStart(2,"0"):e}};yf.exports=Wo});var xf=ae((AM,bf)=>{"use strict";var ux=Er(),Jo=class extends ux{constructor(e={}){super(e)}up(){this.date.setMilliseconds(this.date.getMilliseconds()+1)}down(){this.date.setMilliseconds(this.date.getMilliseconds()-1)}setTo(e){this.date.setMilliseconds(parseInt(e.substr(-this.token.length)))}toString(){return String(this.date.getMilliseconds()).padStart(4,"0").substr(0,this.token.length)}};bf.exports=Jo});var vf=ae((lM,Qf)=>{"use strict";var hx=Er(),Vo=class extends hx{constructor(e={}){super(e)}up(){this.date.setMinutes(this.date.getMinutes()+1)}down(){this.date.setMinutes(this.date.getMinutes()-1)}setTo(e){this.date.setMinutes(parseInt(e.substr(-2)))}toString(){let e=this.date.getMinutes();return this.token.length>1?String(e).padStart(2,"0"):e}};Qf.exports=Vo});var Ff=ae((cM,If)=>{"use strict";var fx=Er(),jo=class extends fx{constructor(e={}){super(e)}up(){this.date.setMonth(this.date.getMonth()+1)}down(){this.date.setMonth(this.date.getMonth()-1)}setTo(e){e=parseInt(e.substr(-2))-1,this.date.setMonth(e<0?0:e)}toString(){let e=this.date.getMonth(),i=this.token.length;return i===2?String(e+1).padStart(2,"0"):i===3?this.locales.monthsShort[e]:i===4?this.locales.months[e]:String(e+1)}};If.exports=jo});var Sf=ae((uM,Tf)=>{"use strict";var px=Er(),_o=class extends px{constructor(e={}){super(e)}up(){this.date.setSeconds(this.date.getSeconds()+1)}down(){this.date.setSeconds(this.date.getSeconds()-1)}setTo(e){this.date.setSeconds(parseInt(e.substr(-2)))}toString(){let e=this.date.getSeconds();return this.token.length>1?String(e).padStart(2,"0"):e}};Tf.exports=_o});var Mf=ae((hM,Df)=>{"use strict";var dx=Er(),Zo=class extends dx{constructor(e={}){super(e)}up(){this.date.setFullYear(this.date.getFullYear()+1)}down(){this.date.setFullYear(this.date.getFullYear()-1)}setTo(e){this.date.setFullYear(e.substr(-4))}toString(){let e=String(this.date.getFullYear()).padStart(4,"0");return this.token.length===2?e.substr(-2):e}};Df.exports=Zo});var kf=ae((fM,Uf)=>{"use strict";Uf.exports={DatePart:Er(),Meridiem:Bf(),Day:wf(),Hours:Cf(),Milliseconds:xf(),Minutes:vf(),Month:Ff(),Seconds:Sf(),Year:Mf()}});var Jf=ae((pM,Wf)=>{"use strict";function Yf(r,e,i,a,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(a,A)}function Of(r){return function(){var e=this,i=arguments;return new Promise(function(a,A){var c=r.apply(e,i);function u(p){Yf(c,a,A,u,f,"next",p)}function f(p){Yf(c,a,A,u,f,"throw",p)}u(void 0)})}}var Xo=ft(),gx=Or(),qo=Ar(),Nf=qo.style,Rf=qo.clear,mx=qo.figures,Hf=pt(),Bx=Hf.erase,Gf=Hf.cursor,Rr=kf(),Lf=Rr.DatePart,Ex=Rr.Meridiem,wx=Rr.Day,yx=Rr.Hours,Cx=Rr.Milliseconds,bx=Rr.Minutes,xx=Rr.Month,Qx=Rr.Seconds,vx=Rr.Year,Ix=/\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g,Pf={1:({token:r})=>r.replace(/\\(.)/g,"$1"),2:r=>new wx(r),3:r=>new xx(r),4:r=>new vx(r),5:r=>new Ex(r),6:r=>new yx(r),7:r=>new bx(r),8:r=>new Qx(r),9:r=>new Cx(r)},Fx={months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),monthsShort:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),weekdaysShort:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")},zo=class extends gx{constructor(e={}){super(e),this.msg=e.message,this.cursor=0,this.typed="",this.locales=Object.assign(Fx,e.locales),this._date=e.initial||new Date,this.errorMsg=e.error||"Please Enter A Valid Value",this.validator=e.validate||(()=>!0),this.mask=e.mask||"YYYY-MM-DD HH:mm:ss",this.clear=Rf("",this.out.columns),this.render()}get value(){return this.date}get date(){return this._date}set date(e){e&&this._date.setTime(e.getTime())}set mask(e){let i;for(this.parts=[];i=Ix.exec(e);){let A=i.shift(),c=i.findIndex(u=>u!=null);this.parts.push(c in Pf?Pf[c]({token:i[c]||A,date:this.date,parts:this.parts,locales:this.locales}):i[c]||A)}let a=this.parts.reduce((A,c)=>(typeof c=="string"&&typeof A[A.length-1]=="string"?A[A.length-1]+=c:A.push(c),A),[]);this.parts.splice(0),this.parts.push(...a),this.reset()}moveCursor(e){this.typed="",this.cursor=e,this.fire()}reset(){this.moveCursor(this.parts.findIndex(e=>e instanceof Lf)),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
47
+ `),this.close()}deactivate(){if(this.value===!1)return this.bell();this.value=!1,this.render()}activate(){if(this.value===!0)return this.bell();this.value=!0,this.render()}delete(){this.deactivate()}left(){this.deactivate()}right(){this.activate()}down(){this.deactivate()}up(){this.activate()}next(){this.value=!this.value,this.fire(),this.render()}_(e,i){if(e===" ")this.value=!this.value;else if(e==="1")this.value=!0;else if(e==="0")this.value=!1;else return this.bell();this.render()}render(){this.closed||(this.firstRender?this.out.write(uf.hide):this.out.write(sx(this.outputText,this.out.columns)),super.render(),this.outputText=[cf.symbol(this.done,this.aborted),qs.bold(this.msg),cf.delimiter(this.done),this.value?this.inactive:qs.cyan().underline(this.inactive),qs.gray("/"),this.value?qs.cyan().underline(this.active):this.active].join(" "),this.out.write(ox.line+uf.to(0)+this.outputText))}};pf.exports=Ga});var Er=oe((nM,gf)=>{"use strict";var La=class r{constructor({token:e,date:i,parts:o,locales:A}){this.token=e,this.date=i||new Date,this.parts=o||[this],this.locales=A||{}}up(){}down(){}next(){let e=this.parts.indexOf(this);return this.parts.find((i,o)=>o>e&&i instanceof r)}setTo(e){}prev(){let e=[].concat(this.parts).reverse(),i=e.indexOf(this);return e.find((o,A)=>A>i&&o instanceof r)}toString(){return String(this.date)}};gf.exports=La});var Bf=oe((sM,mf)=>{"use strict";var ax=Er(),Pa=class extends ax{constructor(e={}){super(e)}up(){this.date.setHours((this.date.getHours()+12)%24)}down(){this.up()}toString(){let e=this.date.getHours()>12?"pm":"am";return/\A/.test(this.token)?e.toUpperCase():e}};mf.exports=Pa});var wf=oe((oM,Ef)=>{"use strict";var Ax=Er(),lx=r=>(r=r%10,r===1?"st":r===2?"nd":r===3?"rd":"th"),Ha=class extends Ax{constructor(e={}){super(e)}up(){this.date.setDate(this.date.getDate()+1)}down(){this.date.setDate(this.date.getDate()-1)}setTo(e){this.date.setDate(parseInt(e.substr(-2)))}toString(){let e=this.date.getDate(),i=this.date.getDay();return this.token==="DD"?String(e).padStart(2,"0"):this.token==="Do"?e+lx(e):this.token==="d"?i+1:this.token==="ddd"?this.locales.weekdaysShort[i]:this.token==="dddd"?this.locales.weekdays[i]:e}};Ef.exports=Ha});var Cf=oe((aM,yf)=>{"use strict";var cx=Er(),Wa=class extends cx{constructor(e={}){super(e)}up(){this.date.setHours(this.date.getHours()+1)}down(){this.date.setHours(this.date.getHours()-1)}setTo(e){this.date.setHours(parseInt(e.substr(-2)))}toString(){let e=this.date.getHours();return/h/.test(this.token)&&(e=e%12||12),this.token.length>1?String(e).padStart(2,"0"):e}};yf.exports=Wa});var xf=oe((AM,bf)=>{"use strict";var ux=Er(),Ja=class extends ux{constructor(e={}){super(e)}up(){this.date.setMilliseconds(this.date.getMilliseconds()+1)}down(){this.date.setMilliseconds(this.date.getMilliseconds()-1)}setTo(e){this.date.setMilliseconds(parseInt(e.substr(-this.token.length)))}toString(){return String(this.date.getMilliseconds()).padStart(4,"0").substr(0,this.token.length)}};bf.exports=Ja});var vf=oe((lM,Qf)=>{"use strict";var hx=Er(),Va=class extends hx{constructor(e={}){super(e)}up(){this.date.setMinutes(this.date.getMinutes()+1)}down(){this.date.setMinutes(this.date.getMinutes()-1)}setTo(e){this.date.setMinutes(parseInt(e.substr(-2)))}toString(){let e=this.date.getMinutes();return this.token.length>1?String(e).padStart(2,"0"):e}};Qf.exports=Va});var Ff=oe((cM,If)=>{"use strict";var fx=Er(),ja=class extends fx{constructor(e={}){super(e)}up(){this.date.setMonth(this.date.getMonth()+1)}down(){this.date.setMonth(this.date.getMonth()-1)}setTo(e){e=parseInt(e.substr(-2))-1,this.date.setMonth(e<0?0:e)}toString(){let e=this.date.getMonth(),i=this.token.length;return i===2?String(e+1).padStart(2,"0"):i===3?this.locales.monthsShort[e]:i===4?this.locales.months[e]:String(e+1)}};If.exports=ja});var Sf=oe((uM,Tf)=>{"use strict";var px=Er(),_a=class extends px{constructor(e={}){super(e)}up(){this.date.setSeconds(this.date.getSeconds()+1)}down(){this.date.setSeconds(this.date.getSeconds()-1)}setTo(e){this.date.setSeconds(parseInt(e.substr(-2)))}toString(){let e=this.date.getSeconds();return this.token.length>1?String(e).padStart(2,"0"):e}};Tf.exports=_a});var Mf=oe((hM,Df)=>{"use strict";var dx=Er(),Za=class extends dx{constructor(e={}){super(e)}up(){this.date.setFullYear(this.date.getFullYear()+1)}down(){this.date.setFullYear(this.date.getFullYear()-1)}setTo(e){this.date.setFullYear(e.substr(-4))}toString(){let e=String(this.date.getFullYear()).padStart(4,"0");return this.token.length===2?e.substr(-2):e}};Df.exports=Za});var kf=oe((fM,Uf)=>{"use strict";Uf.exports={DatePart:Er(),Meridiem:Bf(),Day:wf(),Hours:Cf(),Milliseconds:xf(),Minutes:vf(),Month:Ff(),Seconds:Sf(),Year:Mf()}});var Jf=oe((pM,Wf)=>{"use strict";function Yf(r,e,i,o,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(o,A)}function Of(r){return function(){var e=this,i=arguments;return new Promise(function(o,A){var c=r.apply(e,i);function u(p){Yf(c,o,A,u,f,"next",p)}function f(p){Yf(c,o,A,u,f,"throw",p)}u(void 0)})}}var Xa=ft(),gx=Or(),qa=Ar(),Nf=qa.style,Rf=qa.clear,mx=qa.figures,Hf=pt(),Bx=Hf.erase,Gf=Hf.cursor,Rr=kf(),Lf=Rr.DatePart,Ex=Rr.Meridiem,wx=Rr.Day,yx=Rr.Hours,Cx=Rr.Milliseconds,bx=Rr.Minutes,xx=Rr.Month,Qx=Rr.Seconds,vx=Rr.Year,Ix=/\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g,Pf={1:({token:r})=>r.replace(/\\(.)/g,"$1"),2:r=>new wx(r),3:r=>new xx(r),4:r=>new vx(r),5:r=>new Ex(r),6:r=>new yx(r),7:r=>new bx(r),8:r=>new Qx(r),9:r=>new Cx(r)},Fx={months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),monthsShort:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),weekdaysShort:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")},za=class extends gx{constructor(e={}){super(e),this.msg=e.message,this.cursor=0,this.typed="",this.locales=Object.assign(Fx,e.locales),this._date=e.initial||new Date,this.errorMsg=e.error||"Please Enter A Valid Value",this.validator=e.validate||(()=>!0),this.mask=e.mask||"YYYY-MM-DD HH:mm:ss",this.clear=Rf("",this.out.columns),this.render()}get value(){return this.date}get date(){return this._date}set date(e){e&&this._date.setTime(e.getTime())}set mask(e){let i;for(this.parts=[];i=Ix.exec(e);){let A=i.shift(),c=i.findIndex(u=>u!=null);this.parts.push(c in Pf?Pf[c]({token:i[c]||A,date:this.date,parts:this.parts,locales:this.locales}):i[c]||A)}let o=this.parts.reduce((A,c)=>(typeof c=="string"&&typeof A[A.length-1]=="string"?A[A.length-1]+=c:A.push(c),A),[]);this.parts.splice(0),this.parts.push(...o),this.reset()}moveCursor(e){this.typed="",this.cursor=e,this.fire()}reset(){this.moveCursor(this.parts.findIndex(e=>e instanceof Lf)),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
48
48
  `),this.close()}validate(){var e=this;return Of(function*(){let i=yield e.validator(e.value);typeof i=="string"&&(e.errorMsg=i,i=!1),e.error=!i})()}submit(){var e=this;return Of(function*(){if(yield e.validate(),e.error){e.color="red",e.fire(),e.render();return}e.done=!0,e.aborted=!1,e.fire(),e.render(),e.out.write(`
49
- `),e.close()})()}up(){this.typed="",this.parts[this.cursor].up(),this.render()}down(){this.typed="",this.parts[this.cursor].down(),this.render()}left(){let e=this.parts[this.cursor].prev();if(e==null)return this.bell();this.moveCursor(this.parts.indexOf(e)),this.render()}right(){let e=this.parts[this.cursor].next();if(e==null)return this.bell();this.moveCursor(this.parts.indexOf(e)),this.render()}next(){let e=this.parts[this.cursor].next();this.moveCursor(e?this.parts.indexOf(e):this.parts.findIndex(i=>i instanceof Lf)),this.render()}_(e){/\d/.test(e)&&(this.typed+=e,this.parts[this.cursor].setTo(this.typed),this.render())}render(){this.closed||(this.firstRender?this.out.write(Gf.hide):this.out.write(Rf(this.outputText,this.out.columns)),super.render(),this.outputText=[Nf.symbol(this.done,this.aborted),Xo.bold(this.msg),Nf.delimiter(!1),this.parts.reduce((e,i,a)=>e.concat(a===this.cursor&&!this.done?Xo.cyan().underline(i.toString()):i),[]).join("")].join(" "),this.error&&(this.outputText+=this.errorMsg.split(`
50
- `).reduce((e,i,a)=>e+`
51
- ${a?" ":mx.pointerSmall} ${Xo.red().italic(i)}`,"")),this.out.write(Bx.line+Gf.to(0)+this.outputText))}};Wf.exports=zo});var qf=ae((dM,zf)=>{"use strict";function Vf(r,e,i,a,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(a,A)}function jf(r){return function(){var e=this,i=arguments;return new Promise(function(a,A){var c=r.apply(e,i);function u(p){Vf(c,a,A,u,f,"next",p)}function f(p){Vf(c,a,A,u,f,"throw",p)}u(void 0)})}}var Ks=ft(),Tx=Or(),Xf=pt(),$s=Xf.cursor,Sx=Xf.erase,ea=Ar(),Ko=ea.style,Dx=ea.figures,_f=ea.clear,Mx=ea.lines,Ux=/[0-9]/,$o=r=>r!==void 0,Zf=(r,e)=>{let i=Math.pow(10,e);return Math.round(r*i)/i},eA=class extends Tx{constructor(e={}){super(e),this.transform=Ko.render(e.style),this.msg=e.message,this.initial=$o(e.initial)?e.initial:"",this.float=!!e.float,this.round=e.round||2,this.inc=e.increment||1,this.min=$o(e.min)?e.min:-1/0,this.max=$o(e.max)?e.max:1/0,this.errorMsg=e.error||"Please Enter A Valid Value",this.validator=e.validate||(()=>!0),this.color="cyan",this.value="",this.typed="",this.lastHit=0,this.render()}set value(e){!e&&e!==0?(this.placeholder=!0,this.rendered=Ks.gray(this.transform.render(`${this.initial}`)),this._value=""):(this.placeholder=!1,this.rendered=this.transform.render(`${Zf(e,this.round)}`),this._value=Zf(e,this.round)),this.fire()}get value(){return this._value}parse(e){return this.float?parseFloat(e):parseInt(e)}valid(e){return e==="-"||e==="."&&this.float||Ux.test(e)}reset(){this.typed="",this.value="",this.fire(),this.render()}exit(){this.abort()}abort(){let e=this.value;this.value=e!==""?e:this.initial,this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
49
+ `),e.close()})()}up(){this.typed="",this.parts[this.cursor].up(),this.render()}down(){this.typed="",this.parts[this.cursor].down(),this.render()}left(){let e=this.parts[this.cursor].prev();if(e==null)return this.bell();this.moveCursor(this.parts.indexOf(e)),this.render()}right(){let e=this.parts[this.cursor].next();if(e==null)return this.bell();this.moveCursor(this.parts.indexOf(e)),this.render()}next(){let e=this.parts[this.cursor].next();this.moveCursor(e?this.parts.indexOf(e):this.parts.findIndex(i=>i instanceof Lf)),this.render()}_(e){/\d/.test(e)&&(this.typed+=e,this.parts[this.cursor].setTo(this.typed),this.render())}render(){this.closed||(this.firstRender?this.out.write(Gf.hide):this.out.write(Rf(this.outputText,this.out.columns)),super.render(),this.outputText=[Nf.symbol(this.done,this.aborted),Xa.bold(this.msg),Nf.delimiter(!1),this.parts.reduce((e,i,o)=>e.concat(o===this.cursor&&!this.done?Xa.cyan().underline(i.toString()):i),[]).join("")].join(" "),this.error&&(this.outputText+=this.errorMsg.split(`
50
+ `).reduce((e,i,o)=>e+`
51
+ ${o?" ":mx.pointerSmall} ${Xa.red().italic(i)}`,"")),this.out.write(Bx.line+Gf.to(0)+this.outputText))}};Wf.exports=za});var qf=oe((dM,zf)=>{"use strict";function Vf(r,e,i,o,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(o,A)}function jf(r){return function(){var e=this,i=arguments;return new Promise(function(o,A){var c=r.apply(e,i);function u(p){Vf(c,o,A,u,f,"next",p)}function f(p){Vf(c,o,A,u,f,"throw",p)}u(void 0)})}}var Ks=ft(),Tx=Or(),Xf=pt(),$s=Xf.cursor,Sx=Xf.erase,eo=Ar(),Ka=eo.style,Dx=eo.figures,_f=eo.clear,Mx=eo.lines,Ux=/[0-9]/,$a=r=>r!==void 0,Zf=(r,e)=>{let i=Math.pow(10,e);return Math.round(r*i)/i},eA=class extends Tx{constructor(e={}){super(e),this.transform=Ka.render(e.style),this.msg=e.message,this.initial=$a(e.initial)?e.initial:"",this.float=!!e.float,this.round=e.round||2,this.inc=e.increment||1,this.min=$a(e.min)?e.min:-1/0,this.max=$a(e.max)?e.max:1/0,this.errorMsg=e.error||"Please Enter A Valid Value",this.validator=e.validate||(()=>!0),this.color="cyan",this.value="",this.typed="",this.lastHit=0,this.render()}set value(e){!e&&e!==0?(this.placeholder=!0,this.rendered=Ks.gray(this.transform.render(`${this.initial}`)),this._value=""):(this.placeholder=!1,this.rendered=this.transform.render(`${Zf(e,this.round)}`),this._value=Zf(e,this.round)),this.fire()}get value(){return this._value}parse(e){return this.float?parseFloat(e):parseInt(e)}valid(e){return e==="-"||e==="."&&this.float||Ux.test(e)}reset(){this.typed="",this.value="",this.fire(),this.render()}exit(){this.abort()}abort(){let e=this.value;this.value=e!==""?e:this.initial,this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
52
52
  `),this.close()}validate(){var e=this;return jf(function*(){let i=yield e.validator(e.value);typeof i=="string"&&(e.errorMsg=i,i=!1),e.error=!i})()}submit(){var e=this;return jf(function*(){if(yield e.validate(),e.error){e.color="red",e.fire(),e.render();return}let i=e.value;e.value=i!==""?i:e.initial,e.done=!0,e.aborted=!1,e.error=!1,e.fire(),e.render(),e.out.write(`
53
- `),e.close()})()}up(){if(this.typed="",this.value===""&&(this.value=this.min-this.inc),this.value>=this.max)return this.bell();this.value+=this.inc,this.color="cyan",this.fire(),this.render()}down(){if(this.typed="",this.value===""&&(this.value=this.min+this.inc),this.value<=this.min)return this.bell();this.value-=this.inc,this.color="cyan",this.fire(),this.render()}delete(){let e=this.value.toString();if(e.length===0)return this.bell();this.value=this.parse(e=e.slice(0,-1))||"",this.value!==""&&this.value<this.min&&(this.value=this.min),this.color="cyan",this.fire(),this.render()}next(){this.value=this.initial,this.fire(),this.render()}_(e,i){if(!this.valid(e))return this.bell();let a=Date.now();if(a-this.lastHit>1e3&&(this.typed=""),this.typed+=e,this.lastHit=a,this.color="cyan",e===".")return this.fire();this.value=Math.min(this.parse(this.typed),this.max),this.value>this.max&&(this.value=this.max),this.value<this.min&&(this.value=this.min),this.fire(),this.render()}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write($s.down(Mx(this.outputError,this.out.columns)-1)+_f(this.outputError,this.out.columns)),this.out.write(_f(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[Ko.symbol(this.done,this.aborted),Ks.bold(this.msg),Ko.delimiter(this.done),!this.done||!this.done&&!this.placeholder?Ks[this.color]().underline(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
54
- `).reduce((e,i,a)=>e+`
55
- ${a?" ":Dx.pointerSmall} ${Ks.red().italic(i)}`,"")),this.out.write(Sx.line+$s.to(0)+this.outputText+$s.save+this.outputError+$s.restore))}};zf.exports=eA});var rA=ae((gM,ep)=>{"use strict";var wr=ft(),kx=pt(),Yx=kx.cursor,Ox=Or(),Mn=Ar(),Kf=Mn.clear,ti=Mn.figures,$f=Mn.style,Nx=Mn.wrap,Rx=Mn.entriesToDisplay,tA=class extends Ox{constructor(e={}){super(e),this.msg=e.message,this.cursor=e.cursor||0,this.scrollIndex=e.cursor||0,this.hint=e.hint||"",this.warn=e.warn||"- This option is disabled -",this.minSelected=e.min,this.showMinError=!1,this.maxChoices=e.max,this.instructions=e.instructions,this.optionsPerPage=e.optionsPerPage||10,this.value=e.choices.map((i,a)=>(typeof i=="string"&&(i={title:i,value:a}),{title:i&&(i.title||i.value||i),description:i&&i.description,value:i&&(i.value===void 0?a:i.value),selected:i&&i.selected,disabled:i&&i.disabled})),this.clear=Kf("",this.out.columns),e.overrideRender||this.render()}reset(){this.value.map(e=>!e.selected),this.cursor=0,this.fire(),this.render()}selected(){return this.value.filter(e=>e.selected)}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
53
+ `),e.close()})()}up(){if(this.typed="",this.value===""&&(this.value=this.min-this.inc),this.value>=this.max)return this.bell();this.value+=this.inc,this.color="cyan",this.fire(),this.render()}down(){if(this.typed="",this.value===""&&(this.value=this.min+this.inc),this.value<=this.min)return this.bell();this.value-=this.inc,this.color="cyan",this.fire(),this.render()}delete(){let e=this.value.toString();if(e.length===0)return this.bell();this.value=this.parse(e=e.slice(0,-1))||"",this.value!==""&&this.value<this.min&&(this.value=this.min),this.color="cyan",this.fire(),this.render()}next(){this.value=this.initial,this.fire(),this.render()}_(e,i){if(!this.valid(e))return this.bell();let o=Date.now();if(o-this.lastHit>1e3&&(this.typed=""),this.typed+=e,this.lastHit=o,this.color="cyan",e===".")return this.fire();this.value=Math.min(this.parse(this.typed),this.max),this.value>this.max&&(this.value=this.max),this.value<this.min&&(this.value=this.min),this.fire(),this.render()}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write($s.down(Mx(this.outputError,this.out.columns)-1)+_f(this.outputError,this.out.columns)),this.out.write(_f(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[Ka.symbol(this.done,this.aborted),Ks.bold(this.msg),Ka.delimiter(this.done),!this.done||!this.done&&!this.placeholder?Ks[this.color]().underline(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
54
+ `).reduce((e,i,o)=>e+`
55
+ ${o?" ":Dx.pointerSmall} ${Ks.red().italic(i)}`,"")),this.out.write(Sx.line+$s.to(0)+this.outputText+$s.save+this.outputError+$s.restore))}};zf.exports=eA});var rA=oe((gM,ep)=>{"use strict";var wr=ft(),kx=pt(),Yx=kx.cursor,Ox=Or(),Mn=Ar(),Kf=Mn.clear,ti=Mn.figures,$f=Mn.style,Nx=Mn.wrap,Rx=Mn.entriesToDisplay,tA=class extends Ox{constructor(e={}){super(e),this.msg=e.message,this.cursor=e.cursor||0,this.scrollIndex=e.cursor||0,this.hint=e.hint||"",this.warn=e.warn||"- This option is disabled -",this.minSelected=e.min,this.showMinError=!1,this.maxChoices=e.max,this.instructions=e.instructions,this.optionsPerPage=e.optionsPerPage||10,this.value=e.choices.map((i,o)=>(typeof i=="string"&&(i={title:i,value:o}),{title:i&&(i.title||i.value||i),description:i&&i.description,value:i&&(i.value===void 0?o:i.value),selected:i&&i.selected,disabled:i&&i.disabled})),this.clear=Kf("",this.out.columns),e.overrideRender||this.render()}reset(){this.value.map(e=>!e.selected),this.cursor=0,this.fire(),this.render()}selected(){return this.value.filter(e=>e.selected)}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
56
56
  `),this.close()}submit(){let e=this.value.filter(i=>i.selected);this.minSelected&&e.length<this.minSelected?(this.showMinError=!0,this.render()):(this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
57
57
  `),this.close())}first(){this.cursor=0,this.render()}last(){this.cursor=this.value.length-1,this.render()}next(){this.cursor=(this.cursor+1)%this.value.length,this.render()}up(){this.cursor===0?this.cursor=this.value.length-1:this.cursor--,this.render()}down(){this.cursor===this.value.length-1?this.cursor=0:this.cursor++,this.render()}left(){this.value[this.cursor].selected=!1,this.render()}right(){if(this.value.filter(e=>e.selected).length>=this.maxChoices)return this.bell();this.value[this.cursor].selected=!0,this.render()}handleSpaceToggle(){let e=this.value[this.cursor];if(e.selected)e.selected=!1,this.render();else{if(e.disabled||this.value.filter(i=>i.selected).length>=this.maxChoices)return this.bell();e.selected=!0,this.render()}}toggleAll(){if(this.maxChoices!==void 0||this.value[this.cursor].disabled)return this.bell();let e=!this.value[this.cursor].selected;this.value.filter(i=>!i.disabled).forEach(i=>i.selected=e),this.render()}_(e,i){if(e===" ")this.handleSpaceToggle();else if(e==="a")this.toggleAll();else return this.bell()}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
58
58
  Instructions:
59
59
  ${ti.arrowUp}/${ti.arrowDown}: Highlight option
60
60
  ${ti.arrowLeft}/${ti.arrowRight}/[space]: Toggle selection
61
61
  `+(this.maxChoices===void 0?` a: Toggle all
62
- `:"")+" enter/return: Complete answer":""}renderOption(e,i,a,A){let c=(i.selected?wr.green(ti.radioOn):ti.radioOff)+" "+A+" ",u,f;return i.disabled?u=e===a?wr.gray().underline(i.title):wr.strikethrough().gray(i.title):(u=e===a?wr.cyan().underline(i.title):i.title,e===a&&i.description&&(f=` - ${i.description}`,(c.length+u.length+f.length>=this.out.columns||i.description.split(/\r?\n/).length>1)&&(f=`
63
- `+Nx(i.description,{margin:c.length,width:this.out.columns})))),c+u+wr.gray(f||"")}paginateOptions(e){if(e.length===0)return wr.red("No matches for this query.");let i=Rx(this.cursor,e.length,this.optionsPerPage),a=i.startIndex,A=i.endIndex,c,u=[];for(let f=a;f<A;f++)f===a&&a>0?c=ti.arrowUp:f===A-1&&A<e.length?c=ti.arrowDown:c=" ",u.push(this.renderOption(this.cursor,e[f],f,c));return`
62
+ `:"")+" enter/return: Complete answer":""}renderOption(e,i,o,A){let c=(i.selected?wr.green(ti.radioOn):ti.radioOff)+" "+A+" ",u,f;return i.disabled?u=e===o?wr.gray().underline(i.title):wr.strikethrough().gray(i.title):(u=e===o?wr.cyan().underline(i.title):i.title,e===o&&i.description&&(f=` - ${i.description}`,(c.length+u.length+f.length>=this.out.columns||i.description.split(/\r?\n/).length>1)&&(f=`
63
+ `+Nx(i.description,{margin:c.length,width:this.out.columns})))),c+u+wr.gray(f||"")}paginateOptions(e){if(e.length===0)return wr.red("No matches for this query.");let i=Rx(this.cursor,e.length,this.optionsPerPage),o=i.startIndex,A=i.endIndex,c,u=[];for(let f=o;f<A;f++)f===o&&o>0?c=ti.arrowUp:f===A-1&&A<e.length?c=ti.arrowDown:c=" ",u.push(this.renderOption(this.cursor,e[f],f,c));return`
64
64
  `+u.join(`
65
- `)}renderOptions(e){return this.done?"":this.paginateOptions(e)}renderDoneOrInstructions(){if(this.done)return this.value.filter(i=>i.selected).map(i=>i.title).join(", ");let e=[wr.gray(this.hint),this.renderInstructions()];return this.value[this.cursor].disabled&&e.push(wr.yellow(this.warn)),e.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(Yx.hide),super.render();let e=[$f.symbol(this.done,this.aborted),wr.bold(this.msg),$f.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(e+=wr.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),e+=this.renderOptions(this.value),this.out.write(this.clear+e),this.clear=Kf(e,this.out.columns)}};ep.exports=tA});var op=ae((mM,ap)=>{"use strict";function tp(r,e,i,a,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(a,A)}function Gx(r){return function(){var e=this,i=arguments;return new Promise(function(a,A){var c=r.apply(e,i);function u(p){tp(c,a,A,u,f,"next",p)}function f(p){tp(c,a,A,u,f,"throw",p)}u(void 0)})}}var Un=ft(),Lx=Or(),sp=pt(),Px=sp.erase,rp=sp.cursor,kn=Ar(),iA=kn.style,ip=kn.clear,nA=kn.figures,Hx=kn.wrap,Wx=kn.entriesToDisplay,np=(r,e)=>r[e]&&(r[e].value||r[e].title||r[e]),Jx=(r,e)=>r[e]&&(r[e].title||r[e].value||r[e]),Vx=(r,e)=>{let i=r.findIndex(a=>a.value===e||a.title===e);return i>-1?i:void 0},sA=class extends Lx{constructor(e={}){super(e),this.msg=e.message,this.suggest=e.suggest,this.choices=e.choices,this.initial=typeof e.initial=="number"?e.initial:Vx(e.choices,e.initial),this.select=this.initial||e.cursor||0,this.i18n={noMatches:e.noMatches||"no matches found"},this.fallback=e.fallback||this.initial,this.clearFirst=e.clearFirst||!1,this.suggestions=[],this.input="",this.limit=e.limit||10,this.cursor=0,this.transform=iA.render(e.style),this.scale=this.transform.scale,this.render=this.render.bind(this),this.complete=this.complete.bind(this),this.clear=ip("",this.out.columns),this.complete(this.render),this.render()}set fallback(e){this._fb=Number.isSafeInteger(parseInt(e))?parseInt(e):e}get fallback(){let e;return typeof this._fb=="number"?e=this.choices[this._fb]:typeof this._fb=="string"&&(e={title:this._fb}),e||this._fb||{title:this.i18n.noMatches}}moveSelect(e){this.select=e,this.suggestions.length>0?this.value=np(this.suggestions,e):this.value=this.fallback.value,this.fire()}complete(e){var i=this;return Gx(function*(){let a=i.completing=i.suggest(i.input,i.choices),A=yield a;if(i.completing!==a)return;i.suggestions=A.map((u,f,p)=>({title:Jx(p,f),value:np(p,f),description:u.description})),i.completing=!1;let c=Math.max(A.length-1,0);i.moveSelect(Math.min(c,i.select)),e&&e()})()}reset(){this.input="",this.complete(()=>{this.moveSelect(this.initial!==void 0?this.initial:0),this.render()}),this.render()}exit(){this.clearFirst&&this.input.length>0?this.reset():(this.done=this.exited=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
65
+ `)}renderOptions(e){return this.done?"":this.paginateOptions(e)}renderDoneOrInstructions(){if(this.done)return this.value.filter(i=>i.selected).map(i=>i.title).join(", ");let e=[wr.gray(this.hint),this.renderInstructions()];return this.value[this.cursor].disabled&&e.push(wr.yellow(this.warn)),e.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(Yx.hide),super.render();let e=[$f.symbol(this.done,this.aborted),wr.bold(this.msg),$f.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(e+=wr.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),e+=this.renderOptions(this.value),this.out.write(this.clear+e),this.clear=Kf(e,this.out.columns)}};ep.exports=tA});var ap=oe((mM,op)=>{"use strict";function tp(r,e,i,o,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(o,A)}function Gx(r){return function(){var e=this,i=arguments;return new Promise(function(o,A){var c=r.apply(e,i);function u(p){tp(c,o,A,u,f,"next",p)}function f(p){tp(c,o,A,u,f,"throw",p)}u(void 0)})}}var Un=ft(),Lx=Or(),sp=pt(),Px=sp.erase,rp=sp.cursor,kn=Ar(),iA=kn.style,ip=kn.clear,nA=kn.figures,Hx=kn.wrap,Wx=kn.entriesToDisplay,np=(r,e)=>r[e]&&(r[e].value||r[e].title||r[e]),Jx=(r,e)=>r[e]&&(r[e].title||r[e].value||r[e]),Vx=(r,e)=>{let i=r.findIndex(o=>o.value===e||o.title===e);return i>-1?i:void 0},sA=class extends Lx{constructor(e={}){super(e),this.msg=e.message,this.suggest=e.suggest,this.choices=e.choices,this.initial=typeof e.initial=="number"?e.initial:Vx(e.choices,e.initial),this.select=this.initial||e.cursor||0,this.i18n={noMatches:e.noMatches||"no matches found"},this.fallback=e.fallback||this.initial,this.clearFirst=e.clearFirst||!1,this.suggestions=[],this.input="",this.limit=e.limit||10,this.cursor=0,this.transform=iA.render(e.style),this.scale=this.transform.scale,this.render=this.render.bind(this),this.complete=this.complete.bind(this),this.clear=ip("",this.out.columns),this.complete(this.render),this.render()}set fallback(e){this._fb=Number.isSafeInteger(parseInt(e))?parseInt(e):e}get fallback(){let e;return typeof this._fb=="number"?e=this.choices[this._fb]:typeof this._fb=="string"&&(e={title:this._fb}),e||this._fb||{title:this.i18n.noMatches}}moveSelect(e){this.select=e,this.suggestions.length>0?this.value=np(this.suggestions,e):this.value=this.fallback.value,this.fire()}complete(e){var i=this;return Gx(function*(){let o=i.completing=i.suggest(i.input,i.choices),A=yield o;if(i.completing!==o)return;i.suggestions=A.map((u,f,p)=>({title:Jx(p,f),value:np(p,f),description:u.description})),i.completing=!1;let c=Math.max(A.length-1,0);i.moveSelect(Math.min(c,i.select)),e&&e()})()}reset(){this.input="",this.complete(()=>{this.moveSelect(this.initial!==void 0?this.initial:0),this.render()}),this.render()}exit(){this.clearFirst&&this.input.length>0?this.reset():(this.done=this.exited=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
66
66
  `),this.close())}abort(){this.done=this.aborted=!0,this.exited=!1,this.fire(),this.render(),this.out.write(`
67
67
  `),this.close()}submit(){this.done=!0,this.aborted=this.exited=!1,this.fire(),this.render(),this.out.write(`
68
- `),this.close()}_(e,i){let a=this.input.slice(0,this.cursor),A=this.input.slice(this.cursor);this.input=`${a}${e}${A}`,this.cursor=a.length+1,this.complete(this.render),this.render()}delete(){if(this.cursor===0)return this.bell();let e=this.input.slice(0,this.cursor-1),i=this.input.slice(this.cursor);this.input=`${e}${i}`,this.complete(this.render),this.cursor=this.cursor-1,this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();let e=this.input.slice(0,this.cursor),i=this.input.slice(this.cursor+1);this.input=`${e}${i}`,this.complete(this.render),this.render()}first(){this.moveSelect(0),this.render()}last(){this.moveSelect(this.suggestions.length-1),this.render()}up(){this.select===0?this.moveSelect(this.suggestions.length-1):this.moveSelect(this.select-1),this.render()}down(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}next(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}nextPage(){this.moveSelect(Math.min(this.select+this.limit,this.suggestions.length-1)),this.render()}prevPage(){this.moveSelect(Math.max(this.select-this.limit,0)),this.render()}left(){if(this.cursor<=0)return this.bell();this.cursor=this.cursor-1,this.render()}right(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();this.cursor=this.cursor+1,this.render()}renderOption(e,i,a,A){let c,u=a?nA.arrowUp:A?nA.arrowDown:" ",f=i?Un.cyan().underline(e.title):e.title;return u=(i?Un.cyan(nA.pointer)+" ":" ")+u,e.description&&(c=` - ${e.description}`,(u.length+f.length+c.length>=this.out.columns||e.description.split(/\r?\n/).length>1)&&(c=`
69
- `+Hx(e.description,{margin:3,width:this.out.columns}))),u+" "+f+Un.gray(c||"")}render(){if(this.closed)return;this.firstRender?this.out.write(rp.hide):this.out.write(ip(this.outputText,this.out.columns)),super.render();let e=Wx(this.select,this.choices.length,this.limit),i=e.startIndex,a=e.endIndex;if(this.outputText=[iA.symbol(this.done,this.aborted,this.exited),Un.bold(this.msg),iA.delimiter(this.completing),this.done&&this.suggestions[this.select]?this.suggestions[this.select].title:this.rendered=this.transform.render(this.input)].join(" "),!this.done){let A=this.suggestions.slice(i,a).map((c,u)=>this.renderOption(c,this.select===u+i,u===0&&i>0,u+i===a-1&&a<this.choices.length)).join(`
68
+ `),this.close()}_(e,i){let o=this.input.slice(0,this.cursor),A=this.input.slice(this.cursor);this.input=`${o}${e}${A}`,this.cursor=o.length+1,this.complete(this.render),this.render()}delete(){if(this.cursor===0)return this.bell();let e=this.input.slice(0,this.cursor-1),i=this.input.slice(this.cursor);this.input=`${e}${i}`,this.complete(this.render),this.cursor=this.cursor-1,this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();let e=this.input.slice(0,this.cursor),i=this.input.slice(this.cursor+1);this.input=`${e}${i}`,this.complete(this.render),this.render()}first(){this.moveSelect(0),this.render()}last(){this.moveSelect(this.suggestions.length-1),this.render()}up(){this.select===0?this.moveSelect(this.suggestions.length-1):this.moveSelect(this.select-1),this.render()}down(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}next(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}nextPage(){this.moveSelect(Math.min(this.select+this.limit,this.suggestions.length-1)),this.render()}prevPage(){this.moveSelect(Math.max(this.select-this.limit,0)),this.render()}left(){if(this.cursor<=0)return this.bell();this.cursor=this.cursor-1,this.render()}right(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();this.cursor=this.cursor+1,this.render()}renderOption(e,i,o,A){let c,u=o?nA.arrowUp:A?nA.arrowDown:" ",f=i?Un.cyan().underline(e.title):e.title;return u=(i?Un.cyan(nA.pointer)+" ":" ")+u,e.description&&(c=` - ${e.description}`,(u.length+f.length+c.length>=this.out.columns||e.description.split(/\r?\n/).length>1)&&(c=`
69
+ `+Hx(e.description,{margin:3,width:this.out.columns}))),u+" "+f+Un.gray(c||"")}render(){if(this.closed)return;this.firstRender?this.out.write(rp.hide):this.out.write(ip(this.outputText,this.out.columns)),super.render();let e=Wx(this.select,this.choices.length,this.limit),i=e.startIndex,o=e.endIndex;if(this.outputText=[iA.symbol(this.done,this.aborted,this.exited),Un.bold(this.msg),iA.delimiter(this.completing),this.done&&this.suggestions[this.select]?this.suggestions[this.select].title:this.rendered=this.transform.render(this.input)].join(" "),!this.done){let A=this.suggestions.slice(i,o).map((c,u)=>this.renderOption(c,this.select===u+i,u===0&&i>0,u+i===o-1&&o<this.choices.length)).join(`
70
70
  `);this.outputText+=`
71
- `+(A||Un.gray(this.fallback.title))}this.out.write(Px.line+rp.to(0)+this.outputText)}};ap.exports=sA});var up=ae((BM,cp)=>{"use strict";var Gr=ft(),jx=pt(),_x=jx.cursor,Zx=rA(),oA=Ar(),Ap=oA.clear,lp=oA.style,Wi=oA.figures,aA=class extends Zx{constructor(e={}){e.overrideRender=!0,super(e),this.inputValue="",this.clear=Ap("",this.out.columns),this.filteredOptions=this.value,this.render()}last(){this.cursor=this.filteredOptions.length-1,this.render()}next(){this.cursor=(this.cursor+1)%this.filteredOptions.length,this.render()}up(){this.cursor===0?this.cursor=this.filteredOptions.length-1:this.cursor--,this.render()}down(){this.cursor===this.filteredOptions.length-1?this.cursor=0:this.cursor++,this.render()}left(){this.filteredOptions[this.cursor].selected=!1,this.render()}right(){if(this.value.filter(e=>e.selected).length>=this.maxChoices)return this.bell();this.filteredOptions[this.cursor].selected=!0,this.render()}delete(){this.inputValue.length&&(this.inputValue=this.inputValue.substr(0,this.inputValue.length-1),this.updateFilteredOptions())}updateFilteredOptions(){let e=this.filteredOptions[this.cursor];this.filteredOptions=this.value.filter(a=>this.inputValue?!!(typeof a.title=="string"&&a.title.toLowerCase().includes(this.inputValue.toLowerCase())||typeof a.value=="string"&&a.value.toLowerCase().includes(this.inputValue.toLowerCase())):!0);let i=this.filteredOptions.findIndex(a=>a===e);this.cursor=i<0?0:i,this.render()}handleSpaceToggle(){let e=this.filteredOptions[this.cursor];if(e.selected)e.selected=!1,this.render();else{if(e.disabled||this.value.filter(i=>i.selected).length>=this.maxChoices)return this.bell();e.selected=!0,this.render()}}handleInputChange(e){this.inputValue=this.inputValue+e,this.updateFilteredOptions()}_(e,i){e===" "?this.handleSpaceToggle():this.handleInputChange(e)}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
71
+ `+(A||Un.gray(this.fallback.title))}this.out.write(Px.line+rp.to(0)+this.outputText)}};op.exports=sA});var up=oe((BM,cp)=>{"use strict";var Gr=ft(),jx=pt(),_x=jx.cursor,Zx=rA(),aA=Ar(),Ap=aA.clear,lp=aA.style,Wi=aA.figures,oA=class extends Zx{constructor(e={}){e.overrideRender=!0,super(e),this.inputValue="",this.clear=Ap("",this.out.columns),this.filteredOptions=this.value,this.render()}last(){this.cursor=this.filteredOptions.length-1,this.render()}next(){this.cursor=(this.cursor+1)%this.filteredOptions.length,this.render()}up(){this.cursor===0?this.cursor=this.filteredOptions.length-1:this.cursor--,this.render()}down(){this.cursor===this.filteredOptions.length-1?this.cursor=0:this.cursor++,this.render()}left(){this.filteredOptions[this.cursor].selected=!1,this.render()}right(){if(this.value.filter(e=>e.selected).length>=this.maxChoices)return this.bell();this.filteredOptions[this.cursor].selected=!0,this.render()}delete(){this.inputValue.length&&(this.inputValue=this.inputValue.substr(0,this.inputValue.length-1),this.updateFilteredOptions())}updateFilteredOptions(){let e=this.filteredOptions[this.cursor];this.filteredOptions=this.value.filter(o=>this.inputValue?!!(typeof o.title=="string"&&o.title.toLowerCase().includes(this.inputValue.toLowerCase())||typeof o.value=="string"&&o.value.toLowerCase().includes(this.inputValue.toLowerCase())):!0);let i=this.filteredOptions.findIndex(o=>o===e);this.cursor=i<0?0:i,this.render()}handleSpaceToggle(){let e=this.filteredOptions[this.cursor];if(e.selected)e.selected=!1,this.render();else{if(e.disabled||this.value.filter(i=>i.selected).length>=this.maxChoices)return this.bell();e.selected=!0,this.render()}}handleInputChange(e){this.inputValue=this.inputValue+e,this.updateFilteredOptions()}_(e,i){e===" "?this.handleSpaceToggle():this.handleInputChange(e)}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
72
72
  Instructions:
73
73
  ${Wi.arrowUp}/${Wi.arrowDown}: Highlight option
74
74
  ${Wi.arrowLeft}/${Wi.arrowRight}/[space]: Toggle selection
@@ -76,47 +76,47 @@ Instructions:
76
76
  enter/return: Complete answer
77
77
  `:""}renderCurrentInput(){return`
78
78
  Filtered results for: ${this.inputValue?this.inputValue:Gr.gray("Enter something to filter")}
79
- `}renderOption(e,i,a){let A;return i.disabled?A=e===a?Gr.gray().underline(i.title):Gr.strikethrough().gray(i.title):A=e===a?Gr.cyan().underline(i.title):i.title,(i.selected?Gr.green(Wi.radioOn):Wi.radioOff)+" "+A}renderDoneOrInstructions(){if(this.done)return this.value.filter(i=>i.selected).map(i=>i.title).join(", ");let e=[Gr.gray(this.hint),this.renderInstructions(),this.renderCurrentInput()];return this.filteredOptions.length&&this.filteredOptions[this.cursor].disabled&&e.push(Gr.yellow(this.warn)),e.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(_x.hide),super.render();let e=[lp.symbol(this.done,this.aborted),Gr.bold(this.msg),lp.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(e+=Gr.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),e+=this.renderOptions(this.filteredOptions),this.out.write(this.clear+e),this.clear=Ap(e,this.out.columns)}};cp.exports=aA});var Bp=ae((EM,mp)=>{"use strict";var hp=ft(),Xx=Or(),dp=Ar(),fp=dp.style,zx=dp.clear,gp=pt(),qx=gp.erase,pp=gp.cursor,AA=class extends Xx{constructor(e={}){super(e),this.msg=e.message,this.value=e.initial,this.initialValue=!!e.initial,this.yesMsg=e.yes||"yes",this.yesOption=e.yesOption||"(Y/n)",this.noMsg=e.no||"no",this.noOption=e.noOption||"(y/N)",this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
79
+ `}renderOption(e,i,o){let A;return i.disabled?A=e===o?Gr.gray().underline(i.title):Gr.strikethrough().gray(i.title):A=e===o?Gr.cyan().underline(i.title):i.title,(i.selected?Gr.green(Wi.radioOn):Wi.radioOff)+" "+A}renderDoneOrInstructions(){if(this.done)return this.value.filter(i=>i.selected).map(i=>i.title).join(", ");let e=[Gr.gray(this.hint),this.renderInstructions(),this.renderCurrentInput()];return this.filteredOptions.length&&this.filteredOptions[this.cursor].disabled&&e.push(Gr.yellow(this.warn)),e.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(_x.hide),super.render();let e=[lp.symbol(this.done,this.aborted),Gr.bold(this.msg),lp.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(e+=Gr.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),e+=this.renderOptions(this.filteredOptions),this.out.write(this.clear+e),this.clear=Ap(e,this.out.columns)}};cp.exports=oA});var Bp=oe((EM,mp)=>{"use strict";var hp=ft(),Xx=Or(),dp=Ar(),fp=dp.style,zx=dp.clear,gp=pt(),qx=gp.erase,pp=gp.cursor,AA=class extends Xx{constructor(e={}){super(e),this.msg=e.message,this.value=e.initial,this.initialValue=!!e.initial,this.yesMsg=e.yes||"yes",this.yesOption=e.yesOption||"(Y/n)",this.noMsg=e.no||"no",this.noOption=e.noOption||"(y/N)",this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
80
80
  `),this.close()}submit(){this.value=this.value||!1,this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
81
- `),this.close()}_(e,i){return e.toLowerCase()==="y"?(this.value=!0,this.submit()):e.toLowerCase()==="n"?(this.value=!1,this.submit()):this.bell()}render(){this.closed||(this.firstRender?this.out.write(pp.hide):this.out.write(zx(this.outputText,this.out.columns)),super.render(),this.outputText=[fp.symbol(this.done,this.aborted),hp.bold(this.msg),fp.delimiter(this.done),this.done?this.value?this.yesMsg:this.noMsg:hp.gray(this.initialValue?this.yesOption:this.noOption)].join(" "),this.out.write(qx.line+pp.to(0)+this.outputText))}};mp.exports=AA});var wp=ae((wM,Ep)=>{"use strict";Ep.exports={TextPrompt:sf(),SelectPrompt:lf(),TogglePrompt:df(),DatePrompt:Jf(),NumberPrompt:qf(),MultiselectPrompt:rA(),AutocompletePrompt:op(),AutocompleteMultiselectPrompt:up(),ConfirmPrompt:Bp()}});var Cp=ae(yp=>{"use strict";var Rt=yp,Kx=wp(),ta=r=>r;function yr(r,e,i={}){return new Promise((a,A)=>{let c=new Kx[r](e),u=i.onAbort||ta,f=i.onSubmit||ta,p=i.onExit||ta;c.on("state",e.onState||ta),c.on("submit",g=>a(f(g))),c.on("exit",g=>a(p(g))),c.on("abort",g=>A(u(g)))})}Rt.text=r=>yr("TextPrompt",r);Rt.password=r=>(r.style="password",Rt.text(r));Rt.invisible=r=>(r.style="invisible",Rt.text(r));Rt.number=r=>yr("NumberPrompt",r);Rt.date=r=>yr("DatePrompt",r);Rt.confirm=r=>yr("ConfirmPrompt",r);Rt.list=r=>{let e=r.separator||",";return yr("TextPrompt",r,{onSubmit:i=>i.split(e).map(a=>a.trim())})};Rt.toggle=r=>yr("TogglePrompt",r);Rt.select=r=>yr("SelectPrompt",r);Rt.multiselect=r=>{r.choices=[].concat(r.choices||[]);let e=i=>i.filter(a=>a.selected).map(a=>a.value);return yr("MultiselectPrompt",r,{onAbort:e,onSubmit:e})};Rt.autocompleteMultiselect=r=>{r.choices=[].concat(r.choices||[]);let e=i=>i.filter(a=>a.selected).map(a=>a.value);return yr("AutocompleteMultiselectPrompt",r,{onAbort:e,onSubmit:e})};var $x=(r,e)=>Promise.resolve(e.filter(i=>i.title.slice(0,r.length).toLowerCase()===r.toLowerCase()));Rt.autocomplete=r=>(r.suggest=r.suggest||$x,r.choices=[].concat(r.choices||[]),yr("AutocompletePrompt",r))});var Sp=ae((CM,Tp)=>{"use strict";function bp(r,e){var i=Object.keys(r);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(r);e&&(a=a.filter(function(A){return Object.getOwnPropertyDescriptor(r,A).enumerable})),i.push.apply(i,a)}return i}function xp(r){for(var e=1;e<arguments.length;e++){var i=arguments[e]!=null?arguments[e]:{};e%2?bp(Object(i),!0).forEach(function(a){eQ(r,a,i[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(i)):bp(Object(i)).forEach(function(a){Object.defineProperty(r,a,Object.getOwnPropertyDescriptor(i,a))})}return r}function eQ(r,e,i){return e in r?Object.defineProperty(r,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[e]=i,r}function tQ(r,e){var i=typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(!i){if(Array.isArray(r)||(i=rQ(r))||e&&r&&typeof r.length=="number"){i&&(r=i);var a=0,A=function(){};return{s:A,n:function(){return a>=r.length?{done:!0}:{done:!1,value:r[a++]}},e:function(g){throw g},f:A}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
82
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c=!0,u=!1,f;return{s:function(){i=i.call(r)},n:function(){var g=i.next();return c=g.done,g},e:function(g){u=!0,f=g},f:function(){try{!c&&i.return!=null&&i.return()}finally{if(u)throw f}}}}function rQ(r,e){if(r){if(typeof r=="string")return Qp(r,e);var i=Object.prototype.toString.call(r).slice(8,-1);if(i==="Object"&&r.constructor&&(i=r.constructor.name),i==="Map"||i==="Set")return Array.from(r);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return Qp(r,e)}}function Qp(r,e){(e==null||e>r.length)&&(e=r.length);for(var i=0,a=new Array(e);i<e;i++)a[i]=r[i];return a}function vp(r,e,i,a,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(a,A)}function Ip(r){return function(){var e=this,i=arguments;return new Promise(function(a,A){var c=r.apply(e,i);function u(p){vp(c,a,A,u,f,"next",p)}function f(p){vp(c,a,A,u,f,"throw",p)}u(void 0)})}}var lA=Cp(),iQ=["suggest","format","onState","validate","onRender","type"],Fp=()=>{};function ri(){return cA.apply(this,arguments)}function cA(){return cA=Ip(function*(r=[],{onSubmit:e=Fp,onCancel:i=Fp}={}){let a={},A=ri._override||{};r=[].concat(r);let c,u,f,p,g,m,E=(function(){var I=Ip(function*(F,k,_=!1){if(!(!_&&F.validate&&F.validate(k)!==!0))return F.format?yield F.format(k,a):k});return function(k,_){return I.apply(this,arguments)}})();var b=tQ(r),y;try{for(b.s();!(y=b.n()).done;){u=y.value;var Q=u;if(p=Q.name,g=Q.type,typeof g=="function"&&(g=yield g(c,xp({},a),u),u.type=g),!!g){for(let I in u){if(iQ.includes(I))continue;let F=u[I];u[I]=typeof F=="function"?yield F(c,xp({},a),m):F}if(m=u,typeof u.message!="string")throw new Error("prompt message is required");var v=u;if(p=v.name,g=v.type,lA[g]===void 0)throw new Error(`prompt type (${g}) is not defined`);if(A[u.name]!==void 0&&(c=yield E(u,A[u.name]),c!==void 0)){a[p]=c;continue}try{c=ri._injected?nQ(ri._injected,u.initial):yield lA[g](u),a[p]=c=yield E(u,c,!0),f=yield e(u,c,a)}catch{f=!(yield i(u,a))}if(f)return a}}}catch(I){b.e(I)}finally{b.f()}return a}),cA.apply(this,arguments)}function nQ(r,e){let i=r.shift();if(i instanceof Error)throw i;return i===void 0?e:i}function sQ(r){ri._injected=(ri._injected||[]).concat(r)}function aQ(r){ri._override=Object.assign({},r)}Tp.exports=Object.assign(ri,{prompt:ri,prompts:lA,inject:sQ,override:aQ})});var Mp=ae((bM,Dp)=>{"use strict";Dp.exports=(r,e)=>{if(!(r.meta&&r.name!=="escape")){if(r.ctrl){if(r.name==="a")return"first";if(r.name==="c"||r.name==="d")return"abort";if(r.name==="e")return"last";if(r.name==="g")return"reset"}if(e){if(r.name==="j")return"down";if(r.name==="k")return"up"}return r.name==="return"||r.name==="enter"?"submit":r.name==="backspace"?"delete":r.name==="delete"?"deleteForward":r.name==="abort"?"abort":r.name==="escape"?"exit":r.name==="tab"?"next":r.name==="pagedown"?"nextPage":r.name==="pageup"?"prevPage":r.name==="home"?"home":r.name==="end"?"end":r.name==="up"?"up":r.name==="down"?"down":r.name==="right"?"right":r.name==="left"?"left":!1}}});var ra=ae((xM,Up)=>{"use strict";Up.exports=r=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"),i=new RegExp(e,"g");return typeof r=="string"?r.replace(i,""):r}});var Op=ae((QM,Yp)=>{"use strict";var oQ=ra(),{erase:kp,cursor:AQ}=pt(),lQ=r=>[...oQ(r)].length;Yp.exports=function(r,e){if(!e)return kp.line+AQ.to(0);let i=0,a=r.split(/\r?\n/);for(let A of a)i+=1+Math.floor(Math.max(lQ(A)-1,0)/e);return kp.lines(i)}});var uA=ae((vM,Np)=>{"use strict";var Yn={arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",tick:"\u2714",cross:"\u2716",ellipsis:"\u2026",pointerSmall:"\u203A",line:"\u2500",pointer:"\u276F"},cQ={arrowUp:Yn.arrowUp,arrowDown:Yn.arrowDown,arrowLeft:Yn.arrowLeft,arrowRight:Yn.arrowRight,radioOn:"(*)",radioOff:"( )",tick:"\u221A",cross:"\xD7",ellipsis:"...",pointerSmall:"\xBB",line:"\u2500",pointer:">"},uQ=process.platform==="win32"?cQ:Yn;Np.exports=uQ});var Gp=ae((IM,Rp)=>{"use strict";var Ji=ft(),yi=uA(),hA=Object.freeze({password:{scale:1,render:r=>"*".repeat(r.length)},emoji:{scale:2,render:r=>"\u{1F603}".repeat(r.length)},invisible:{scale:0,render:r=>""},default:{scale:1,render:r=>`${r}`}}),hQ=r=>hA[r]||hA.default,On=Object.freeze({aborted:Ji.red(yi.cross),done:Ji.green(yi.tick),exited:Ji.yellow(yi.cross),default:Ji.cyan("?")}),fQ=(r,e,i)=>e?On.aborted:i?On.exited:r?On.done:On.default,pQ=r=>Ji.gray(r?yi.ellipsis:yi.pointerSmall),dQ=(r,e)=>Ji.gray(r?e?yi.pointerSmall:"+":yi.line);Rp.exports={styles:hA,render:hQ,symbols:On,symbol:fQ,delimiter:pQ,item:dQ}});var Pp=ae((FM,Lp)=>{"use strict";var gQ=ra();Lp.exports=function(r,e){let i=String(gQ(r)||"").split(/\r?\n/);return e?i.map(a=>Math.ceil(a.length/e)).reduce((a,A)=>a+A):i.length}});var Wp=ae((TM,Hp)=>{"use strict";Hp.exports=(r,e={})=>{let i=Number.isSafeInteger(parseInt(e.margin))?new Array(parseInt(e.margin)).fill(" ").join(""):e.margin||"",a=e.width;return(r||"").split(/\r?\n/g).map(A=>A.split(/\s+/g).reduce((c,u)=>(u.length+i.length>=a||c[c.length-1].length+u.length+1<a?c[c.length-1]+=` ${u}`:c.push(`${i}${u}`),c),[i]).join(`
81
+ `),this.close()}_(e,i){return e.toLowerCase()==="y"?(this.value=!0,this.submit()):e.toLowerCase()==="n"?(this.value=!1,this.submit()):this.bell()}render(){this.closed||(this.firstRender?this.out.write(pp.hide):this.out.write(zx(this.outputText,this.out.columns)),super.render(),this.outputText=[fp.symbol(this.done,this.aborted),hp.bold(this.msg),fp.delimiter(this.done),this.done?this.value?this.yesMsg:this.noMsg:hp.gray(this.initialValue?this.yesOption:this.noOption)].join(" "),this.out.write(qx.line+pp.to(0)+this.outputText))}};mp.exports=AA});var wp=oe((wM,Ep)=>{"use strict";Ep.exports={TextPrompt:sf(),SelectPrompt:lf(),TogglePrompt:df(),DatePrompt:Jf(),NumberPrompt:qf(),MultiselectPrompt:rA(),AutocompletePrompt:ap(),AutocompleteMultiselectPrompt:up(),ConfirmPrompt:Bp()}});var Cp=oe(yp=>{"use strict";var Rt=yp,Kx=wp(),to=r=>r;function yr(r,e,i={}){return new Promise((o,A)=>{let c=new Kx[r](e),u=i.onAbort||to,f=i.onSubmit||to,p=i.onExit||to;c.on("state",e.onState||to),c.on("submit",g=>o(f(g))),c.on("exit",g=>o(p(g))),c.on("abort",g=>A(u(g)))})}Rt.text=r=>yr("TextPrompt",r);Rt.password=r=>(r.style="password",Rt.text(r));Rt.invisible=r=>(r.style="invisible",Rt.text(r));Rt.number=r=>yr("NumberPrompt",r);Rt.date=r=>yr("DatePrompt",r);Rt.confirm=r=>yr("ConfirmPrompt",r);Rt.list=r=>{let e=r.separator||",";return yr("TextPrompt",r,{onSubmit:i=>i.split(e).map(o=>o.trim())})};Rt.toggle=r=>yr("TogglePrompt",r);Rt.select=r=>yr("SelectPrompt",r);Rt.multiselect=r=>{r.choices=[].concat(r.choices||[]);let e=i=>i.filter(o=>o.selected).map(o=>o.value);return yr("MultiselectPrompt",r,{onAbort:e,onSubmit:e})};Rt.autocompleteMultiselect=r=>{r.choices=[].concat(r.choices||[]);let e=i=>i.filter(o=>o.selected).map(o=>o.value);return yr("AutocompleteMultiselectPrompt",r,{onAbort:e,onSubmit:e})};var $x=(r,e)=>Promise.resolve(e.filter(i=>i.title.slice(0,r.length).toLowerCase()===r.toLowerCase()));Rt.autocomplete=r=>(r.suggest=r.suggest||$x,r.choices=[].concat(r.choices||[]),yr("AutocompletePrompt",r))});var Sp=oe((CM,Tp)=>{"use strict";function bp(r,e){var i=Object.keys(r);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(r);e&&(o=o.filter(function(A){return Object.getOwnPropertyDescriptor(r,A).enumerable})),i.push.apply(i,o)}return i}function xp(r){for(var e=1;e<arguments.length;e++){var i=arguments[e]!=null?arguments[e]:{};e%2?bp(Object(i),!0).forEach(function(o){eQ(r,o,i[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(i)):bp(Object(i)).forEach(function(o){Object.defineProperty(r,o,Object.getOwnPropertyDescriptor(i,o))})}return r}function eQ(r,e,i){return e in r?Object.defineProperty(r,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):r[e]=i,r}function tQ(r,e){var i=typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(!i){if(Array.isArray(r)||(i=rQ(r))||e&&r&&typeof r.length=="number"){i&&(r=i);var o=0,A=function(){};return{s:A,n:function(){return o>=r.length?{done:!0}:{done:!1,value:r[o++]}},e:function(g){throw g},f:A}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
82
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c=!0,u=!1,f;return{s:function(){i=i.call(r)},n:function(){var g=i.next();return c=g.done,g},e:function(g){u=!0,f=g},f:function(){try{!c&&i.return!=null&&i.return()}finally{if(u)throw f}}}}function rQ(r,e){if(r){if(typeof r=="string")return Qp(r,e);var i=Object.prototype.toString.call(r).slice(8,-1);if(i==="Object"&&r.constructor&&(i=r.constructor.name),i==="Map"||i==="Set")return Array.from(r);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return Qp(r,e)}}function Qp(r,e){(e==null||e>r.length)&&(e=r.length);for(var i=0,o=new Array(e);i<e;i++)o[i]=r[i];return o}function vp(r,e,i,o,A,c,u){try{var f=r[c](u),p=f.value}catch(g){i(g);return}f.done?e(p):Promise.resolve(p).then(o,A)}function Ip(r){return function(){var e=this,i=arguments;return new Promise(function(o,A){var c=r.apply(e,i);function u(p){vp(c,o,A,u,f,"next",p)}function f(p){vp(c,o,A,u,f,"throw",p)}u(void 0)})}}var lA=Cp(),iQ=["suggest","format","onState","validate","onRender","type"],Fp=()=>{};function ri(){return cA.apply(this,arguments)}function cA(){return cA=Ip(function*(r=[],{onSubmit:e=Fp,onCancel:i=Fp}={}){let o={},A=ri._override||{};r=[].concat(r);let c,u,f,p,g,m,E=(function(){var I=Ip(function*(F,k,_=!1){if(!(!_&&F.validate&&F.validate(k)!==!0))return F.format?yield F.format(k,o):k});return function(k,_){return I.apply(this,arguments)}})();var b=tQ(r),y;try{for(b.s();!(y=b.n()).done;){u=y.value;var Q=u;if(p=Q.name,g=Q.type,typeof g=="function"&&(g=yield g(c,xp({},o),u),u.type=g),!!g){for(let I in u){if(iQ.includes(I))continue;let F=u[I];u[I]=typeof F=="function"?yield F(c,xp({},o),m):F}if(m=u,typeof u.message!="string")throw new Error("prompt message is required");var v=u;if(p=v.name,g=v.type,lA[g]===void 0)throw new Error(`prompt type (${g}) is not defined`);if(A[u.name]!==void 0&&(c=yield E(u,A[u.name]),c!==void 0)){o[p]=c;continue}try{c=ri._injected?nQ(ri._injected,u.initial):yield lA[g](u),o[p]=c=yield E(u,c,!0),f=yield e(u,c,o)}catch{f=!(yield i(u,o))}if(f)return o}}}catch(I){b.e(I)}finally{b.f()}return o}),cA.apply(this,arguments)}function nQ(r,e){let i=r.shift();if(i instanceof Error)throw i;return i===void 0?e:i}function sQ(r){ri._injected=(ri._injected||[]).concat(r)}function oQ(r){ri._override=Object.assign({},r)}Tp.exports=Object.assign(ri,{prompt:ri,prompts:lA,inject:sQ,override:oQ})});var Mp=oe((bM,Dp)=>{"use strict";Dp.exports=(r,e)=>{if(!(r.meta&&r.name!=="escape")){if(r.ctrl){if(r.name==="a")return"first";if(r.name==="c"||r.name==="d")return"abort";if(r.name==="e")return"last";if(r.name==="g")return"reset"}if(e){if(r.name==="j")return"down";if(r.name==="k")return"up"}return r.name==="return"||r.name==="enter"?"submit":r.name==="backspace"?"delete":r.name==="delete"?"deleteForward":r.name==="abort"?"abort":r.name==="escape"?"exit":r.name==="tab"?"next":r.name==="pagedown"?"nextPage":r.name==="pageup"?"prevPage":r.name==="home"?"home":r.name==="end"?"end":r.name==="up"?"up":r.name==="down"?"down":r.name==="right"?"right":r.name==="left"?"left":!1}}});var ro=oe((xM,Up)=>{"use strict";Up.exports=r=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"),i=new RegExp(e,"g");return typeof r=="string"?r.replace(i,""):r}});var Op=oe((QM,Yp)=>{"use strict";var aQ=ro(),{erase:kp,cursor:AQ}=pt(),lQ=r=>[...aQ(r)].length;Yp.exports=function(r,e){if(!e)return kp.line+AQ.to(0);let i=0,o=r.split(/\r?\n/);for(let A of o)i+=1+Math.floor(Math.max(lQ(A)-1,0)/e);return kp.lines(i)}});var uA=oe((vM,Np)=>{"use strict";var Yn={arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",tick:"\u2714",cross:"\u2716",ellipsis:"\u2026",pointerSmall:"\u203A",line:"\u2500",pointer:"\u276F"},cQ={arrowUp:Yn.arrowUp,arrowDown:Yn.arrowDown,arrowLeft:Yn.arrowLeft,arrowRight:Yn.arrowRight,radioOn:"(*)",radioOff:"( )",tick:"\u221A",cross:"\xD7",ellipsis:"...",pointerSmall:"\xBB",line:"\u2500",pointer:">"},uQ=process.platform==="win32"?cQ:Yn;Np.exports=uQ});var Gp=oe((IM,Rp)=>{"use strict";var Ji=ft(),yi=uA(),hA=Object.freeze({password:{scale:1,render:r=>"*".repeat(r.length)},emoji:{scale:2,render:r=>"\u{1F603}".repeat(r.length)},invisible:{scale:0,render:r=>""},default:{scale:1,render:r=>`${r}`}}),hQ=r=>hA[r]||hA.default,On=Object.freeze({aborted:Ji.red(yi.cross),done:Ji.green(yi.tick),exited:Ji.yellow(yi.cross),default:Ji.cyan("?")}),fQ=(r,e,i)=>e?On.aborted:i?On.exited:r?On.done:On.default,pQ=r=>Ji.gray(r?yi.ellipsis:yi.pointerSmall),dQ=(r,e)=>Ji.gray(r?e?yi.pointerSmall:"+":yi.line);Rp.exports={styles:hA,render:hQ,symbols:On,symbol:fQ,delimiter:pQ,item:dQ}});var Pp=oe((FM,Lp)=>{"use strict";var gQ=ro();Lp.exports=function(r,e){let i=String(gQ(r)||"").split(/\r?\n/);return e?i.map(o=>Math.ceil(o.length/e)).reduce((o,A)=>o+A):i.length}});var Wp=oe((TM,Hp)=>{"use strict";Hp.exports=(r,e={})=>{let i=Number.isSafeInteger(parseInt(e.margin))?new Array(parseInt(e.margin)).fill(" ").join(""):e.margin||"",o=e.width;return(r||"").split(/\r?\n/g).map(A=>A.split(/\s+/g).reduce((c,u)=>(u.length+i.length>=o||c[c.length-1].length+u.length+1<o?c[c.length-1]+=` ${u}`:c.push(`${i}${u}`),c),[i]).join(`
83
83
  `)).join(`
84
- `)}});var Vp=ae((SM,Jp)=>{"use strict";Jp.exports=(r,e,i)=>{i=i||e;let a=Math.min(e-i,r-Math.floor(i/2));a<0&&(a=0);let A=Math.min(a+i,e);return{startIndex:a,endIndex:A}}});var lr=ae((DM,jp)=>{"use strict";jp.exports={action:Mp(),clear:Op(),style:Gp(),strip:ra(),figures:uA(),lines:Pp(),wrap:Wp(),entriesToDisplay:Vp()}});var Lr=ae((MM,Zp)=>{"use strict";var _p=We("readline"),{action:mQ}=lr(),BQ=We("events"),{beep:EQ,cursor:wQ}=pt(),yQ=ft(),fA=class extends BQ{constructor(e={}){super(),this.firstRender=!0,this.in=e.stdin||process.stdin,this.out=e.stdout||process.stdout,this.onRender=(e.onRender||(()=>{})).bind(this);let i=_p.createInterface({input:this.in,escapeCodeTimeout:50});_p.emitKeypressEvents(this.in,i),this.in.isTTY&&this.in.setRawMode(!0);let a=["SelectPrompt","MultiselectPrompt"].indexOf(this.constructor.name)>-1,A=(c,u)=>{let f=mQ(u,a);f===!1?this._&&this._(c,u):typeof this[f]=="function"?this[f](u):this.bell()};this.close=()=>{this.out.write(wQ.show),this.in.removeListener("keypress",A),this.in.isTTY&&this.in.setRawMode(!1),i.close(),this.emit(this.aborted?"abort":this.exited?"exit":"submit",this.value),this.closed=!0},this.in.on("keypress",A)}fire(){this.emit("state",{value:this.value,aborted:!!this.aborted,exited:!!this.exited})}bell(){this.out.write(EQ)}render(){this.onRender(yQ),this.firstRender&&(this.firstRender=!1)}};Zp.exports=fA});var zp=ae((UM,Xp)=>{var ia=ft(),CQ=Lr(),{erase:bQ,cursor:Nn}=pt(),{style:pA,clear:dA,lines:xQ,figures:QQ}=lr(),gA=class extends CQ{constructor(e={}){super(e),this.transform=pA.render(e.style),this.scale=this.transform.scale,this.msg=e.message,this.initial=e.initial||"",this.validator=e.validate||(()=>!0),this.value="",this.errorMsg=e.error||"Please Enter A Valid Value",this.cursor=+!!this.initial,this.cursorOffset=0,this.clear=dA("",this.out.columns),this.render()}set value(e){!e&&this.initial?(this.placeholder=!0,this.rendered=ia.gray(this.transform.render(this.initial))):(this.placeholder=!1,this.rendered=this.transform.render(e)),this._value=e,this.fire()}get value(){return this._value}reset(){this.value="",this.cursor=+!!this.initial,this.cursorOffset=0,this.fire(),this.render()}exit(){this.abort()}abort(){this.value=this.value||this.initial,this.done=this.aborted=!0,this.error=!1,this.red=!1,this.fire(),this.render(),this.out.write(`
84
+ `)}});var Vp=oe((SM,Jp)=>{"use strict";Jp.exports=(r,e,i)=>{i=i||e;let o=Math.min(e-i,r-Math.floor(i/2));o<0&&(o=0);let A=Math.min(o+i,e);return{startIndex:o,endIndex:A}}});var lr=oe((DM,jp)=>{"use strict";jp.exports={action:Mp(),clear:Op(),style:Gp(),strip:ro(),figures:uA(),lines:Pp(),wrap:Wp(),entriesToDisplay:Vp()}});var Lr=oe((MM,Zp)=>{"use strict";var _p=We("readline"),{action:mQ}=lr(),BQ=We("events"),{beep:EQ,cursor:wQ}=pt(),yQ=ft(),fA=class extends BQ{constructor(e={}){super(),this.firstRender=!0,this.in=e.stdin||process.stdin,this.out=e.stdout||process.stdout,this.onRender=(e.onRender||(()=>{})).bind(this);let i=_p.createInterface({input:this.in,escapeCodeTimeout:50});_p.emitKeypressEvents(this.in,i),this.in.isTTY&&this.in.setRawMode(!0);let o=["SelectPrompt","MultiselectPrompt"].indexOf(this.constructor.name)>-1,A=(c,u)=>{let f=mQ(u,o);f===!1?this._&&this._(c,u):typeof this[f]=="function"?this[f](u):this.bell()};this.close=()=>{this.out.write(wQ.show),this.in.removeListener("keypress",A),this.in.isTTY&&this.in.setRawMode(!1),i.close(),this.emit(this.aborted?"abort":this.exited?"exit":"submit",this.value),this.closed=!0},this.in.on("keypress",A)}fire(){this.emit("state",{value:this.value,aborted:!!this.aborted,exited:!!this.exited})}bell(){this.out.write(EQ)}render(){this.onRender(yQ),this.firstRender&&(this.firstRender=!1)}};Zp.exports=fA});var zp=oe((UM,Xp)=>{var io=ft(),CQ=Lr(),{erase:bQ,cursor:Nn}=pt(),{style:pA,clear:dA,lines:xQ,figures:QQ}=lr(),gA=class extends CQ{constructor(e={}){super(e),this.transform=pA.render(e.style),this.scale=this.transform.scale,this.msg=e.message,this.initial=e.initial||"",this.validator=e.validate||(()=>!0),this.value="",this.errorMsg=e.error||"Please Enter A Valid Value",this.cursor=+!!this.initial,this.cursorOffset=0,this.clear=dA("",this.out.columns),this.render()}set value(e){!e&&this.initial?(this.placeholder=!0,this.rendered=io.gray(this.transform.render(this.initial))):(this.placeholder=!1,this.rendered=this.transform.render(e)),this._value=e,this.fire()}get value(){return this._value}reset(){this.value="",this.cursor=+!!this.initial,this.cursorOffset=0,this.fire(),this.render()}exit(){this.abort()}abort(){this.value=this.value||this.initial,this.done=this.aborted=!0,this.error=!1,this.red=!1,this.fire(),this.render(),this.out.write(`
85
85
  `),this.close()}async validate(){let e=await this.validator(this.value);typeof e=="string"&&(this.errorMsg=e,e=!1),this.error=!e}async submit(){if(this.value=this.value||this.initial,this.cursorOffset=0,this.cursor=this.rendered.length,await this.validate(),this.error){this.red=!0,this.fire(),this.render();return}this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
86
- `),this.close()}next(){if(!this.placeholder)return this.bell();this.value=this.initial,this.cursor=this.rendered.length,this.fire(),this.render()}moveCursor(e){this.placeholder||(this.cursor=this.cursor+e,this.cursorOffset+=e)}_(e,i){let a=this.value.slice(0,this.cursor),A=this.value.slice(this.cursor);this.value=`${a}${e}${A}`,this.red=!1,this.cursor=this.placeholder?0:a.length+1,this.render()}delete(){if(this.isCursorAtStart())return this.bell();let e=this.value.slice(0,this.cursor-1),i=this.value.slice(this.cursor);this.value=`${e}${i}`,this.red=!1,this.isCursorAtStart()?this.cursorOffset=0:(this.cursorOffset++,this.moveCursor(-1)),this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();let e=this.value.slice(0,this.cursor),i=this.value.slice(this.cursor+1);this.value=`${e}${i}`,this.red=!1,this.isCursorAtEnd()?this.cursorOffset=0:this.cursorOffset++,this.render()}first(){this.cursor=0,this.render()}last(){this.cursor=this.value.length,this.render()}left(){if(this.cursor<=0||this.placeholder)return this.bell();this.moveCursor(-1),this.render()}right(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();this.moveCursor(1),this.render()}isCursorAtStart(){return this.cursor===0||this.placeholder&&this.cursor===1}isCursorAtEnd(){return this.cursor===this.rendered.length||this.placeholder&&this.cursor===this.rendered.length+1}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(Nn.down(xQ(this.outputError,this.out.columns)-1)+dA(this.outputError,this.out.columns)),this.out.write(dA(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[pA.symbol(this.done,this.aborted),ia.bold(this.msg),pA.delimiter(this.done),this.red?ia.red(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
87
- `).reduce((e,i,a)=>e+`
88
- ${a?" ":QQ.pointerSmall} ${ia.red().italic(i)}`,"")),this.out.write(bQ.line+Nn.to(0)+this.outputText+Nn.save+this.outputError+Nn.restore+Nn.move(this.cursorOffset,0)))}};Xp.exports=gA});var ed=ae((kM,$p)=>{"use strict";var Pr=ft(),vQ=Lr(),{style:qp,clear:Kp,figures:na,wrap:IQ,entriesToDisplay:FQ}=lr(),{cursor:TQ}=pt(),mA=class extends vQ{constructor(e={}){super(e),this.msg=e.message,this.hint=e.hint||"- Use arrow-keys. Return to submit.",this.warn=e.warn||"- This option is disabled",this.cursor=e.initial||0,this.choices=e.choices.map((i,a)=>(typeof i=="string"&&(i={title:i,value:a}),{title:i&&(i.title||i.value||i),value:i&&(i.value===void 0?a:i.value),description:i&&i.description,selected:i&&i.selected,disabled:i&&i.disabled})),this.optionsPerPage=e.optionsPerPage||10,this.value=(this.choices[this.cursor]||{}).value,this.clear=Kp("",this.out.columns),this.render()}moveCursor(e){this.cursor=e,this.value=this.choices[e].value,this.fire()}reset(){this.moveCursor(0),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
86
+ `),this.close()}next(){if(!this.placeholder)return this.bell();this.value=this.initial,this.cursor=this.rendered.length,this.fire(),this.render()}moveCursor(e){this.placeholder||(this.cursor=this.cursor+e,this.cursorOffset+=e)}_(e,i){let o=this.value.slice(0,this.cursor),A=this.value.slice(this.cursor);this.value=`${o}${e}${A}`,this.red=!1,this.cursor=this.placeholder?0:o.length+1,this.render()}delete(){if(this.isCursorAtStart())return this.bell();let e=this.value.slice(0,this.cursor-1),i=this.value.slice(this.cursor);this.value=`${e}${i}`,this.red=!1,this.isCursorAtStart()?this.cursorOffset=0:(this.cursorOffset++,this.moveCursor(-1)),this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();let e=this.value.slice(0,this.cursor),i=this.value.slice(this.cursor+1);this.value=`${e}${i}`,this.red=!1,this.isCursorAtEnd()?this.cursorOffset=0:this.cursorOffset++,this.render()}first(){this.cursor=0,this.render()}last(){this.cursor=this.value.length,this.render()}left(){if(this.cursor<=0||this.placeholder)return this.bell();this.moveCursor(-1),this.render()}right(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();this.moveCursor(1),this.render()}isCursorAtStart(){return this.cursor===0||this.placeholder&&this.cursor===1}isCursorAtEnd(){return this.cursor===this.rendered.length||this.placeholder&&this.cursor===this.rendered.length+1}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(Nn.down(xQ(this.outputError,this.out.columns)-1)+dA(this.outputError,this.out.columns)),this.out.write(dA(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[pA.symbol(this.done,this.aborted),io.bold(this.msg),pA.delimiter(this.done),this.red?io.red(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
87
+ `).reduce((e,i,o)=>e+`
88
+ ${o?" ":QQ.pointerSmall} ${io.red().italic(i)}`,"")),this.out.write(bQ.line+Nn.to(0)+this.outputText+Nn.save+this.outputError+Nn.restore+Nn.move(this.cursorOffset,0)))}};Xp.exports=gA});var ed=oe((kM,$p)=>{"use strict";var Pr=ft(),vQ=Lr(),{style:qp,clear:Kp,figures:no,wrap:IQ,entriesToDisplay:FQ}=lr(),{cursor:TQ}=pt(),mA=class extends vQ{constructor(e={}){super(e),this.msg=e.message,this.hint=e.hint||"- Use arrow-keys. Return to submit.",this.warn=e.warn||"- This option is disabled",this.cursor=e.initial||0,this.choices=e.choices.map((i,o)=>(typeof i=="string"&&(i={title:i,value:o}),{title:i&&(i.title||i.value||i),value:i&&(i.value===void 0?o:i.value),description:i&&i.description,selected:i&&i.selected,disabled:i&&i.disabled})),this.optionsPerPage=e.optionsPerPage||10,this.value=(this.choices[this.cursor]||{}).value,this.clear=Kp("",this.out.columns),this.render()}moveCursor(e){this.cursor=e,this.value=this.choices[e].value,this.fire()}reset(){this.moveCursor(0),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
89
89
  `),this.close()}submit(){this.selection.disabled?this.bell():(this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
90
90
  `),this.close())}first(){this.moveCursor(0),this.render()}last(){this.moveCursor(this.choices.length-1),this.render()}up(){this.cursor===0?this.moveCursor(this.choices.length-1):this.moveCursor(this.cursor-1),this.render()}down(){this.cursor===this.choices.length-1?this.moveCursor(0):this.moveCursor(this.cursor+1),this.render()}next(){this.moveCursor((this.cursor+1)%this.choices.length),this.render()}_(e,i){if(e===" ")return this.submit()}get selection(){return this.choices[this.cursor]}render(){if(this.closed)return;this.firstRender?this.out.write(TQ.hide):this.out.write(Kp(this.outputText,this.out.columns)),super.render();let{startIndex:e,endIndex:i}=FQ(this.cursor,this.choices.length,this.optionsPerPage);if(this.outputText=[qp.symbol(this.done,this.aborted),Pr.bold(this.msg),qp.delimiter(!1),this.done?this.selection.title:this.selection.disabled?Pr.yellow(this.warn):Pr.gray(this.hint)].join(" "),!this.done){this.outputText+=`
91
- `;for(let a=e;a<i;a++){let A,c,u="",f=this.choices[a];a===e&&e>0?c=na.arrowUp:a===i-1&&i<this.choices.length?c=na.arrowDown:c=" ",f.disabled?(A=this.cursor===a?Pr.gray().underline(f.title):Pr.strikethrough().gray(f.title),c=(this.cursor===a?Pr.bold().gray(na.pointer)+" ":" ")+c):(A=this.cursor===a?Pr.cyan().underline(f.title):f.title,c=(this.cursor===a?Pr.cyan(na.pointer)+" ":" ")+c,f.description&&this.cursor===a&&(u=` - ${f.description}`,(c.length+A.length+u.length>=this.out.columns||f.description.split(/\r?\n/).length>1)&&(u=`
91
+ `;for(let o=e;o<i;o++){let A,c,u="",f=this.choices[o];o===e&&e>0?c=no.arrowUp:o===i-1&&i<this.choices.length?c=no.arrowDown:c=" ",f.disabled?(A=this.cursor===o?Pr.gray().underline(f.title):Pr.strikethrough().gray(f.title),c=(this.cursor===o?Pr.bold().gray(no.pointer)+" ":" ")+c):(A=this.cursor===o?Pr.cyan().underline(f.title):f.title,c=(this.cursor===o?Pr.cyan(no.pointer)+" ":" ")+c,f.description&&this.cursor===o&&(u=` - ${f.description}`,(c.length+A.length+u.length>=this.out.columns||f.description.split(/\r?\n/).length>1)&&(u=`
92
92
  `+IQ(f.description,{margin:3,width:this.out.columns})))),this.outputText+=`${c} ${A}${Pr.gray(u)}
93
- `}}this.out.write(this.outputText)}};$p.exports=mA});var nd=ae((YM,id)=>{var sa=ft(),SQ=Lr(),{style:td,clear:DQ}=lr(),{cursor:rd,erase:MQ}=pt(),BA=class extends SQ{constructor(e={}){super(e),this.msg=e.message,this.value=!!e.initial,this.active=e.active||"on",this.inactive=e.inactive||"off",this.initialValue=this.value,this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
93
+ `}}this.out.write(this.outputText)}};$p.exports=mA});var nd=oe((YM,id)=>{var so=ft(),SQ=Lr(),{style:td,clear:DQ}=lr(),{cursor:rd,erase:MQ}=pt(),BA=class extends SQ{constructor(e={}){super(e),this.msg=e.message,this.value=!!e.initial,this.active=e.active||"on",this.inactive=e.inactive||"off",this.initialValue=this.value,this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
94
94
  `),this.close()}submit(){this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
95
- `),this.close()}deactivate(){if(this.value===!1)return this.bell();this.value=!1,this.render()}activate(){if(this.value===!0)return this.bell();this.value=!0,this.render()}delete(){this.deactivate()}left(){this.deactivate()}right(){this.activate()}down(){this.deactivate()}up(){this.activate()}next(){this.value=!this.value,this.fire(),this.render()}_(e,i){if(e===" ")this.value=!this.value;else if(e==="1")this.value=!0;else if(e==="0")this.value=!1;else return this.bell();this.render()}render(){this.closed||(this.firstRender?this.out.write(rd.hide):this.out.write(DQ(this.outputText,this.out.columns)),super.render(),this.outputText=[td.symbol(this.done,this.aborted),sa.bold(this.msg),td.delimiter(this.done),this.value?this.inactive:sa.cyan().underline(this.inactive),sa.gray("/"),this.value?sa.cyan().underline(this.active):this.active].join(" "),this.out.write(MQ.line+rd.to(0)+this.outputText))}};id.exports=BA});var Cr=ae((OM,sd)=>{"use strict";var EA=class r{constructor({token:e,date:i,parts:a,locales:A}){this.token=e,this.date=i||new Date,this.parts=a||[this],this.locales=A||{}}up(){}down(){}next(){let e=this.parts.indexOf(this);return this.parts.find((i,a)=>a>e&&i instanceof r)}setTo(e){}prev(){let e=[].concat(this.parts).reverse(),i=e.indexOf(this);return e.find((a,A)=>A>i&&a instanceof r)}toString(){return String(this.date)}};sd.exports=EA});var od=ae((NM,ad)=>{"use strict";var UQ=Cr(),wA=class extends UQ{constructor(e={}){super(e)}up(){this.date.setHours((this.date.getHours()+12)%24)}down(){this.up()}toString(){let e=this.date.getHours()>12?"pm":"am";return/\A/.test(this.token)?e.toUpperCase():e}};ad.exports=wA});var ld=ae((RM,Ad)=>{"use strict";var kQ=Cr(),YQ=r=>(r=r%10,r===1?"st":r===2?"nd":r===3?"rd":"th"),yA=class extends kQ{constructor(e={}){super(e)}up(){this.date.setDate(this.date.getDate()+1)}down(){this.date.setDate(this.date.getDate()-1)}setTo(e){this.date.setDate(parseInt(e.substr(-2)))}toString(){let e=this.date.getDate(),i=this.date.getDay();return this.token==="DD"?String(e).padStart(2,"0"):this.token==="Do"?e+YQ(e):this.token==="d"?i+1:this.token==="ddd"?this.locales.weekdaysShort[i]:this.token==="dddd"?this.locales.weekdays[i]:e}};Ad.exports=yA});var ud=ae((GM,cd)=>{"use strict";var OQ=Cr(),CA=class extends OQ{constructor(e={}){super(e)}up(){this.date.setHours(this.date.getHours()+1)}down(){this.date.setHours(this.date.getHours()-1)}setTo(e){this.date.setHours(parseInt(e.substr(-2)))}toString(){let e=this.date.getHours();return/h/.test(this.token)&&(e=e%12||12),this.token.length>1?String(e).padStart(2,"0"):e}};cd.exports=CA});var fd=ae((LM,hd)=>{"use strict";var NQ=Cr(),bA=class extends NQ{constructor(e={}){super(e)}up(){this.date.setMilliseconds(this.date.getMilliseconds()+1)}down(){this.date.setMilliseconds(this.date.getMilliseconds()-1)}setTo(e){this.date.setMilliseconds(parseInt(e.substr(-this.token.length)))}toString(){return String(this.date.getMilliseconds()).padStart(4,"0").substr(0,this.token.length)}};hd.exports=bA});var dd=ae((PM,pd)=>{"use strict";var RQ=Cr(),xA=class extends RQ{constructor(e={}){super(e)}up(){this.date.setMinutes(this.date.getMinutes()+1)}down(){this.date.setMinutes(this.date.getMinutes()-1)}setTo(e){this.date.setMinutes(parseInt(e.substr(-2)))}toString(){let e=this.date.getMinutes();return this.token.length>1?String(e).padStart(2,"0"):e}};pd.exports=xA});var md=ae((HM,gd)=>{"use strict";var GQ=Cr(),QA=class extends GQ{constructor(e={}){super(e)}up(){this.date.setMonth(this.date.getMonth()+1)}down(){this.date.setMonth(this.date.getMonth()-1)}setTo(e){e=parseInt(e.substr(-2))-1,this.date.setMonth(e<0?0:e)}toString(){let e=this.date.getMonth(),i=this.token.length;return i===2?String(e+1).padStart(2,"0"):i===3?this.locales.monthsShort[e]:i===4?this.locales.months[e]:String(e+1)}};gd.exports=QA});var Ed=ae((WM,Bd)=>{"use strict";var LQ=Cr(),vA=class extends LQ{constructor(e={}){super(e)}up(){this.date.setSeconds(this.date.getSeconds()+1)}down(){this.date.setSeconds(this.date.getSeconds()-1)}setTo(e){this.date.setSeconds(parseInt(e.substr(-2)))}toString(){let e=this.date.getSeconds();return this.token.length>1?String(e).padStart(2,"0"):e}};Bd.exports=vA});var yd=ae((JM,wd)=>{"use strict";var PQ=Cr(),IA=class extends PQ{constructor(e={}){super(e)}up(){this.date.setFullYear(this.date.getFullYear()+1)}down(){this.date.setFullYear(this.date.getFullYear()-1)}setTo(e){this.date.setFullYear(e.substr(-4))}toString(){let e=String(this.date.getFullYear()).padStart(4,"0");return this.token.length===2?e.substr(-2):e}};wd.exports=IA});var bd=ae((VM,Cd)=>{"use strict";Cd.exports={DatePart:Cr(),Meridiem:od(),Day:ld(),Hours:ud(),Milliseconds:fd(),Minutes:dd(),Month:md(),Seconds:Ed(),Year:yd()}});var Sd=ae((jM,Td)=>{"use strict";var FA=ft(),HQ=Lr(),{style:xd,clear:Qd,figures:WQ}=lr(),{erase:JQ,cursor:vd}=pt(),{DatePart:Id,Meridiem:VQ,Day:jQ,Hours:_Q,Milliseconds:ZQ,Minutes:XQ,Month:zQ,Seconds:qQ,Year:KQ}=bd(),$Q=/\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g,Fd={1:({token:r})=>r.replace(/\\(.)/g,"$1"),2:r=>new jQ(r),3:r=>new zQ(r),4:r=>new KQ(r),5:r=>new VQ(r),6:r=>new _Q(r),7:r=>new XQ(r),8:r=>new qQ(r),9:r=>new ZQ(r)},ev={months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),monthsShort:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),weekdaysShort:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")},TA=class extends HQ{constructor(e={}){super(e),this.msg=e.message,this.cursor=0,this.typed="",this.locales=Object.assign(ev,e.locales),this._date=e.initial||new Date,this.errorMsg=e.error||"Please Enter A Valid Value",this.validator=e.validate||(()=>!0),this.mask=e.mask||"YYYY-MM-DD HH:mm:ss",this.clear=Qd("",this.out.columns),this.render()}get value(){return this.date}get date(){return this._date}set date(e){e&&this._date.setTime(e.getTime())}set mask(e){let i;for(this.parts=[];i=$Q.exec(e);){let A=i.shift(),c=i.findIndex(u=>u!=null);this.parts.push(c in Fd?Fd[c]({token:i[c]||A,date:this.date,parts:this.parts,locales:this.locales}):i[c]||A)}let a=this.parts.reduce((A,c)=>(typeof c=="string"&&typeof A[A.length-1]=="string"?A[A.length-1]+=c:A.push(c),A),[]);this.parts.splice(0),this.parts.push(...a),this.reset()}moveCursor(e){this.typed="",this.cursor=e,this.fire()}reset(){this.moveCursor(this.parts.findIndex(e=>e instanceof Id)),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
95
+ `),this.close()}deactivate(){if(this.value===!1)return this.bell();this.value=!1,this.render()}activate(){if(this.value===!0)return this.bell();this.value=!0,this.render()}delete(){this.deactivate()}left(){this.deactivate()}right(){this.activate()}down(){this.deactivate()}up(){this.activate()}next(){this.value=!this.value,this.fire(),this.render()}_(e,i){if(e===" ")this.value=!this.value;else if(e==="1")this.value=!0;else if(e==="0")this.value=!1;else return this.bell();this.render()}render(){this.closed||(this.firstRender?this.out.write(rd.hide):this.out.write(DQ(this.outputText,this.out.columns)),super.render(),this.outputText=[td.symbol(this.done,this.aborted),so.bold(this.msg),td.delimiter(this.done),this.value?this.inactive:so.cyan().underline(this.inactive),so.gray("/"),this.value?so.cyan().underline(this.active):this.active].join(" "),this.out.write(MQ.line+rd.to(0)+this.outputText))}};id.exports=BA});var Cr=oe((OM,sd)=>{"use strict";var EA=class r{constructor({token:e,date:i,parts:o,locales:A}){this.token=e,this.date=i||new Date,this.parts=o||[this],this.locales=A||{}}up(){}down(){}next(){let e=this.parts.indexOf(this);return this.parts.find((i,o)=>o>e&&i instanceof r)}setTo(e){}prev(){let e=[].concat(this.parts).reverse(),i=e.indexOf(this);return e.find((o,A)=>A>i&&o instanceof r)}toString(){return String(this.date)}};sd.exports=EA});var ad=oe((NM,od)=>{"use strict";var UQ=Cr(),wA=class extends UQ{constructor(e={}){super(e)}up(){this.date.setHours((this.date.getHours()+12)%24)}down(){this.up()}toString(){let e=this.date.getHours()>12?"pm":"am";return/\A/.test(this.token)?e.toUpperCase():e}};od.exports=wA});var ld=oe((RM,Ad)=>{"use strict";var kQ=Cr(),YQ=r=>(r=r%10,r===1?"st":r===2?"nd":r===3?"rd":"th"),yA=class extends kQ{constructor(e={}){super(e)}up(){this.date.setDate(this.date.getDate()+1)}down(){this.date.setDate(this.date.getDate()-1)}setTo(e){this.date.setDate(parseInt(e.substr(-2)))}toString(){let e=this.date.getDate(),i=this.date.getDay();return this.token==="DD"?String(e).padStart(2,"0"):this.token==="Do"?e+YQ(e):this.token==="d"?i+1:this.token==="ddd"?this.locales.weekdaysShort[i]:this.token==="dddd"?this.locales.weekdays[i]:e}};Ad.exports=yA});var ud=oe((GM,cd)=>{"use strict";var OQ=Cr(),CA=class extends OQ{constructor(e={}){super(e)}up(){this.date.setHours(this.date.getHours()+1)}down(){this.date.setHours(this.date.getHours()-1)}setTo(e){this.date.setHours(parseInt(e.substr(-2)))}toString(){let e=this.date.getHours();return/h/.test(this.token)&&(e=e%12||12),this.token.length>1?String(e).padStart(2,"0"):e}};cd.exports=CA});var fd=oe((LM,hd)=>{"use strict";var NQ=Cr(),bA=class extends NQ{constructor(e={}){super(e)}up(){this.date.setMilliseconds(this.date.getMilliseconds()+1)}down(){this.date.setMilliseconds(this.date.getMilliseconds()-1)}setTo(e){this.date.setMilliseconds(parseInt(e.substr(-this.token.length)))}toString(){return String(this.date.getMilliseconds()).padStart(4,"0").substr(0,this.token.length)}};hd.exports=bA});var dd=oe((PM,pd)=>{"use strict";var RQ=Cr(),xA=class extends RQ{constructor(e={}){super(e)}up(){this.date.setMinutes(this.date.getMinutes()+1)}down(){this.date.setMinutes(this.date.getMinutes()-1)}setTo(e){this.date.setMinutes(parseInt(e.substr(-2)))}toString(){let e=this.date.getMinutes();return this.token.length>1?String(e).padStart(2,"0"):e}};pd.exports=xA});var md=oe((HM,gd)=>{"use strict";var GQ=Cr(),QA=class extends GQ{constructor(e={}){super(e)}up(){this.date.setMonth(this.date.getMonth()+1)}down(){this.date.setMonth(this.date.getMonth()-1)}setTo(e){e=parseInt(e.substr(-2))-1,this.date.setMonth(e<0?0:e)}toString(){let e=this.date.getMonth(),i=this.token.length;return i===2?String(e+1).padStart(2,"0"):i===3?this.locales.monthsShort[e]:i===4?this.locales.months[e]:String(e+1)}};gd.exports=QA});var Ed=oe((WM,Bd)=>{"use strict";var LQ=Cr(),vA=class extends LQ{constructor(e={}){super(e)}up(){this.date.setSeconds(this.date.getSeconds()+1)}down(){this.date.setSeconds(this.date.getSeconds()-1)}setTo(e){this.date.setSeconds(parseInt(e.substr(-2)))}toString(){let e=this.date.getSeconds();return this.token.length>1?String(e).padStart(2,"0"):e}};Bd.exports=vA});var yd=oe((JM,wd)=>{"use strict";var PQ=Cr(),IA=class extends PQ{constructor(e={}){super(e)}up(){this.date.setFullYear(this.date.getFullYear()+1)}down(){this.date.setFullYear(this.date.getFullYear()-1)}setTo(e){this.date.setFullYear(e.substr(-4))}toString(){let e=String(this.date.getFullYear()).padStart(4,"0");return this.token.length===2?e.substr(-2):e}};wd.exports=IA});var bd=oe((VM,Cd)=>{"use strict";Cd.exports={DatePart:Cr(),Meridiem:ad(),Day:ld(),Hours:ud(),Milliseconds:fd(),Minutes:dd(),Month:md(),Seconds:Ed(),Year:yd()}});var Sd=oe((jM,Td)=>{"use strict";var FA=ft(),HQ=Lr(),{style:xd,clear:Qd,figures:WQ}=lr(),{erase:JQ,cursor:vd}=pt(),{DatePart:Id,Meridiem:VQ,Day:jQ,Hours:_Q,Milliseconds:ZQ,Minutes:XQ,Month:zQ,Seconds:qQ,Year:KQ}=bd(),$Q=/\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g,Fd={1:({token:r})=>r.replace(/\\(.)/g,"$1"),2:r=>new jQ(r),3:r=>new zQ(r),4:r=>new KQ(r),5:r=>new VQ(r),6:r=>new _Q(r),7:r=>new XQ(r),8:r=>new qQ(r),9:r=>new ZQ(r)},ev={months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),monthsShort:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),weekdaysShort:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")},TA=class extends HQ{constructor(e={}){super(e),this.msg=e.message,this.cursor=0,this.typed="",this.locales=Object.assign(ev,e.locales),this._date=e.initial||new Date,this.errorMsg=e.error||"Please Enter A Valid Value",this.validator=e.validate||(()=>!0),this.mask=e.mask||"YYYY-MM-DD HH:mm:ss",this.clear=Qd("",this.out.columns),this.render()}get value(){return this.date}get date(){return this._date}set date(e){e&&this._date.setTime(e.getTime())}set mask(e){let i;for(this.parts=[];i=$Q.exec(e);){let A=i.shift(),c=i.findIndex(u=>u!=null);this.parts.push(c in Fd?Fd[c]({token:i[c]||A,date:this.date,parts:this.parts,locales:this.locales}):i[c]||A)}let o=this.parts.reduce((A,c)=>(typeof c=="string"&&typeof A[A.length-1]=="string"?A[A.length-1]+=c:A.push(c),A),[]);this.parts.splice(0),this.parts.push(...o),this.reset()}moveCursor(e){this.typed="",this.cursor=e,this.fire()}reset(){this.moveCursor(this.parts.findIndex(e=>e instanceof Id)),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
96
96
  `),this.close()}async validate(){let e=await this.validator(this.value);typeof e=="string"&&(this.errorMsg=e,e=!1),this.error=!e}async submit(){if(await this.validate(),this.error){this.color="red",this.fire(),this.render();return}this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
97
- `),this.close()}up(){this.typed="",this.parts[this.cursor].up(),this.render()}down(){this.typed="",this.parts[this.cursor].down(),this.render()}left(){let e=this.parts[this.cursor].prev();if(e==null)return this.bell();this.moveCursor(this.parts.indexOf(e)),this.render()}right(){let e=this.parts[this.cursor].next();if(e==null)return this.bell();this.moveCursor(this.parts.indexOf(e)),this.render()}next(){let e=this.parts[this.cursor].next();this.moveCursor(e?this.parts.indexOf(e):this.parts.findIndex(i=>i instanceof Id)),this.render()}_(e){/\d/.test(e)&&(this.typed+=e,this.parts[this.cursor].setTo(this.typed),this.render())}render(){this.closed||(this.firstRender?this.out.write(vd.hide):this.out.write(Qd(this.outputText,this.out.columns)),super.render(),this.outputText=[xd.symbol(this.done,this.aborted),FA.bold(this.msg),xd.delimiter(!1),this.parts.reduce((e,i,a)=>e.concat(a===this.cursor&&!this.done?FA.cyan().underline(i.toString()):i),[]).join("")].join(" "),this.error&&(this.outputText+=this.errorMsg.split(`
98
- `).reduce((e,i,a)=>e+`
99
- ${a?" ":WQ.pointerSmall} ${FA.red().italic(i)}`,"")),this.out.write(JQ.line+vd.to(0)+this.outputText))}};Td.exports=TA});var kd=ae((_M,Ud)=>{var aa=ft(),tv=Lr(),{cursor:oa,erase:rv}=pt(),{style:SA,figures:iv,clear:Dd,lines:nv}=lr(),sv=/[0-9]/,DA=r=>r!==void 0,Md=(r,e)=>{let i=Math.pow(10,e);return Math.round(r*i)/i},MA=class extends tv{constructor(e={}){super(e),this.transform=SA.render(e.style),this.msg=e.message,this.initial=DA(e.initial)?e.initial:"",this.float=!!e.float,this.round=e.round||2,this.inc=e.increment||1,this.min=DA(e.min)?e.min:-1/0,this.max=DA(e.max)?e.max:1/0,this.errorMsg=e.error||"Please Enter A Valid Value",this.validator=e.validate||(()=>!0),this.color="cyan",this.value="",this.typed="",this.lastHit=0,this.render()}set value(e){!e&&e!==0?(this.placeholder=!0,this.rendered=aa.gray(this.transform.render(`${this.initial}`)),this._value=""):(this.placeholder=!1,this.rendered=this.transform.render(`${Md(e,this.round)}`),this._value=Md(e,this.round)),this.fire()}get value(){return this._value}parse(e){return this.float?parseFloat(e):parseInt(e)}valid(e){return e==="-"||e==="."&&this.float||sv.test(e)}reset(){this.typed="",this.value="",this.fire(),this.render()}exit(){this.abort()}abort(){let e=this.value;this.value=e!==""?e:this.initial,this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
97
+ `),this.close()}up(){this.typed="",this.parts[this.cursor].up(),this.render()}down(){this.typed="",this.parts[this.cursor].down(),this.render()}left(){let e=this.parts[this.cursor].prev();if(e==null)return this.bell();this.moveCursor(this.parts.indexOf(e)),this.render()}right(){let e=this.parts[this.cursor].next();if(e==null)return this.bell();this.moveCursor(this.parts.indexOf(e)),this.render()}next(){let e=this.parts[this.cursor].next();this.moveCursor(e?this.parts.indexOf(e):this.parts.findIndex(i=>i instanceof Id)),this.render()}_(e){/\d/.test(e)&&(this.typed+=e,this.parts[this.cursor].setTo(this.typed),this.render())}render(){this.closed||(this.firstRender?this.out.write(vd.hide):this.out.write(Qd(this.outputText,this.out.columns)),super.render(),this.outputText=[xd.symbol(this.done,this.aborted),FA.bold(this.msg),xd.delimiter(!1),this.parts.reduce((e,i,o)=>e.concat(o===this.cursor&&!this.done?FA.cyan().underline(i.toString()):i),[]).join("")].join(" "),this.error&&(this.outputText+=this.errorMsg.split(`
98
+ `).reduce((e,i,o)=>e+`
99
+ ${o?" ":WQ.pointerSmall} ${FA.red().italic(i)}`,"")),this.out.write(JQ.line+vd.to(0)+this.outputText))}};Td.exports=TA});var kd=oe((_M,Ud)=>{var oo=ft(),tv=Lr(),{cursor:ao,erase:rv}=pt(),{style:SA,figures:iv,clear:Dd,lines:nv}=lr(),sv=/[0-9]/,DA=r=>r!==void 0,Md=(r,e)=>{let i=Math.pow(10,e);return Math.round(r*i)/i},MA=class extends tv{constructor(e={}){super(e),this.transform=SA.render(e.style),this.msg=e.message,this.initial=DA(e.initial)?e.initial:"",this.float=!!e.float,this.round=e.round||2,this.inc=e.increment||1,this.min=DA(e.min)?e.min:-1/0,this.max=DA(e.max)?e.max:1/0,this.errorMsg=e.error||"Please Enter A Valid Value",this.validator=e.validate||(()=>!0),this.color="cyan",this.value="",this.typed="",this.lastHit=0,this.render()}set value(e){!e&&e!==0?(this.placeholder=!0,this.rendered=oo.gray(this.transform.render(`${this.initial}`)),this._value=""):(this.placeholder=!1,this.rendered=this.transform.render(`${Md(e,this.round)}`),this._value=Md(e,this.round)),this.fire()}get value(){return this._value}parse(e){return this.float?parseFloat(e):parseInt(e)}valid(e){return e==="-"||e==="."&&this.float||sv.test(e)}reset(){this.typed="",this.value="",this.fire(),this.render()}exit(){this.abort()}abort(){let e=this.value;this.value=e!==""?e:this.initial,this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
100
100
  `),this.close()}async validate(){let e=await this.validator(this.value);typeof e=="string"&&(this.errorMsg=e,e=!1),this.error=!e}async submit(){if(await this.validate(),this.error){this.color="red",this.fire(),this.render();return}let e=this.value;this.value=e!==""?e:this.initial,this.done=!0,this.aborted=!1,this.error=!1,this.fire(),this.render(),this.out.write(`
101
- `),this.close()}up(){if(this.typed="",this.value===""&&(this.value=this.min-this.inc),this.value>=this.max)return this.bell();this.value+=this.inc,this.color="cyan",this.fire(),this.render()}down(){if(this.typed="",this.value===""&&(this.value=this.min+this.inc),this.value<=this.min)return this.bell();this.value-=this.inc,this.color="cyan",this.fire(),this.render()}delete(){let e=this.value.toString();if(e.length===0)return this.bell();this.value=this.parse(e=e.slice(0,-1))||"",this.value!==""&&this.value<this.min&&(this.value=this.min),this.color="cyan",this.fire(),this.render()}next(){this.value=this.initial,this.fire(),this.render()}_(e,i){if(!this.valid(e))return this.bell();let a=Date.now();if(a-this.lastHit>1e3&&(this.typed=""),this.typed+=e,this.lastHit=a,this.color="cyan",e===".")return this.fire();this.value=Math.min(this.parse(this.typed),this.max),this.value>this.max&&(this.value=this.max),this.value<this.min&&(this.value=this.min),this.fire(),this.render()}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(oa.down(nv(this.outputError,this.out.columns)-1)+Dd(this.outputError,this.out.columns)),this.out.write(Dd(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[SA.symbol(this.done,this.aborted),aa.bold(this.msg),SA.delimiter(this.done),!this.done||!this.done&&!this.placeholder?aa[this.color]().underline(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
102
- `).reduce((e,i,a)=>e+`
103
- ${a?" ":iv.pointerSmall} ${aa.red().italic(i)}`,"")),this.out.write(rv.line+oa.to(0)+this.outputText+oa.save+this.outputError+oa.restore))}};Ud.exports=MA});var kA=ae((ZM,Nd)=>{"use strict";var br=ft(),{cursor:av}=pt(),ov=Lr(),{clear:Yd,figures:ii,style:Od,wrap:Av,entriesToDisplay:lv}=lr(),UA=class extends ov{constructor(e={}){super(e),this.msg=e.message,this.cursor=e.cursor||0,this.scrollIndex=e.cursor||0,this.hint=e.hint||"",this.warn=e.warn||"- This option is disabled -",this.minSelected=e.min,this.showMinError=!1,this.maxChoices=e.max,this.instructions=e.instructions,this.optionsPerPage=e.optionsPerPage||10,this.value=e.choices.map((i,a)=>(typeof i=="string"&&(i={title:i,value:a}),{title:i&&(i.title||i.value||i),description:i&&i.description,value:i&&(i.value===void 0?a:i.value),selected:i&&i.selected,disabled:i&&i.disabled})),this.clear=Yd("",this.out.columns),e.overrideRender||this.render()}reset(){this.value.map(e=>!e.selected),this.cursor=0,this.fire(),this.render()}selected(){return this.value.filter(e=>e.selected)}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
101
+ `),this.close()}up(){if(this.typed="",this.value===""&&(this.value=this.min-this.inc),this.value>=this.max)return this.bell();this.value+=this.inc,this.color="cyan",this.fire(),this.render()}down(){if(this.typed="",this.value===""&&(this.value=this.min+this.inc),this.value<=this.min)return this.bell();this.value-=this.inc,this.color="cyan",this.fire(),this.render()}delete(){let e=this.value.toString();if(e.length===0)return this.bell();this.value=this.parse(e=e.slice(0,-1))||"",this.value!==""&&this.value<this.min&&(this.value=this.min),this.color="cyan",this.fire(),this.render()}next(){this.value=this.initial,this.fire(),this.render()}_(e,i){if(!this.valid(e))return this.bell();let o=Date.now();if(o-this.lastHit>1e3&&(this.typed=""),this.typed+=e,this.lastHit=o,this.color="cyan",e===".")return this.fire();this.value=Math.min(this.parse(this.typed),this.max),this.value>this.max&&(this.value=this.max),this.value<this.min&&(this.value=this.min),this.fire(),this.render()}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(ao.down(nv(this.outputError,this.out.columns)-1)+Dd(this.outputError,this.out.columns)),this.out.write(Dd(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[SA.symbol(this.done,this.aborted),oo.bold(this.msg),SA.delimiter(this.done),!this.done||!this.done&&!this.placeholder?oo[this.color]().underline(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
102
+ `).reduce((e,i,o)=>e+`
103
+ ${o?" ":iv.pointerSmall} ${oo.red().italic(i)}`,"")),this.out.write(rv.line+ao.to(0)+this.outputText+ao.save+this.outputError+ao.restore))}};Ud.exports=MA});var kA=oe((ZM,Nd)=>{"use strict";var br=ft(),{cursor:ov}=pt(),av=Lr(),{clear:Yd,figures:ii,style:Od,wrap:Av,entriesToDisplay:lv}=lr(),UA=class extends av{constructor(e={}){super(e),this.msg=e.message,this.cursor=e.cursor||0,this.scrollIndex=e.cursor||0,this.hint=e.hint||"",this.warn=e.warn||"- This option is disabled -",this.minSelected=e.min,this.showMinError=!1,this.maxChoices=e.max,this.instructions=e.instructions,this.optionsPerPage=e.optionsPerPage||10,this.value=e.choices.map((i,o)=>(typeof i=="string"&&(i={title:i,value:o}),{title:i&&(i.title||i.value||i),description:i&&i.description,value:i&&(i.value===void 0?o:i.value),selected:i&&i.selected,disabled:i&&i.disabled})),this.clear=Yd("",this.out.columns),e.overrideRender||this.render()}reset(){this.value.map(e=>!e.selected),this.cursor=0,this.fire(),this.render()}selected(){return this.value.filter(e=>e.selected)}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
104
104
  `),this.close()}submit(){let e=this.value.filter(i=>i.selected);this.minSelected&&e.length<this.minSelected?(this.showMinError=!0,this.render()):(this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
105
105
  `),this.close())}first(){this.cursor=0,this.render()}last(){this.cursor=this.value.length-1,this.render()}next(){this.cursor=(this.cursor+1)%this.value.length,this.render()}up(){this.cursor===0?this.cursor=this.value.length-1:this.cursor--,this.render()}down(){this.cursor===this.value.length-1?this.cursor=0:this.cursor++,this.render()}left(){this.value[this.cursor].selected=!1,this.render()}right(){if(this.value.filter(e=>e.selected).length>=this.maxChoices)return this.bell();this.value[this.cursor].selected=!0,this.render()}handleSpaceToggle(){let e=this.value[this.cursor];if(e.selected)e.selected=!1,this.render();else{if(e.disabled||this.value.filter(i=>i.selected).length>=this.maxChoices)return this.bell();e.selected=!0,this.render()}}toggleAll(){if(this.maxChoices!==void 0||this.value[this.cursor].disabled)return this.bell();let e=!this.value[this.cursor].selected;this.value.filter(i=>!i.disabled).forEach(i=>i.selected=e),this.render()}_(e,i){if(e===" ")this.handleSpaceToggle();else if(e==="a")this.toggleAll();else return this.bell()}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
106
106
  Instructions:
107
107
  ${ii.arrowUp}/${ii.arrowDown}: Highlight option
108
108
  ${ii.arrowLeft}/${ii.arrowRight}/[space]: Toggle selection
109
109
  `+(this.maxChoices===void 0?` a: Toggle all
110
- `:"")+" enter/return: Complete answer":""}renderOption(e,i,a,A){let c=(i.selected?br.green(ii.radioOn):ii.radioOff)+" "+A+" ",u,f;return i.disabled?u=e===a?br.gray().underline(i.title):br.strikethrough().gray(i.title):(u=e===a?br.cyan().underline(i.title):i.title,e===a&&i.description&&(f=` - ${i.description}`,(c.length+u.length+f.length>=this.out.columns||i.description.split(/\r?\n/).length>1)&&(f=`
111
- `+Av(i.description,{margin:c.length,width:this.out.columns})))),c+u+br.gray(f||"")}paginateOptions(e){if(e.length===0)return br.red("No matches for this query.");let{startIndex:i,endIndex:a}=lv(this.cursor,e.length,this.optionsPerPage),A,c=[];for(let u=i;u<a;u++)u===i&&i>0?A=ii.arrowUp:u===a-1&&a<e.length?A=ii.arrowDown:A=" ",c.push(this.renderOption(this.cursor,e[u],u,A));return`
110
+ `:"")+" enter/return: Complete answer":""}renderOption(e,i,o,A){let c=(i.selected?br.green(ii.radioOn):ii.radioOff)+" "+A+" ",u,f;return i.disabled?u=e===o?br.gray().underline(i.title):br.strikethrough().gray(i.title):(u=e===o?br.cyan().underline(i.title):i.title,e===o&&i.description&&(f=` - ${i.description}`,(c.length+u.length+f.length>=this.out.columns||i.description.split(/\r?\n/).length>1)&&(f=`
111
+ `+Av(i.description,{margin:c.length,width:this.out.columns})))),c+u+br.gray(f||"")}paginateOptions(e){if(e.length===0)return br.red("No matches for this query.");let{startIndex:i,endIndex:o}=lv(this.cursor,e.length,this.optionsPerPage),A,c=[];for(let u=i;u<o;u++)u===i&&i>0?A=ii.arrowUp:u===o-1&&o<e.length?A=ii.arrowDown:A=" ",c.push(this.renderOption(this.cursor,e[u],u,A));return`
112
112
  `+c.join(`
113
- `)}renderOptions(e){return this.done?"":this.paginateOptions(e)}renderDoneOrInstructions(){if(this.done)return this.value.filter(i=>i.selected).map(i=>i.title).join(", ");let e=[br.gray(this.hint),this.renderInstructions()];return this.value[this.cursor].disabled&&e.push(br.yellow(this.warn)),e.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(av.hide),super.render();let e=[Od.symbol(this.done,this.aborted),br.bold(this.msg),Od.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(e+=br.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),e+=this.renderOptions(this.value),this.out.write(this.clear+e),this.clear=Yd(e,this.out.columns)}};Nd.exports=UA});var Hd=ae((XM,Pd)=>{"use strict";var Rn=ft(),cv=Lr(),{erase:uv,cursor:Rd}=pt(),{style:YA,clear:Gd,figures:OA,wrap:hv,entriesToDisplay:fv}=lr(),Ld=(r,e)=>r[e]&&(r[e].value||r[e].title||r[e]),pv=(r,e)=>r[e]&&(r[e].title||r[e].value||r[e]),dv=(r,e)=>{let i=r.findIndex(a=>a.value===e||a.title===e);return i>-1?i:void 0},NA=class extends cv{constructor(e={}){super(e),this.msg=e.message,this.suggest=e.suggest,this.choices=e.choices,this.initial=typeof e.initial=="number"?e.initial:dv(e.choices,e.initial),this.select=this.initial||e.cursor||0,this.i18n={noMatches:e.noMatches||"no matches found"},this.fallback=e.fallback||this.initial,this.clearFirst=e.clearFirst||!1,this.suggestions=[],this.input="",this.limit=e.limit||10,this.cursor=0,this.transform=YA.render(e.style),this.scale=this.transform.scale,this.render=this.render.bind(this),this.complete=this.complete.bind(this),this.clear=Gd("",this.out.columns),this.complete(this.render),this.render()}set fallback(e){this._fb=Number.isSafeInteger(parseInt(e))?parseInt(e):e}get fallback(){let e;return typeof this._fb=="number"?e=this.choices[this._fb]:typeof this._fb=="string"&&(e={title:this._fb}),e||this._fb||{title:this.i18n.noMatches}}moveSelect(e){this.select=e,this.suggestions.length>0?this.value=Ld(this.suggestions,e):this.value=this.fallback.value,this.fire()}async complete(e){let i=this.completing=this.suggest(this.input,this.choices),a=await i;if(this.completing!==i)return;this.suggestions=a.map((c,u,f)=>({title:pv(f,u),value:Ld(f,u),description:c.description})),this.completing=!1;let A=Math.max(a.length-1,0);this.moveSelect(Math.min(A,this.select)),e&&e()}reset(){this.input="",this.complete(()=>{this.moveSelect(this.initial!==void 0?this.initial:0),this.render()}),this.render()}exit(){this.clearFirst&&this.input.length>0?this.reset():(this.done=this.exited=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
113
+ `)}renderOptions(e){return this.done?"":this.paginateOptions(e)}renderDoneOrInstructions(){if(this.done)return this.value.filter(i=>i.selected).map(i=>i.title).join(", ");let e=[br.gray(this.hint),this.renderInstructions()];return this.value[this.cursor].disabled&&e.push(br.yellow(this.warn)),e.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(ov.hide),super.render();let e=[Od.symbol(this.done,this.aborted),br.bold(this.msg),Od.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(e+=br.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),e+=this.renderOptions(this.value),this.out.write(this.clear+e),this.clear=Yd(e,this.out.columns)}};Nd.exports=UA});var Hd=oe((XM,Pd)=>{"use strict";var Rn=ft(),cv=Lr(),{erase:uv,cursor:Rd}=pt(),{style:YA,clear:Gd,figures:OA,wrap:hv,entriesToDisplay:fv}=lr(),Ld=(r,e)=>r[e]&&(r[e].value||r[e].title||r[e]),pv=(r,e)=>r[e]&&(r[e].title||r[e].value||r[e]),dv=(r,e)=>{let i=r.findIndex(o=>o.value===e||o.title===e);return i>-1?i:void 0},NA=class extends cv{constructor(e={}){super(e),this.msg=e.message,this.suggest=e.suggest,this.choices=e.choices,this.initial=typeof e.initial=="number"?e.initial:dv(e.choices,e.initial),this.select=this.initial||e.cursor||0,this.i18n={noMatches:e.noMatches||"no matches found"},this.fallback=e.fallback||this.initial,this.clearFirst=e.clearFirst||!1,this.suggestions=[],this.input="",this.limit=e.limit||10,this.cursor=0,this.transform=YA.render(e.style),this.scale=this.transform.scale,this.render=this.render.bind(this),this.complete=this.complete.bind(this),this.clear=Gd("",this.out.columns),this.complete(this.render),this.render()}set fallback(e){this._fb=Number.isSafeInteger(parseInt(e))?parseInt(e):e}get fallback(){let e;return typeof this._fb=="number"?e=this.choices[this._fb]:typeof this._fb=="string"&&(e={title:this._fb}),e||this._fb||{title:this.i18n.noMatches}}moveSelect(e){this.select=e,this.suggestions.length>0?this.value=Ld(this.suggestions,e):this.value=this.fallback.value,this.fire()}async complete(e){let i=this.completing=this.suggest(this.input,this.choices),o=await i;if(this.completing!==i)return;this.suggestions=o.map((c,u,f)=>({title:pv(f,u),value:Ld(f,u),description:c.description})),this.completing=!1;let A=Math.max(o.length-1,0);this.moveSelect(Math.min(A,this.select)),e&&e()}reset(){this.input="",this.complete(()=>{this.moveSelect(this.initial!==void 0?this.initial:0),this.render()}),this.render()}exit(){this.clearFirst&&this.input.length>0?this.reset():(this.done=this.exited=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
114
114
  `),this.close())}abort(){this.done=this.aborted=!0,this.exited=!1,this.fire(),this.render(),this.out.write(`
115
115
  `),this.close()}submit(){this.done=!0,this.aborted=this.exited=!1,this.fire(),this.render(),this.out.write(`
116
- `),this.close()}_(e,i){let a=this.input.slice(0,this.cursor),A=this.input.slice(this.cursor);this.input=`${a}${e}${A}`,this.cursor=a.length+1,this.complete(this.render),this.render()}delete(){if(this.cursor===0)return this.bell();let e=this.input.slice(0,this.cursor-1),i=this.input.slice(this.cursor);this.input=`${e}${i}`,this.complete(this.render),this.cursor=this.cursor-1,this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();let e=this.input.slice(0,this.cursor),i=this.input.slice(this.cursor+1);this.input=`${e}${i}`,this.complete(this.render),this.render()}first(){this.moveSelect(0),this.render()}last(){this.moveSelect(this.suggestions.length-1),this.render()}up(){this.select===0?this.moveSelect(this.suggestions.length-1):this.moveSelect(this.select-1),this.render()}down(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}next(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}nextPage(){this.moveSelect(Math.min(this.select+this.limit,this.suggestions.length-1)),this.render()}prevPage(){this.moveSelect(Math.max(this.select-this.limit,0)),this.render()}left(){if(this.cursor<=0)return this.bell();this.cursor=this.cursor-1,this.render()}right(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();this.cursor=this.cursor+1,this.render()}renderOption(e,i,a,A){let c,u=a?OA.arrowUp:A?OA.arrowDown:" ",f=i?Rn.cyan().underline(e.title):e.title;return u=(i?Rn.cyan(OA.pointer)+" ":" ")+u,e.description&&(c=` - ${e.description}`,(u.length+f.length+c.length>=this.out.columns||e.description.split(/\r?\n/).length>1)&&(c=`
117
- `+hv(e.description,{margin:3,width:this.out.columns}))),u+" "+f+Rn.gray(c||"")}render(){if(this.closed)return;this.firstRender?this.out.write(Rd.hide):this.out.write(Gd(this.outputText,this.out.columns)),super.render();let{startIndex:e,endIndex:i}=fv(this.select,this.choices.length,this.limit);if(this.outputText=[YA.symbol(this.done,this.aborted,this.exited),Rn.bold(this.msg),YA.delimiter(this.completing),this.done&&this.suggestions[this.select]?this.suggestions[this.select].title:this.rendered=this.transform.render(this.input)].join(" "),!this.done){let a=this.suggestions.slice(e,i).map((A,c)=>this.renderOption(A,this.select===c+e,c===0&&e>0,c+e===i-1&&i<this.choices.length)).join(`
116
+ `),this.close()}_(e,i){let o=this.input.slice(0,this.cursor),A=this.input.slice(this.cursor);this.input=`${o}${e}${A}`,this.cursor=o.length+1,this.complete(this.render),this.render()}delete(){if(this.cursor===0)return this.bell();let e=this.input.slice(0,this.cursor-1),i=this.input.slice(this.cursor);this.input=`${e}${i}`,this.complete(this.render),this.cursor=this.cursor-1,this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();let e=this.input.slice(0,this.cursor),i=this.input.slice(this.cursor+1);this.input=`${e}${i}`,this.complete(this.render),this.render()}first(){this.moveSelect(0),this.render()}last(){this.moveSelect(this.suggestions.length-1),this.render()}up(){this.select===0?this.moveSelect(this.suggestions.length-1):this.moveSelect(this.select-1),this.render()}down(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}next(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}nextPage(){this.moveSelect(Math.min(this.select+this.limit,this.suggestions.length-1)),this.render()}prevPage(){this.moveSelect(Math.max(this.select-this.limit,0)),this.render()}left(){if(this.cursor<=0)return this.bell();this.cursor=this.cursor-1,this.render()}right(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();this.cursor=this.cursor+1,this.render()}renderOption(e,i,o,A){let c,u=o?OA.arrowUp:A?OA.arrowDown:" ",f=i?Rn.cyan().underline(e.title):e.title;return u=(i?Rn.cyan(OA.pointer)+" ":" ")+u,e.description&&(c=` - ${e.description}`,(u.length+f.length+c.length>=this.out.columns||e.description.split(/\r?\n/).length>1)&&(c=`
117
+ `+hv(e.description,{margin:3,width:this.out.columns}))),u+" "+f+Rn.gray(c||"")}render(){if(this.closed)return;this.firstRender?this.out.write(Rd.hide):this.out.write(Gd(this.outputText,this.out.columns)),super.render();let{startIndex:e,endIndex:i}=fv(this.select,this.choices.length,this.limit);if(this.outputText=[YA.symbol(this.done,this.aborted,this.exited),Rn.bold(this.msg),YA.delimiter(this.completing),this.done&&this.suggestions[this.select]?this.suggestions[this.select].title:this.rendered=this.transform.render(this.input)].join(" "),!this.done){let o=this.suggestions.slice(e,i).map((A,c)=>this.renderOption(A,this.select===c+e,c===0&&e>0,c+e===i-1&&i<this.choices.length)).join(`
118
118
  `);this.outputText+=`
119
- `+(a||Rn.gray(this.fallback.title))}this.out.write(uv.line+Rd.to(0)+this.outputText)}};Pd.exports=NA});var jd=ae((zM,Vd)=>{"use strict";var Hr=ft(),{cursor:gv}=pt(),mv=kA(),{clear:Wd,style:Jd,figures:Vi}=lr(),RA=class extends mv{constructor(e={}){e.overrideRender=!0,super(e),this.inputValue="",this.clear=Wd("",this.out.columns),this.filteredOptions=this.value,this.render()}last(){this.cursor=this.filteredOptions.length-1,this.render()}next(){this.cursor=(this.cursor+1)%this.filteredOptions.length,this.render()}up(){this.cursor===0?this.cursor=this.filteredOptions.length-1:this.cursor--,this.render()}down(){this.cursor===this.filteredOptions.length-1?this.cursor=0:this.cursor++,this.render()}left(){this.filteredOptions[this.cursor].selected=!1,this.render()}right(){if(this.value.filter(e=>e.selected).length>=this.maxChoices)return this.bell();this.filteredOptions[this.cursor].selected=!0,this.render()}delete(){this.inputValue.length&&(this.inputValue=this.inputValue.substr(0,this.inputValue.length-1),this.updateFilteredOptions())}updateFilteredOptions(){let e=this.filteredOptions[this.cursor];this.filteredOptions=this.value.filter(a=>this.inputValue?!!(typeof a.title=="string"&&a.title.toLowerCase().includes(this.inputValue.toLowerCase())||typeof a.value=="string"&&a.value.toLowerCase().includes(this.inputValue.toLowerCase())):!0);let i=this.filteredOptions.findIndex(a=>a===e);this.cursor=i<0?0:i,this.render()}handleSpaceToggle(){let e=this.filteredOptions[this.cursor];if(e.selected)e.selected=!1,this.render();else{if(e.disabled||this.value.filter(i=>i.selected).length>=this.maxChoices)return this.bell();e.selected=!0,this.render()}}handleInputChange(e){this.inputValue=this.inputValue+e,this.updateFilteredOptions()}_(e,i){e===" "?this.handleSpaceToggle():this.handleInputChange(e)}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
119
+ `+(o||Rn.gray(this.fallback.title))}this.out.write(uv.line+Rd.to(0)+this.outputText)}};Pd.exports=NA});var jd=oe((zM,Vd)=>{"use strict";var Hr=ft(),{cursor:gv}=pt(),mv=kA(),{clear:Wd,style:Jd,figures:Vi}=lr(),RA=class extends mv{constructor(e={}){e.overrideRender=!0,super(e),this.inputValue="",this.clear=Wd("",this.out.columns),this.filteredOptions=this.value,this.render()}last(){this.cursor=this.filteredOptions.length-1,this.render()}next(){this.cursor=(this.cursor+1)%this.filteredOptions.length,this.render()}up(){this.cursor===0?this.cursor=this.filteredOptions.length-1:this.cursor--,this.render()}down(){this.cursor===this.filteredOptions.length-1?this.cursor=0:this.cursor++,this.render()}left(){this.filteredOptions[this.cursor].selected=!1,this.render()}right(){if(this.value.filter(e=>e.selected).length>=this.maxChoices)return this.bell();this.filteredOptions[this.cursor].selected=!0,this.render()}delete(){this.inputValue.length&&(this.inputValue=this.inputValue.substr(0,this.inputValue.length-1),this.updateFilteredOptions())}updateFilteredOptions(){let e=this.filteredOptions[this.cursor];this.filteredOptions=this.value.filter(o=>this.inputValue?!!(typeof o.title=="string"&&o.title.toLowerCase().includes(this.inputValue.toLowerCase())||typeof o.value=="string"&&o.value.toLowerCase().includes(this.inputValue.toLowerCase())):!0);let i=this.filteredOptions.findIndex(o=>o===e);this.cursor=i<0?0:i,this.render()}handleSpaceToggle(){let e=this.filteredOptions[this.cursor];if(e.selected)e.selected=!1,this.render();else{if(e.disabled||this.value.filter(i=>i.selected).length>=this.maxChoices)return this.bell();e.selected=!0,this.render()}}handleInputChange(e){this.inputValue=this.inputValue+e,this.updateFilteredOptions()}_(e,i){e===" "?this.handleSpaceToggle():this.handleInputChange(e)}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
120
120
  Instructions:
121
121
  ${Vi.arrowUp}/${Vi.arrowDown}: Highlight option
122
122
  ${Vi.arrowLeft}/${Vi.arrowRight}/[space]: Toggle selection
@@ -124,24 +124,24 @@ Instructions:
124
124
  enter/return: Complete answer
125
125
  `:""}renderCurrentInput(){return`
126
126
  Filtered results for: ${this.inputValue?this.inputValue:Hr.gray("Enter something to filter")}
127
- `}renderOption(e,i,a){let A;return i.disabled?A=e===a?Hr.gray().underline(i.title):Hr.strikethrough().gray(i.title):A=e===a?Hr.cyan().underline(i.title):i.title,(i.selected?Hr.green(Vi.radioOn):Vi.radioOff)+" "+A}renderDoneOrInstructions(){if(this.done)return this.value.filter(i=>i.selected).map(i=>i.title).join(", ");let e=[Hr.gray(this.hint),this.renderInstructions(),this.renderCurrentInput()];return this.filteredOptions.length&&this.filteredOptions[this.cursor].disabled&&e.push(Hr.yellow(this.warn)),e.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(gv.hide),super.render();let e=[Jd.symbol(this.done,this.aborted),Hr.bold(this.msg),Jd.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(e+=Hr.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),e+=this.renderOptions(this.filteredOptions),this.out.write(this.clear+e),this.clear=Wd(e,this.out.columns)}};Vd.exports=RA});var qd=ae((qM,zd)=>{var _d=ft(),Bv=Lr(),{style:Zd,clear:Ev}=lr(),{erase:wv,cursor:Xd}=pt(),GA=class extends Bv{constructor(e={}){super(e),this.msg=e.message,this.value=e.initial,this.initialValue=!!e.initial,this.yesMsg=e.yes||"yes",this.yesOption=e.yesOption||"(Y/n)",this.noMsg=e.no||"no",this.noOption=e.noOption||"(y/N)",this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
127
+ `}renderOption(e,i,o){let A;return i.disabled?A=e===o?Hr.gray().underline(i.title):Hr.strikethrough().gray(i.title):A=e===o?Hr.cyan().underline(i.title):i.title,(i.selected?Hr.green(Vi.radioOn):Vi.radioOff)+" "+A}renderDoneOrInstructions(){if(this.done)return this.value.filter(i=>i.selected).map(i=>i.title).join(", ");let e=[Hr.gray(this.hint),this.renderInstructions(),this.renderCurrentInput()];return this.filteredOptions.length&&this.filteredOptions[this.cursor].disabled&&e.push(Hr.yellow(this.warn)),e.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(gv.hide),super.render();let e=[Jd.symbol(this.done,this.aborted),Hr.bold(this.msg),Jd.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(e+=Hr.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),e+=this.renderOptions(this.filteredOptions),this.out.write(this.clear+e),this.clear=Wd(e,this.out.columns)}};Vd.exports=RA});var qd=oe((qM,zd)=>{var _d=ft(),Bv=Lr(),{style:Zd,clear:Ev}=lr(),{erase:wv,cursor:Xd}=pt(),GA=class extends Bv{constructor(e={}){super(e),this.msg=e.message,this.value=e.initial,this.initialValue=!!e.initial,this.yesMsg=e.yes||"yes",this.yesOption=e.yesOption||"(Y/n)",this.noMsg=e.no||"no",this.noOption=e.noOption||"(y/N)",this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
128
128
  `),this.close()}submit(){this.value=this.value||!1,this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
129
- `),this.close()}_(e,i){return e.toLowerCase()==="y"?(this.value=!0,this.submit()):e.toLowerCase()==="n"?(this.value=!1,this.submit()):this.bell()}render(){this.closed||(this.firstRender?this.out.write(Xd.hide):this.out.write(Ev(this.outputText,this.out.columns)),super.render(),this.outputText=[Zd.symbol(this.done,this.aborted),_d.bold(this.msg),Zd.delimiter(this.done),this.done?this.value?this.yesMsg:this.noMsg:_d.gray(this.initialValue?this.yesOption:this.noOption)].join(" "),this.out.write(wv.line+Xd.to(0)+this.outputText))}};zd.exports=GA});var $d=ae((KM,Kd)=>{"use strict";Kd.exports={TextPrompt:zp(),SelectPrompt:ed(),TogglePrompt:nd(),DatePrompt:Sd(),NumberPrompt:kd(),MultiselectPrompt:kA(),AutocompletePrompt:Hd(),AutocompleteMultiselectPrompt:jd(),ConfirmPrompt:qd()}});var tg=ae(eg=>{"use strict";var Gt=eg,yv=$d(),Aa=r=>r;function xr(r,e,i={}){return new Promise((a,A)=>{let c=new yv[r](e),u=i.onAbort||Aa,f=i.onSubmit||Aa,p=i.onExit||Aa;c.on("state",e.onState||Aa),c.on("submit",g=>a(f(g))),c.on("exit",g=>a(p(g))),c.on("abort",g=>A(u(g)))})}Gt.text=r=>xr("TextPrompt",r);Gt.password=r=>(r.style="password",Gt.text(r));Gt.invisible=r=>(r.style="invisible",Gt.text(r));Gt.number=r=>xr("NumberPrompt",r);Gt.date=r=>xr("DatePrompt",r);Gt.confirm=r=>xr("ConfirmPrompt",r);Gt.list=r=>{let e=r.separator||",";return xr("TextPrompt",r,{onSubmit:i=>i.split(e).map(a=>a.trim())})};Gt.toggle=r=>xr("TogglePrompt",r);Gt.select=r=>xr("SelectPrompt",r);Gt.multiselect=r=>{r.choices=[].concat(r.choices||[]);let e=i=>i.filter(a=>a.selected).map(a=>a.value);return xr("MultiselectPrompt",r,{onAbort:e,onSubmit:e})};Gt.autocompleteMultiselect=r=>{r.choices=[].concat(r.choices||[]);let e=i=>i.filter(a=>a.selected).map(a=>a.value);return xr("AutocompleteMultiselectPrompt",r,{onAbort:e,onSubmit:e})};var Cv=(r,e)=>Promise.resolve(e.filter(i=>i.title.slice(0,r.length).toLowerCase()===r.toLowerCase()));Gt.autocomplete=r=>(r.suggest=r.suggest||Cv,r.choices=[].concat(r.choices||[]),xr("AutocompletePrompt",r))});var ng=ae((eU,ig)=>{"use strict";var LA=tg(),bv=["suggest","format","onState","validate","onRender","type"],rg=()=>{};async function ni(r=[],{onSubmit:e=rg,onCancel:i=rg}={}){let a={},A=ni._override||{};r=[].concat(r);let c,u,f,p,g,m,E=async(b,y,Q=!1)=>{if(!(!Q&&b.validate&&b.validate(y)!==!0))return b.format?await b.format(y,a):y};for(u of r)if({name:p,type:g}=u,typeof g=="function"&&(g=await g(c,{...a},u),u.type=g),!!g){for(let b in u){if(bv.includes(b))continue;let y=u[b];u[b]=typeof y=="function"?await y(c,{...a},m):y}if(m=u,typeof u.message!="string")throw new Error("prompt message is required");if({name:p,type:g}=u,LA[g]===void 0)throw new Error(`prompt type (${g}) is not defined`);if(A[u.name]!==void 0&&(c=await E(u,A[u.name]),c!==void 0)){a[p]=c;continue}try{c=ni._injected?xv(ni._injected,u.initial):await LA[g](u),a[p]=c=await E(u,c,!0),f=await e(u,c,a)}catch{f=!await i(u,a)}if(f)return a}return a}function xv(r,e){let i=r.shift();if(i instanceof Error)throw i;return i===void 0?e:i}function Qv(r){ni._injected=(ni._injected||[]).concat(r)}function vv(r){ni._override=Object.assign({},r)}ig.exports=Object.assign(ni,{prompt:ni,prompts:LA,inject:Qv,override:vv})});var ag=ae((tU,sg)=>{function Iv(r){r=(Array.isArray(r)?r:r.split(".")).map(Number);let e=0,i=process.versions.node.split(".").map(Number);for(;e<r.length;e++){if(i[e]>r[e])return!1;if(r[e]>i[e])return!0}return!1}sg.exports=Iv("8.6.0")?Sp():ng()});var fl=ae((Zk,Jg)=>{"use strict";var AI=We("util"),Wg=We("stream"),cr=Jg.exports=function(){Wg.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};AI.inherits(cr,Wg);cr.prototype.read=function(r,e){this._reads.push({length:Math.abs(r),allowLess:r<0,func:e}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};cr.prototype.write=function(r,e){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let i;return Buffer.isBuffer(r)?i=r:i=Buffer.from(r,e||this._encoding),this._buffers.push(i),this._buffered+=i.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused};cr.prototype.end=function(r,e){r&&this.write(r,e),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};cr.prototype.destroySoon=cr.prototype.end;cr.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};cr.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};cr.prototype._processReadAllowingLess=function(r){this._reads.shift();let e=this._buffers[0];e.length>r.length?(this._buffered-=r.length,this._buffers[0]=e.slice(r.length),r.func.call(this,e.slice(0,r.length))):(this._buffered-=e.length,this._buffers.shift(),r.func.call(this,e))};cr.prototype._processRead=function(r){this._reads.shift();let e=0,i=0,a=Buffer.alloc(r.length);for(;e<r.length;){let A=this._buffers[i++],c=Math.min(A.length,r.length-e);A.copy(a,e,0,c),e+=c,c!==A.length&&(this._buffers[--i]=A.slice(c))}i>0&&this._buffers.splice(0,i),this._buffered-=r.length,r.func.call(this,a)};cr.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let r=this._reads[0];if(r.allowLess)this._processReadAllowingLess(r);else if(this._buffered>=r.length)this._processRead(r);else break}this._buffers&&!this.writable&&this._end()}catch(r){this.emit("error",r)}}});var dl=ae(pl=>{"use strict";var si=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];pl.getImagePasses=function(r,e){let i=[],a=r%8,A=e%8,c=(r-a)/8,u=(e-A)/8;for(let f=0;f<si.length;f++){let p=si[f],g=c*p.x.length,m=u*p.y.length;for(let E=0;E<p.x.length&&p.x[E]<a;E++)g++;for(let E=0;E<p.y.length&&p.y[E]<A;E++)m++;g>0&&m>0&&i.push({width:g,height:m,index:f})}return i};pl.getInterlaceIterator=function(r){return function(e,i,a){let A=e%si[a].x.length,c=(e-A)/si[a].x.length*8+si[a].x[A],u=i%si[a].y.length,f=(i-u)/si[a].y.length*8+si[a].y[u];return c*4+f*r*4}}});var gl=ae((zk,Vg)=>{"use strict";Vg.exports=function(e,i,a){let A=e+i-a,c=Math.abs(A-e),u=Math.abs(A-i),f=Math.abs(A-a);return c<=u&&c<=f?e:u<=f?i:a}});var ml=ae((qk,_g)=>{"use strict";var lI=dl(),cI=gl();function jg(r,e,i){let a=r*e;return i!==8&&(a=Math.ceil(a/(8/i))),a}var rn=_g.exports=function(r,e){let i=r.width,a=r.height,A=r.interlace,c=r.bpp,u=r.depth;if(this.read=e.read,this.write=e.write,this.complete=e.complete,this._imageIndex=0,this._images=[],A){let f=lI.getImagePasses(i,a);for(let p=0;p<f.length;p++)this._images.push({byteWidth:jg(f[p].width,c,u),height:f[p].height,lineIndex:0})}else this._images.push({byteWidth:jg(i,c,u),height:a,lineIndex:0});u===8?this._xComparison=c:u===16?this._xComparison=c*2:this._xComparison=1};rn.prototype.start=function(){this.read(this._images[this._imageIndex].byteWidth+1,this._reverseFilterLine.bind(this))};rn.prototype._unFilterType1=function(r,e,i){let a=this._xComparison,A=a-1;for(let c=0;c<i;c++){let u=r[1+c],f=c>A?e[c-a]:0;e[c]=u+f}};rn.prototype._unFilterType2=function(r,e,i){let a=this._lastLine;for(let A=0;A<i;A++){let c=r[1+A],u=a?a[A]:0;e[A]=c+u}};rn.prototype._unFilterType3=function(r,e,i){let a=this._xComparison,A=a-1,c=this._lastLine;for(let u=0;u<i;u++){let f=r[1+u],p=c?c[u]:0,g=u>A?e[u-a]:0,m=Math.floor((g+p)/2);e[u]=f+m}};rn.prototype._unFilterType4=function(r,e,i){let a=this._xComparison,A=a-1,c=this._lastLine;for(let u=0;u<i;u++){let f=r[1+u],p=c?c[u]:0,g=u>A?e[u-a]:0,m=u>A&&c?c[u-a]:0,E=cI(g,p,m);e[u]=f+E}};rn.prototype._reverseFilterLine=function(r){let e=r[0],i,a=this._images[this._imageIndex],A=a.byteWidth;if(e===0)i=r.slice(1,A+1);else switch(i=Buffer.alloc(A),e){case 1:this._unFilterType1(r,i,A);break;case 2:this._unFilterType2(r,i,A);break;case 3:this._unFilterType3(r,i,A);break;case 4:this._unFilterType4(r,i,A);break;default:throw new Error("Unrecognised filter type - "+e)}this.write(i),a.lineIndex++,a.lineIndex>=a.height?(this._lastLine=null,this._imageIndex++,a=this._images[this._imageIndex]):this._lastLine=i,a?this.read(a.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}});var zg=ae((Kk,Xg)=>{"use strict";var uI=We("util"),Zg=fl(),hI=ml(),fI=Xg.exports=function(r){Zg.call(this);let e=[],i=this;this._filter=new hI(r,{read:this.read.bind(this),write:function(a){e.push(a)},complete:function(){i.emit("complete",Buffer.concat(e))}}),this._filter.start()};uI.inherits(fI,Zg)});var nn=ae(($k,qg)=>{"use strict";qg.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var wl=ae((eY,Kg)=>{"use strict";var Bl=[];(function(){for(let r=0;r<256;r++){let e=r;for(let i=0;i<8;i++)e&1?e=3988292384^e>>>1:e=e>>>1;Bl[r]=e}})();var El=Kg.exports=function(){this._crc=-1};El.prototype.write=function(r){for(let e=0;e<r.length;e++)this._crc=Bl[(this._crc^r[e])&255]^this._crc>>>8;return!0};El.prototype.crc32=function(){return this._crc^-1};El.crc32=function(r){let e=-1;for(let i=0;i<r.length;i++)e=Bl[(e^r[i])&255]^e>>>8;return e^-1}});var yl=ae((tY,$g)=>{"use strict";var yt=nn(),pI=wl(),Ct=$g.exports=function(r,e){this._options=r,r.checkCRC=r.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[yt.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[yt.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[yt.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[yt.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[yt.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[yt.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.finished=e.finished,this.simpleTransparency=e.simpleTransparency,this.headersFinished=e.headersFinished||function(){}};Ct.prototype.start=function(){this.read(yt.PNG_SIGNATURE.length,this._parseSignature.bind(this))};Ct.prototype._parseSignature=function(r){let e=yt.PNG_SIGNATURE;for(let i=0;i<e.length;i++)if(r[i]!==e[i]){this.error(new Error("Invalid file signature"));return}this.read(8,this._parseChunkBegin.bind(this))};Ct.prototype._parseChunkBegin=function(r){let e=r.readUInt32BE(0),i=r.readUInt32BE(4),a="";for(let c=4;c<8;c++)a+=String.fromCharCode(r[c]);let A=!!(r[4]&32);if(!this._hasIHDR&&i!==yt.TYPE_IHDR){this.error(new Error("Expected IHDR on beggining"));return}if(this._crc=new pI,this._crc.write(Buffer.from(a)),this._chunks[i])return this._chunks[i](e);if(!A){this.error(new Error("Unsupported critical chunk type "+a));return}this.read(e+4,this._skipChunk.bind(this))};Ct.prototype._skipChunk=function(){this.read(8,this._parseChunkBegin.bind(this))};Ct.prototype._handleChunkEnd=function(){this.read(4,this._parseChunkEnd.bind(this))};Ct.prototype._parseChunkEnd=function(r){let e=r.readInt32BE(0),i=this._crc.crc32();if(this._options.checkCRC&&i!==e){this.error(new Error("Crc error - "+e+" - "+i));return}this._hasIEND||this.read(8,this._parseChunkBegin.bind(this))};Ct.prototype._handleIHDR=function(r){this.read(r,this._parseIHDR.bind(this))};Ct.prototype._parseIHDR=function(r){this._crc.write(r);let e=r.readUInt32BE(0),i=r.readUInt32BE(4),a=r[8],A=r[9],c=r[10],u=r[11],f=r[12];if(a!==8&&a!==4&&a!==2&&a!==1&&a!==16){this.error(new Error("Unsupported bit depth "+a));return}if(!(A in yt.COLORTYPE_TO_BPP_MAP)){this.error(new Error("Unsupported color type"));return}if(c!==0){this.error(new Error("Unsupported compression method"));return}if(u!==0){this.error(new Error("Unsupported filter method"));return}if(f!==0&&f!==1){this.error(new Error("Unsupported interlace method"));return}this._colorType=A;let p=yt.COLORTYPE_TO_BPP_MAP[this._colorType];this._hasIHDR=!0,this.metadata({width:e,height:i,depth:a,interlace:!!f,palette:!!(A&yt.COLORTYPE_PALETTE),color:!!(A&yt.COLORTYPE_COLOR),alpha:!!(A&yt.COLORTYPE_ALPHA),bpp:p,colorType:A}),this._handleChunkEnd()};Ct.prototype._handlePLTE=function(r){this.read(r,this._parsePLTE.bind(this))};Ct.prototype._parsePLTE=function(r){this._crc.write(r);let e=Math.floor(r.length/3);for(let i=0;i<e;i++)this._palette.push([r[i*3],r[i*3+1],r[i*3+2],255]);this.palette(this._palette),this._handleChunkEnd()};Ct.prototype._handleTRNS=function(r){this.simpleTransparency(),this.read(r,this._parseTRNS.bind(this))};Ct.prototype._parseTRNS=function(r){if(this._crc.write(r),this._colorType===yt.COLORTYPE_PALETTE_COLOR){if(this._palette.length===0){this.error(new Error("Transparency chunk must be after palette"));return}if(r.length>this._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let e=0;e<r.length;e++)this._palette[e][3]=r[e];this.palette(this._palette)}this._colorType===yt.COLORTYPE_GRAYSCALE&&this.transColor([r.readUInt16BE(0)]),this._colorType===yt.COLORTYPE_COLOR&&this.transColor([r.readUInt16BE(0),r.readUInt16BE(2),r.readUInt16BE(4)]),this._handleChunkEnd()};Ct.prototype._handleGAMA=function(r){this.read(r,this._parseGAMA.bind(this))};Ct.prototype._parseGAMA=function(r){this._crc.write(r),this.gamma(r.readUInt32BE(0)/yt.GAMMA_DIVISION),this._handleChunkEnd()};Ct.prototype._handleIDAT=function(r){this._emittedHeadersFinished||(this._emittedHeadersFinished=!0,this.headersFinished()),this.read(-r,this._parseIDAT.bind(this,r))};Ct.prototype._parseIDAT=function(r,e){if(this._crc.write(e),this._colorType===yt.COLORTYPE_PALETTE_COLOR&&this._palette.length===0)throw new Error("Expected palette not found");this.inflateData(e);let i=r-e.length;i>0?this._handleIDAT(i):this._handleChunkEnd()};Ct.prototype._handleIEND=function(r){this.read(r,this._parseIEND.bind(this))};Ct.prototype._parseIEND=function(r){this._crc.write(r),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var Cl=ae(tm=>{"use strict";var em=dl(),dI=[function(){},function(r,e,i,a){if(a===e.length)throw new Error("Ran out of data");let A=e[a];r[i]=A,r[i+1]=A,r[i+2]=A,r[i+3]=255},function(r,e,i,a){if(a+1>=e.length)throw new Error("Ran out of data");let A=e[a];r[i]=A,r[i+1]=A,r[i+2]=A,r[i+3]=e[a+1]},function(r,e,i,a){if(a+2>=e.length)throw new Error("Ran out of data");r[i]=e[a],r[i+1]=e[a+1],r[i+2]=e[a+2],r[i+3]=255},function(r,e,i,a){if(a+3>=e.length)throw new Error("Ran out of data");r[i]=e[a],r[i+1]=e[a+1],r[i+2]=e[a+2],r[i+3]=e[a+3]}],gI=[function(){},function(r,e,i,a){let A=e[0];r[i]=A,r[i+1]=A,r[i+2]=A,r[i+3]=a},function(r,e,i){let a=e[0];r[i]=a,r[i+1]=a,r[i+2]=a,r[i+3]=e[1]},function(r,e,i,a){r[i]=e[0],r[i+1]=e[1],r[i+2]=e[2],r[i+3]=a},function(r,e,i){r[i]=e[0],r[i+1]=e[1],r[i+2]=e[2],r[i+3]=e[3]}];function mI(r,e){let i=[],a=0;function A(){if(a===r.length)throw new Error("Ran out of data");let c=r[a];a++;let u,f,p,g,m,E,b,y;switch(e){default:throw new Error("unrecognised depth");case 16:b=r[a],a++,i.push((c<<8)+b);break;case 4:b=c&15,y=c>>4,i.push(y,b);break;case 2:m=c&3,E=c>>2&3,b=c>>4&3,y=c>>6&3,i.push(y,b,E,m);break;case 1:u=c&1,f=c>>1&1,p=c>>2&1,g=c>>3&1,m=c>>4&1,E=c>>5&1,b=c>>6&1,y=c>>7&1,i.push(y,b,E,m,g,p,f,u);break}}return{get:function(c){for(;i.length<c;)A();let u=i.slice(0,c);return i=i.slice(c),u},resetAfterLine:function(){i.length=0},end:function(){if(a!==r.length)throw new Error("extra data found")}}}function BI(r,e,i,a,A,c){let u=r.width,f=r.height,p=r.index;for(let g=0;g<f;g++)for(let m=0;m<u;m++){let E=i(m,g,p);dI[a](e,A,E,c),c+=a}return c}function EI(r,e,i,a,A,c){let u=r.width,f=r.height,p=r.index;for(let g=0;g<f;g++){for(let m=0;m<u;m++){let E=A.get(a),b=i(m,g,p);gI[a](e,E,b,c)}A.resetAfterLine()}}tm.dataToBitMap=function(r,e){let i=e.width,a=e.height,A=e.depth,c=e.bpp,u=e.interlace,f;A!==8&&(f=mI(r,A));let p;A<=8?p=Buffer.alloc(i*a*4):p=new Uint16Array(i*a*4);let g=Math.pow(2,A)-1,m=0,E,b;if(u)E=em.getImagePasses(i,a),b=em.getInterlaceIterator(i,a);else{let y=0;b=function(){let Q=y;return y+=4,Q},E=[{width:i,height:a}]}for(let y=0;y<E.length;y++)A===8?m=BI(E[y],p,b,c,r,m):EI(E[y],p,b,c,f,g);if(A===8){if(m!==r.length)throw new Error("extra data found")}else f.end();return p}});var bl=ae((iY,rm)=>{"use strict";function wI(r,e,i,a,A){let c=0;for(let u=0;u<a;u++)for(let f=0;f<i;f++){let p=A[r[c]];if(!p)throw new Error("index "+r[c]+" not in palette");for(let g=0;g<4;g++)e[c+g]=p[g];c+=4}}function yI(r,e,i,a,A){let c=0;for(let u=0;u<a;u++)for(let f=0;f<i;f++){let p=!1;if(A.length===1?A[0]===r[c]&&(p=!0):A[0]===r[c]&&A[1]===r[c+1]&&A[2]===r[c+2]&&(p=!0),p)for(let g=0;g<4;g++)e[c+g]=0;c+=4}}function CI(r,e,i,a,A){let c=255,u=Math.pow(2,A)-1,f=0;for(let p=0;p<a;p++)for(let g=0;g<i;g++){for(let m=0;m<4;m++)e[f+m]=Math.floor(r[f+m]*c/u+.5);f+=4}}rm.exports=function(r,e,i=!1){let a=e.depth,A=e.width,c=e.height,u=e.colorType,f=e.transColor,p=e.palette,g=r;return u===3?wI(r,g,A,c,p):(f&&yI(r,g,A,c,f),a!==8&&!i&&(a===16&&(g=Buffer.alloc(A*c*4)),CI(r,g,A,c,a))),g}});var sm=ae((nY,nm)=>{"use strict";var bI=We("util"),xl=We("zlib"),im=fl(),xI=zg(),QI=yl(),vI=Cl(),II=bl(),vr=nm.exports=function(r){im.call(this),this._parser=new QI(r,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=r,this.writable=!0,this._parser.start()};bI.inherits(vr,im);vr.prototype._handleError=function(r){this.emit("error",r),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0};vr.prototype._inflateData=function(r){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=xl.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let i=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,a=Math.max(i,xl.Z_MIN_CHUNK);this._inflate=xl.createInflate({chunkSize:a});let A=i,c=this.emit.bind(this,"error");this._inflate.on("error",function(f){A&&c(f)}),this._filter.on("complete",this._complete.bind(this));let u=this._filter.write.bind(this._filter);this._inflate.on("data",function(f){A&&(f.length>A&&(f=f.slice(0,A)),A-=f.length,u(f))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(r)};vr.prototype._handleMetaData=function(r){this._metaData=r,this._bitmapInfo=Object.create(r),this._filter=new xI(this._bitmapInfo)};vr.prototype._handleTransColor=function(r){this._bitmapInfo.transColor=r};vr.prototype._handlePalette=function(r){this._bitmapInfo.palette=r};vr.prototype._simpleTransparency=function(){this._metaData.alpha=!0};vr.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};vr.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};vr.prototype._complete=function(r){if(this.errord)return;let e;try{let i=vI.dataToBitMap(r,this._bitmapInfo);e=II(i,this._bitmapInfo,this._options.skipRescale),i=null}catch(i){this._handleError(i);return}this.emit("parsed",e)}});var om=ae((sY,am)=>{"use strict";var er=nn();am.exports=function(r,e,i,a){let A=[er.COLORTYPE_COLOR_ALPHA,er.COLORTYPE_ALPHA].indexOf(a.colorType)!==-1;if(a.colorType===a.inputColorType){let Q=(function(){let v=new ArrayBuffer(2);return new DataView(v).setInt16(0,256,!0),new Int16Array(v)[0]!==256})();if(a.bitDepth===8||a.bitDepth===16&&Q)return r}let c=a.bitDepth!==16?r:new Uint16Array(r.buffer),u=255,f=er.COLORTYPE_TO_BPP_MAP[a.inputColorType];f===4&&!a.inputHasAlpha&&(f=3);let p=er.COLORTYPE_TO_BPP_MAP[a.colorType];a.bitDepth===16&&(u=65535,p*=2);let g=Buffer.alloc(e*i*p),m=0,E=0,b=a.bgColor||{};b.red===void 0&&(b.red=u),b.green===void 0&&(b.green=u),b.blue===void 0&&(b.blue=u);function y(){let Q,v,I,F=u;switch(a.inputColorType){case er.COLORTYPE_COLOR_ALPHA:F=c[m+3],Q=c[m],v=c[m+1],I=c[m+2];break;case er.COLORTYPE_COLOR:Q=c[m],v=c[m+1],I=c[m+2];break;case er.COLORTYPE_ALPHA:F=c[m+1],Q=c[m],v=Q,I=Q;break;case er.COLORTYPE_GRAYSCALE:Q=c[m],v=Q,I=Q;break;default:throw new Error("input color type:"+a.inputColorType+" is not supported at present")}return a.inputHasAlpha&&(A||(F/=u,Q=Math.min(Math.max(Math.round((1-F)*b.red+F*Q),0),u),v=Math.min(Math.max(Math.round((1-F)*b.green+F*v),0),u),I=Math.min(Math.max(Math.round((1-F)*b.blue+F*I),0),u))),{red:Q,green:v,blue:I,alpha:F}}for(let Q=0;Q<i;Q++)for(let v=0;v<e;v++){let I=y(c,m);switch(a.colorType){case er.COLORTYPE_COLOR_ALPHA:case er.COLORTYPE_COLOR:a.bitDepth===8?(g[E]=I.red,g[E+1]=I.green,g[E+2]=I.blue,A&&(g[E+3]=I.alpha)):(g.writeUInt16BE(I.red,E),g.writeUInt16BE(I.green,E+2),g.writeUInt16BE(I.blue,E+4),A&&g.writeUInt16BE(I.alpha,E+6));break;case er.COLORTYPE_ALPHA:case er.COLORTYPE_GRAYSCALE:{let F=(I.red+I.green+I.blue)/3;a.bitDepth===8?(g[E]=F,A&&(g[E+1]=I.alpha)):(g.writeUInt16BE(F,E),A&&g.writeUInt16BE(I.alpha,E+2));break}default:throw new Error("unrecognised color Type "+a.colorType)}m+=f,E+=p}return g}});var cm=ae((aY,lm)=>{"use strict";var Am=gl();function FI(r,e,i,a,A){for(let c=0;c<i;c++)a[A+c]=r[e+c]}function TI(r,e,i){let a=0,A=e+i;for(let c=e;c<A;c++)a+=Math.abs(r[c]);return a}function SI(r,e,i,a,A,c){for(let u=0;u<i;u++){let f=u>=c?r[e+u-c]:0,p=r[e+u]-f;a[A+u]=p}}function DI(r,e,i,a){let A=0;for(let c=0;c<i;c++){let u=c>=a?r[e+c-a]:0,f=r[e+c]-u;A+=Math.abs(f)}return A}function MI(r,e,i,a,A){for(let c=0;c<i;c++){let u=e>0?r[e+c-i]:0,f=r[e+c]-u;a[A+c]=f}}function UI(r,e,i){let a=0,A=e+i;for(let c=e;c<A;c++){let u=e>0?r[c-i]:0,f=r[c]-u;a+=Math.abs(f)}return a}function kI(r,e,i,a,A,c){for(let u=0;u<i;u++){let f=u>=c?r[e+u-c]:0,p=e>0?r[e+u-i]:0,g=r[e+u]-(f+p>>1);a[A+u]=g}}function YI(r,e,i,a){let A=0;for(let c=0;c<i;c++){let u=c>=a?r[e+c-a]:0,f=e>0?r[e+c-i]:0,p=r[e+c]-(u+f>>1);A+=Math.abs(p)}return A}function OI(r,e,i,a,A,c){for(let u=0;u<i;u++){let f=u>=c?r[e+u-c]:0,p=e>0?r[e+u-i]:0,g=e>0&&u>=c?r[e+u-(i+c)]:0,m=r[e+u]-Am(f,p,g);a[A+u]=m}}function NI(r,e,i,a){let A=0;for(let c=0;c<i;c++){let u=c>=a?r[e+c-a]:0,f=e>0?r[e+c-i]:0,p=e>0&&c>=a?r[e+c-(i+a)]:0,g=r[e+c]-Am(u,f,p);A+=Math.abs(g)}return A}var RI={0:FI,1:SI,2:MI,3:kI,4:OI},GI={0:TI,1:DI,2:UI,3:YI,4:NI};lm.exports=function(r,e,i,a,A){let c;if(!("filterType"in a)||a.filterType===-1)c=[0,1,2,3,4];else if(typeof a.filterType=="number")c=[a.filterType];else throw new Error("unrecognised filter types");a.bitDepth===16&&(A*=2);let u=e*A,f=0,p=0,g=Buffer.alloc((u+1)*i),m=c[0];for(let E=0;E<i;E++){if(c.length>1){let b=1/0;for(let y=0;y<c.length;y++){let Q=GI[c[y]](r,p,u,A);Q<b&&(m=c[y],b=Q)}}g[f]=m,f++,RI[m](r,p,u,g,f,A),f+=u,p+=u}return g}});var Ql=ae((oY,um)=>{"use strict";var Ft=nn(),LI=wl(),PI=om(),HI=cm(),WI=We("zlib"),ai=um.exports=function(r){if(this._options=r,r.deflateChunkSize=r.deflateChunkSize||32*1024,r.deflateLevel=r.deflateLevel!=null?r.deflateLevel:9,r.deflateStrategy=r.deflateStrategy!=null?r.deflateStrategy:3,r.inputHasAlpha=r.inputHasAlpha!=null?r.inputHasAlpha:!0,r.deflateFactory=r.deflateFactory||WI.createDeflate,r.bitDepth=r.bitDepth||8,r.colorType=typeof r.colorType=="number"?r.colorType:Ft.COLORTYPE_COLOR_ALPHA,r.inputColorType=typeof r.inputColorType=="number"?r.inputColorType:Ft.COLORTYPE_COLOR_ALPHA,[Ft.COLORTYPE_GRAYSCALE,Ft.COLORTYPE_COLOR,Ft.COLORTYPE_COLOR_ALPHA,Ft.COLORTYPE_ALPHA].indexOf(r.colorType)===-1)throw new Error("option color type:"+r.colorType+" is not supported at present");if([Ft.COLORTYPE_GRAYSCALE,Ft.COLORTYPE_COLOR,Ft.COLORTYPE_COLOR_ALPHA,Ft.COLORTYPE_ALPHA].indexOf(r.inputColorType)===-1)throw new Error("option input color type:"+r.inputColorType+" is not supported at present");if(r.bitDepth!==8&&r.bitDepth!==16)throw new Error("option bit depth:"+r.bitDepth+" is not supported at present")};ai.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};ai.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};ai.prototype.filterData=function(r,e,i){let a=PI(r,e,i,this._options),A=Ft.COLORTYPE_TO_BPP_MAP[this._options.colorType];return HI(a,e,i,this._options,A)};ai.prototype._packChunk=function(r,e){let i=e?e.length:0,a=Buffer.alloc(i+12);return a.writeUInt32BE(i,0),a.writeUInt32BE(r,4),e&&e.copy(a,8),a.writeInt32BE(LI.crc32(a.slice(4,a.length-4)),a.length-4),a};ai.prototype.packGAMA=function(r){let e=Buffer.alloc(4);return e.writeUInt32BE(Math.floor(r*Ft.GAMMA_DIVISION),0),this._packChunk(Ft.TYPE_gAMA,e)};ai.prototype.packIHDR=function(r,e){let i=Buffer.alloc(13);return i.writeUInt32BE(r,0),i.writeUInt32BE(e,4),i[8]=this._options.bitDepth,i[9]=this._options.colorType,i[10]=0,i[11]=0,i[12]=0,this._packChunk(Ft.TYPE_IHDR,i)};ai.prototype.packIDAT=function(r){return this._packChunk(Ft.TYPE_IDAT,r)};ai.prototype.packIEND=function(){return this._packChunk(Ft.TYPE_IEND,null)}});var dm=ae((AY,pm)=>{"use strict";var JI=We("util"),hm=We("stream"),VI=nn(),jI=Ql(),fm=pm.exports=function(r){hm.call(this);let e=r||{};this._packer=new jI(e),this._deflate=this._packer.createDeflate(),this.readable=!0};JI.inherits(fm,hm);fm.prototype.pack=function(r,e,i,a){this.emit("data",Buffer.from(VI.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,i)),a&&this.emit("data",this._packer.packGAMA(a));let A=this._packer.filterData(r,e,i);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(c){this.emit("data",this._packer.packIDAT(c))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(A)}});var ym=ae((qn,wm)=>{"use strict";var gm=We("assert").ok,sn=We("zlib"),_I=We("util"),mm=We("buffer").kMaxLength;function vi(r){if(!(this instanceof vi))return new vi(r);r&&r.chunkSize<sn.Z_MIN_CHUNK&&(r.chunkSize=sn.Z_MIN_CHUNK),sn.Inflate.call(this,r),this._offset=this._offset===void 0?this._outOffset:this._offset,this._buffer=this._buffer||this._outBuffer,r&&r.maxLength!=null&&(this._maxLength=r.maxLength)}function ZI(r){return new vi(r)}function Bm(r,e){e&&process.nextTick(e),r._handle&&(r._handle.close(),r._handle=null)}vi.prototype._processChunk=function(r,e,i){if(typeof i=="function")return sn.Inflate._processChunk.call(this,r,e,i);let a=this,A=r&&r.length,c=this._chunkSize-this._offset,u=this._maxLength,f=0,p=[],g=0,m;this.on("error",function(Q){m=Q});function E(Q,v){if(a._hadError)return;let I=c-v;if(gm(I>=0,"have should not go down"),I>0){let F=a._buffer.slice(a._offset,a._offset+I);if(a._offset+=I,F.length>u&&(F=F.slice(0,u)),p.push(F),g+=F.length,u-=F.length,u===0)return!1}return(v===0||a._offset>=a._chunkSize)&&(c=a._chunkSize,a._offset=0,a._buffer=Buffer.allocUnsafe(a._chunkSize)),v===0?(f+=A-Q,A=Q,!0):!1}gm(this._handle,"zlib binding closed");let b;do b=this._handle.writeSync(e,r,f,A,this._buffer,this._offset,c),b=b||this._writeState;while(!this._hadError&&E(b[0],b[1]));if(this._hadError)throw m;if(g>=mm)throw Bm(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+mm.toString(16)+" bytes");let y=Buffer.concat(p,g);return Bm(this),y};_I.inherits(vi,sn.Inflate);function XI(r,e){if(typeof e=="string"&&(e=Buffer.from(e)),!(e instanceof Buffer))throw new TypeError("Not a string or buffer");let i=r._finishFlushFlag;return i==null&&(i=sn.Z_FINISH),r._processChunk(e,i)}function Em(r,e){return XI(new vi(e),r)}wm.exports=qn=Em;qn.Inflate=vi;qn.createInflate=ZI;qn.inflateSync=Em});var vl=ae((lY,bm)=>{"use strict";var Cm=bm.exports=function(r){this._buffer=r,this._reads=[]};Cm.prototype.read=function(r,e){this._reads.push({length:Math.abs(r),allowLess:r<0,func:e})};Cm.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let r=this._reads[0];if(this._buffer.length&&(this._buffer.length>=r.length||r.allowLess)){this._reads.shift();let e=this._buffer;this._buffer=e.slice(r.length),r.func.call(this,e.slice(0,r.length))}else break}if(this._reads.length>0)throw new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw new Error("unrecognised content at end of stream")}});var Qm=ae(xm=>{"use strict";var zI=vl(),qI=ml();xm.process=function(r,e){let i=[],a=new zI(r);return new qI(e,{read:a.read.bind(a),write:function(c){i.push(c)},complete:function(){}}).start(),a.process(),Buffer.concat(i)}});var Tm=ae((uY,Fm)=>{"use strict";var vm=!0,Im=We("zlib"),KI=ym();Im.deflateSync||(vm=!1);var $I=vl(),eF=Qm(),tF=yl(),rF=Cl(),iF=bl();Fm.exports=function(r,e){if(!vm)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let i;function a(M){i=M}let A;function c(M){A=M}function u(M){A.transColor=M}function f(M){A.palette=M}function p(){A.alpha=!0}let g;function m(M){g=M}let E=[];function b(M){E.push(M)}let y=new $I(r);if(new tF(e,{read:y.read.bind(y),error:a,metadata:c,gamma:m,palette:f,transColor:u,inflateData:b,simpleTransparency:p}).start(),y.process(),i)throw i;let v=Buffer.concat(E);E.length=0;let I;if(A.interlace)I=Im.inflateSync(v);else{let O=((A.width*A.bpp*A.depth+7>>3)+1)*A.height;I=KI(v,{chunkSize:O,maxLength:O})}if(v=null,!I||!I.length)throw new Error("bad png - invalid inflate data response");let F=eF.process(I,A);v=null;let k=rF.dataToBitMap(F,A);F=null;let _=iF(k,A,e.skipRescale);return A.data=_,A.gamma=g||0,A}});var Um=ae((hY,Mm)=>{"use strict";var Sm=!0,Dm=We("zlib");Dm.deflateSync||(Sm=!1);var nF=nn(),sF=Ql();Mm.exports=function(r,e){if(!Sm)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let i=e||{},a=new sF(i),A=[];A.push(Buffer.from(nF.PNG_SIGNATURE)),A.push(a.packIHDR(r.width,r.height)),r.gamma&&A.push(a.packGAMA(r.gamma));let c=a.filterData(r.data,r.width,r.height),u=Dm.deflateSync(c,a.getDeflateOptions());if(c=null,!u||!u.length)throw new Error("bad png - invalid compressed data response");return A.push(a.packIDAT(u)),A.push(a.packIEND()),Buffer.concat(A)}});var km=ae(Il=>{"use strict";var aF=Tm(),oF=Um();Il.read=function(r,e){return aF(r,e||{})};Il.write=function(r,e){return oF(r,e)}});var Nm=ae(Om=>{"use strict";var AF=We("util"),Ym=We("stream"),lF=sm(),cF=dm(),uF=km(),Ot=Om.PNG=function(r){Ym.call(this),r=r||{},this.width=r.width|0,this.height=r.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,r.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new lF(r),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new cF(r),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};AF.inherits(Ot,Ym);Ot.sync=uF;Ot.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};Ot.prototype.parse=function(r,e){if(e){let i,a;i=function(A){this.removeListener("error",a),this.data=A,e(null,this)}.bind(this),a=function(A){this.removeListener("parsed",i),e(A,null)}.bind(this),this.once("parsed",i),this.once("error",a)}return this.end(r),this};Ot.prototype.write=function(r){return this._parser.write(r),!0};Ot.prototype.end=function(r){this._parser.end(r)};Ot.prototype._metadata=function(r){this.width=r.width,this.height=r.height,this.emit("metadata",r)};Ot.prototype._gamma=function(r){this.gamma=r};Ot.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};Ot.bitblt=function(r,e,i,a,A,c,u,f){if(i|=0,a|=0,A|=0,c|=0,u|=0,f|=0,i>r.width||a>r.height||i+A>r.width||a+c>r.height)throw new Error("bitblt reading outside image");if(u>e.width||f>e.height||u+A>e.width||f+c>e.height)throw new Error("bitblt writing outside image");for(let p=0;p<c;p++)r.data.copy(e.data,(f+p)*e.width+u<<2,(a+p)*r.width+i<<2,(a+p)*r.width+i+A<<2)};Ot.prototype.bitblt=function(r,e,i,a,A,c,u){return Ot.bitblt(this,r,e,i,a,A,c,u),this};Ot.adjustGamma=function(r){if(r.gamma){for(let e=0;e<r.height;e++)for(let i=0;i<r.width;i++){let a=r.width*e+i<<2;for(let A=0;A<3;A++){let c=r.data[a+A]/255;c=Math.pow(c,1/2.2/r.gamma),r.data[a+A]=Math.round(c*255)}}r.gamma=0}};Ot.prototype.adjustGamma=function(){Ot.adjustGamma(this)}});var C0=ae((dY,y0)=>{var hF=Object.create,Ca=Object.defineProperty,fF=Object.getOwnPropertyDescriptor,pF=Object.getOwnPropertyNames,dF=Object.getPrototypeOf,gF=Object.prototype.hasOwnProperty,Ge=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),mF=(r,e)=>{for(var i in e)Ca(r,i,{get:e[i],enumerable:!0})},Wm=(r,e,i,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let A of pF(e))!gF.call(r,A)&&A!==i&&Ca(r,A,{get:()=>e[A],enumerable:!(a=fF(e,A))||a.enumerable});return r},Ol=(r,e,i)=>(i=r!=null?hF(dF(r)):{},Wm(e||!r||!r.__esModule?Ca(i,"default",{value:r,enumerable:!0}):i,r)),BF=r=>Wm(Ca({},"__esModule",{value:!0}),r),ba=Ge(r=>{"use strict";var e=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","266 ff","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],i=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls"],a=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],A=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function c(m){this.font=m}c.prototype.charToGlyphIndex=function(m){var E=m.charCodeAt(0),b=this.font.glyphs;if(b){for(var y=0;y<b.length;y+=1)for(var Q=b.get(y),v=0;v<Q.unicodes.length;v+=1)if(Q.unicodes[v]===E)return y}else return null};function u(m){this.cmap=m}u.prototype.charToGlyphIndex=function(m){return this.cmap.glyphIndexMap[m.charCodeAt(0)]||0};function f(m,E){this.encoding=m,this.charset=E}f.prototype.charToGlyphIndex=function(m){var E=m.charCodeAt(0),b=this.encoding[E];return this.charset.indexOf(b)};function p(m){var E;switch(m.version){case 1:this.names=r.standardNames.slice();break;case 2:for(this.names=new Array(m.numberOfGlyphs),E=0;E<m.numberOfGlyphs;E++)m.glyphNameIndex[E]<r.standardNames.length?this.names[E]=r.standardNames[m.glyphNameIndex[E]]:this.names[E]=m.names[m.glyphNameIndex[E]-r.standardNames.length];break;case 2.5:for(this.names=new Array(m.numberOfGlyphs),E=0;E<m.numberOfGlyphs;E++)this.names[E]=r.standardNames[E+m.glyphNameIndex[E]];break;case 3:this.names=[];break}}p.prototype.nameToGlyphIndex=function(m){return this.names.indexOf(m)},p.prototype.glyphIndexToName=function(m){return this.names[m]};function g(m){for(var E,b=m.tables.cmap.glyphIndexMap,y=Object.keys(b),Q=0;Q<y.length;Q+=1){var v=y[Q],I=b[v];E=m.glyphs.get(I),E.addUnicode(parseInt(v))}for(Q=0;Q<m.glyphs.length;Q+=1)E=m.glyphs.get(Q),m.cffEncoding?E.name=m.cffEncoding.charset[Q]:E.name=m.glyphNames.glyphIndexToName(Q)}r.cffStandardStrings=e,r.cffStandardEncoding=i,r.cffExpertEncoding=a,r.standardNames=A,r.DefaultEncoding=c,r.CmapEncoding=u,r.CffEncoding=f,r.GlyphNames=p,r.addGlyphNames=g}),$n=Ge(r=>{"use strict";function e(){this.commands=[],this.fill="black",this.stroke=null,this.strokeWidth=1}e.prototype.moveTo=function(i,a){this.commands.push({type:"M",x:i,y:a})},e.prototype.lineTo=function(i,a){this.commands.push({type:"L",x:i,y:a})},e.prototype.curveTo=e.prototype.bezierCurveTo=function(i,a,A,c,u,f){this.commands.push({type:"C",x1:i,y1:a,x2:A,y2:c,x:u,y:f})},e.prototype.quadTo=e.prototype.quadraticCurveTo=function(i,a,A,c){this.commands.push({type:"Q",x1:i,y1:a,x:A,y:c})},e.prototype.close=e.prototype.closePath=function(){this.commands.push({type:"Z"})},e.prototype.extend=function(i){i.commands&&(i=i.commands),Array.prototype.push.apply(this.commands,i)},e.prototype.draw=function(i){i.beginPath();for(var a=0;a<this.commands.length;a+=1){var A=this.commands[a];A.type==="M"?i.moveTo(A.x,A.y):A.type==="L"?i.lineTo(A.x,A.y):A.type==="C"?i.bezierCurveTo(A.x1,A.y1,A.x2,A.y2,A.x,A.y):A.type==="Q"?i.quadraticCurveTo(A.x1,A.y1,A.x,A.y):A.type==="Z"&&i.closePath()}this.fill&&(i.fillStyle=this.fill,i.fill()),this.stroke&&(i.strokeStyle=this.stroke,i.lineWidth=this.strokeWidth,i.stroke())},e.prototype.toPathData=function(i){i=i!==void 0?i:2;function a(p){return Math.round(p)===p?""+Math.round(p):p.toFixed(i)}function A(){for(var p="",g=0;g<arguments.length;g+=1){var m=arguments[g];m>=0&&g>0&&(p+=" "),p+=a(m)}return p}for(var c="",u=0;u<this.commands.length;u+=1){var f=this.commands[u];f.type==="M"?c+="M"+A(f.x,f.y):f.type==="L"?c+="L"+A(f.x,f.y):f.type==="C"?c+="C"+A(f.x1,f.y1,f.x2,f.y2,f.x,f.y):f.type==="Q"?c+="Q"+A(f.x1,f.y1,f.x,f.y):f.type==="Z"&&(c+="Z")}return c},e.prototype.toSVG=function(i){var a='<path d="';return a+=this.toPathData(i),a+='"',this.fill&this.fill!=="black"&&(this.fill===null?a+=' fill="none"':a+=' fill="'+this.fill+'"'),this.stroke&&(a+=' stroke="'+this.stroke+'" stroke-width="'+this.strokeWidth+'"'),a+="/>",a},r.Path=e}),ur=Ge(r=>{"use strict";r.argument=function(e,i){if(!e)throw new Error(i)},r.assert=r.argument}),Dl=Ge(r=>{"use strict";var e=ur(),i=32768,a=2147483648,A={},c={},u={};function f(y){return function(){return y}}c.BYTE=function(y){return e.argument(y>=0&&y<=255,"Byte value should be between 0 and 255."),[y]},u.BYTE=f(1),c.CHAR=function(y){return[y.charCodeAt(0)]},u.CHAR=f(1),c.CHARARRAY=function(y){for(var Q=[],v=0;v<y.length;v+=1)Q.push(y.charCodeAt(v));return Q},u.CHARARRAY=function(y){return y.length},c.USHORT=function(y){return[y>>8&255,y&255]},u.USHORT=f(2),c.SHORT=function(y){return y>=i&&(y=-(2*i-y)),[y>>8&255,y&255]},u.SHORT=f(2),c.UINT24=function(y){return[y>>16&255,y>>8&255,y&255]},u.UINT24=f(3),c.ULONG=function(y){return[y>>24&255,y>>16&255,y>>8&255,y&255]},u.ULONG=f(4),c.LONG=function(y){return y>=a&&(y=-(2*a-y)),[y>>24&255,y>>16&255,y>>8&255,y&255]},u.LONG=f(4),c.FIXED=c.ULONG,u.FIXED=u.ULONG,c.FWORD=c.SHORT,u.FWORD=u.SHORT,c.UFWORD=c.USHORT,u.UFWORD=u.USHORT,c.LONGDATETIME=function(){return[0,0,0,0,0,0,0,0]},u.LONGDATETIME=f(8),c.TAG=function(y){return e.argument(y.length===4,"Tag should be exactly 4 ASCII characters."),[y.charCodeAt(0),y.charCodeAt(1),y.charCodeAt(2),y.charCodeAt(3)]},u.TAG=f(4),c.Card8=c.BYTE,u.Card8=u.BYTE,c.Card16=c.USHORT,u.Card16=u.USHORT,c.OffSize=c.BYTE,u.OffSize=u.BYTE,c.SID=c.USHORT,u.SID=u.USHORT,c.NUMBER=function(y){return y>=-107&&y<=107?[y+139]:y>=108&&y<=1131?(y=y-108,[(y>>8)+247,y&255]):y>=-1131&&y<=-108?(y=-y-108,[(y>>8)+251,y&255]):y>=-32768&&y<=32767?c.NUMBER16(y):c.NUMBER32(y)},u.NUMBER=function(y){return c.NUMBER(y).length},c.NUMBER16=function(y){return[28,y>>8&255,y&255]},u.NUMBER16=f(3),c.NUMBER32=function(y){return[29,y>>24&255,y>>16&255,y>>8&255,y&255]},u.NUMBER32=f(5),c.REAL=function(y){var Q=y.toString(),v=/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/.exec(Q);if(v){var I=parseFloat("1e"+((v[2]?+v[2]:0)+v[1].length));Q=(Math.round(y*I)/I).toString()}var F="",k,_;for(k=0,_=Q.length;k<_;k+=1){var M=Q[k];M==="e"?F+=Q[++k]==="-"?"c":"b":M==="."?F+="a":M==="-"?F+="e":F+=M}F+=F.length&1?"f":"ff";var O=[30];for(k=0,_=F.length;k<_;k+=2)O.push(parseInt(F.substr(k,2),16));return O},u.REAL=function(y){return c.REAL(y).length},c.NAME=c.CHARARRAY,u.NAME=u.CHARARRAY,c.STRING=c.CHARARRAY,u.STRING=u.CHARARRAY,A.UTF16=function(y,Q,v){for(var I=[],F=v/2,k=0;k<F;k++,Q+=2)I[k]=y.getUint16(Q);return String.fromCharCode.apply(null,I)},c.UTF16=function(y){for(var Q=[],v=0;v<y.length;v+=1){var I=y.charCodeAt(v);Q.push(I>>8&255),Q.push(I&255)}return Q},u.UTF16=function(y){return y.length*2};var p={"x-mac-croatian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u03A9\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uF8FF\xA9\u2044\u20AC\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7","x-mac-cyrillic":"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E","x-mac-gaelic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u1E02\xB1\u2264\u2265\u1E03\u010A\u010B\u1E0A\u1E0B\u1E1E\u1E1F\u0120\u0121\u1E40\xE6\xF8\u1E41\u1E56\u1E57\u027C\u0192\u017F\u1E60\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\u1E61\u1E9B\xFF\u0178\u1E6A\u20AC\u2039\u203A\u0176\u0177\u1E6B\xB7\u1EF2\u1EF3\u204A\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u2663\xD2\xDA\xDB\xD9\u0131\xDD\xFD\u0174\u0175\u1E84\u1E85\u1E80\u1E81\u1E82\u1E83","x-mac-greek":"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\u20AC\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\xB7\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\xAD","x-mac-icelandic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-inuit":"\u1403\u1404\u1405\u1406\u140A\u140B\u1431\u1432\u1433\u1434\u1438\u1439\u1449\u144E\u144F\u1450\u1451\u1455\u1456\u1466\u146D\u146E\u146F\u1470\u1472\u1473\u1483\u148B\u148C\u148D\u148E\u1490\u1491\xB0\u14A1\u14A5\u14A6\u2022\xB6\u14A7\xAE\xA9\u2122\u14A8\u14AA\u14AB\u14BB\u14C2\u14C3\u14C4\u14C5\u14C7\u14C8\u14D0\u14EF\u14F0\u14F1\u14F2\u14F4\u14F5\u1505\u14D5\u14D6\u14D7\u14D8\u14DA\u14DB\u14EA\u1528\u1529\u152A\u152B\u152D\u2026\xA0\u152E\u153E\u1555\u1556\u1557\u2013\u2014\u201C\u201D\u2018\u2019\u1558\u1559\u155A\u155D\u1546\u1547\u1548\u1549\u154B\u154C\u1550\u157F\u1580\u1581\u1582\u1583\u1584\u1585\u158F\u1590\u1591\u1592\u1593\u1594\u1595\u1671\u1672\u1673\u1674\u1675\u1676\u1596\u15A0\u15A1\u15A2\u15A3\u15A4\u15A5\u15A6\u157C\u0141\u0142","x-mac-ce":"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7",macintosh:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-romanian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u0218\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\u0103\u0219\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\u2039\u203A\u021A\u021B\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-turkish":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\uF8A0\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"};A.MACSTRING=function(y,Q,v,I){var F=p[I];if(F!==void 0){for(var k="",_=0;_<v;_++){var M=y.getUint8(Q+_);M<=127?k+=String.fromCharCode(M):k+=F[M&127]}return k}};var g=typeof WeakMap=="function"&&new WeakMap,m,E=function(y){if(!m){m={};for(var Q in p)m[Q]=new String(Q)}var v=m[y];if(v!==void 0){if(g){var I=g.get(v);if(I!==void 0)return I}var F=p[y];if(F!==void 0){for(var k={},_=0;_<F.length;_++)k[F.charCodeAt(_)]=_+128;return g&&g.set(v,k),k}}};c.MACSTRING=function(y,Q){var v=E(Q);if(v!==void 0){for(var I=[],F=0;F<y.length;F++){var k=y.charCodeAt(F);if(k>=128&&(k=v[k],k===void 0))return;I.push(k)}return I}},u.MACSTRING=function(y,Q){var v=c.MACSTRING(y,Q);return v!==void 0?v.length:0},c.INDEX=function(y){var Q,v=1,I=[v],F=[],k=0;for(Q=0;Q<y.length;Q+=1){var _=c.OBJECT(y[Q]);Array.prototype.push.apply(F,_),k+=_.length,v+=_.length,I.push(v)}if(F.length===0)return[0,0];var M=[],O=1+Math.floor(Math.log(k)/Math.log(2))/8|0,P=[void 0,c.BYTE,c.USHORT,c.UINT24,c.ULONG][O];for(Q=0;Q<I.length;Q+=1){var R=P(I[Q]);Array.prototype.push.apply(M,R)}return Array.prototype.concat(c.Card16(y.length),c.OffSize(O),M,F)},u.INDEX=function(y){return c.INDEX(y).length},c.DICT=function(y){for(var Q=[],v=Object.keys(y),I=v.length,F=0;F<I;F+=1){var k=parseInt(v[F],0),_=y[k];Q=Q.concat(c.OPERAND(_.value,_.type)),Q=Q.concat(c.OPERATOR(k))}return Q},u.DICT=function(y){return c.DICT(y).length},c.OPERATOR=function(y){return y<1200?[y]:[12,y-1200]},c.OPERAND=function(y,Q){var v=[];if(Array.isArray(Q))for(var I=0;I<Q.length;I+=1)e.argument(y.length===Q.length,"Not enough arguments given for type"+Q),v=v.concat(c.OPERAND(y[I],Q[I]));else if(Q==="SID")v=v.concat(c.NUMBER(y));else if(Q==="offset")v=v.concat(c.NUMBER32(y));else if(Q==="number")v=v.concat(c.NUMBER(y));else if(Q==="real")v=v.concat(c.REAL(y));else throw new Error("Unknown operand type "+Q);return v},c.OP=c.BYTE,u.OP=u.BYTE;var b=typeof WeakMap=="function"&&new WeakMap;c.CHARSTRING=function(y){if(b){var Q=b.get(y);if(Q!==void 0)return Q}for(var v=[],I=y.length,F=0;F<I;F+=1){var k=y[F];v=v.concat(c[k.type](k.value))}return b&&b.set(y,v),v},u.CHARSTRING=function(y){return c.CHARSTRING(y).length},c.OBJECT=function(y){var Q=c[y.type];return e.argument(Q!==void 0,"No encoding function for type "+y.type),Q(y.value)},u.OBJECT=function(y){var Q=u[y.type];return e.argument(Q!==void 0,"No sizeOf function for type "+y.type),Q(y.value)},c.TABLE=function(y){for(var Q=[],v=y.fields.length,I=0;I<v;I+=1){var F=y.fields[I],k=c[F.type];e.argument(k!==void 0,"No encoding function for field type "+F.type);var _=y[F.name];_===void 0&&(_=F.value);var M=k(_);Q=Q.concat(M)}return Q},u.TABLE=function(y){for(var Q=0,v=y.fields.length,I=0;I<v;I+=1){var F=y.fields[I],k=u[F.type];e.argument(k!==void 0,"No sizeOf function for field type "+F.type);var _=y[F.name];_===void 0&&(_=F.value),Q+=k(_)}return Q},c.LITERAL=function(y){return y},u.LITERAL=function(y){return y.length},r.decode=A,r.encode=c,r.sizeOf=u}),tr=Ge(r=>{"use strict";var e=ur(),i=Dl().encode,a=Dl().sizeOf;function A(c,u,f){var p;for(p=0;p<u.length;p+=1){var g=u[p];this[g.name]=g.value}if(this.tableName=c,this.fields=u,f){var m=Object.keys(f);for(p=0;p<m.length;p+=1){var E=m[p],b=f[E];this[E]!==void 0&&(this[E]=b)}}}A.prototype.sizeOf=function(){for(var c=0,u=0;u<this.fields.length;u+=1){var f=this.fields[u],p=this[f.name];if(p===void 0&&(p=f.value),typeof p.sizeOf=="function")c+=p.sizeOf();else{var g=a[f.type];e.assert(typeof g=="function","Could not find sizeOf function for field"+f.name),c+=g(p)}}return c},A.prototype.encode=function(){return i.TABLE(this)},r.Table=A}),Tt=Ge(r=>{"use strict";r.getByte=function(a,A){return a.getUint8(A)},r.getCard8=r.getByte,r.getUShort=function(a,A){return a.getUint16(A,!1)},r.getCard16=r.getUShort,r.getShort=function(a,A){return a.getInt16(A,!1)},r.getULong=function(a,A){return a.getUint32(A,!1)},r.getFixed=function(a,A){var c=a.getInt16(A,!1),u=a.getUint16(A+2,!1);return c+u/65535},r.getTag=function(a,A){for(var c="",u=A;u<A+4;u+=1)c+=String.fromCharCode(a.getInt8(u));return c},r.getOffset=function(a,A,c){for(var u=0,f=0;f<c;f+=1)u<<=8,u+=a.getUint8(A+f);return u},r.getBytes=function(a,A,c){for(var u=[],f=A;f<c;f+=1)u.push(a.getUint8(f));return u},r.bytesToString=function(a){for(var A="",c=0;c<a.length;c+=1)A+=String.fromCharCode(a[c]);return A};var e={byte:1,uShort:2,short:2,uLong:4,fixed:4,longDateTime:8,tag:4};function i(a,A){this.data=a,this.offset=A,this.relativeOffset=0}i.prototype.parseByte=function(){var a=this.data.getUint8(this.offset+this.relativeOffset);return this.relativeOffset+=1,a},i.prototype.parseChar=function(){var a=this.data.getInt8(this.offset+this.relativeOffset);return this.relativeOffset+=1,a},i.prototype.parseCard8=i.prototype.parseByte,i.prototype.parseUShort=function(){var a=this.data.getUint16(this.offset+this.relativeOffset);return this.relativeOffset+=2,a},i.prototype.parseCard16=i.prototype.parseUShort,i.prototype.parseSID=i.prototype.parseUShort,i.prototype.parseOffset16=i.prototype.parseUShort,i.prototype.parseShort=function(){var a=this.data.getInt16(this.offset+this.relativeOffset);return this.relativeOffset+=2,a},i.prototype.parseF2Dot14=function(){var a=this.data.getInt16(this.offset+this.relativeOffset)/16384;return this.relativeOffset+=2,a},i.prototype.parseULong=function(){var a=r.getULong(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,a},i.prototype.parseFixed=function(){var a=r.getFixed(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,a},i.prototype.parseOffset16List=i.prototype.parseUShortList=function(a){for(var A=new Array(a),c=this.data,u=this.offset+this.relativeOffset,f=0;f<a;f++)A[f]=r.getUShort(c,u),u+=2;return this.relativeOffset+=a*2,A},i.prototype.parseString=function(a){var A=this.data,c=this.offset+this.relativeOffset,u="";this.relativeOffset+=a;for(var f=0;f<a;f++)u+=String.fromCharCode(A.getUint8(c+f));return u},i.prototype.parseTag=function(){return this.parseString(4)},i.prototype.parseLongDateTime=function(){var a=r.getULong(this.data,this.offset+this.relativeOffset+4);return this.relativeOffset+=8,a},i.prototype.parseFixed=function(){var a=r.getULong(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,a/65536},i.prototype.parseVersion=function(){var a=r.getUShort(this.data,this.offset+this.relativeOffset),A=r.getUShort(this.data,this.offset+this.relativeOffset+2);return this.relativeOffset+=4,a+A/4096/10},i.prototype.skip=function(a,A){A===void 0&&(A=1),this.relativeOffset+=e[a]*A},r.Parser=i}),Jm=Ge(r=>{"use strict";var e=ur(),i=Tt(),a=tr();function A(p,g){var m,E={};E.version=i.getUShort(p,g),e.argument(E.version===0,"cmap table version should be 0."),E.numTables=i.getUShort(p,g+2);var b=-1;for(m=0;m<E.numTables;m+=1){var y=i.getUShort(p,g+4+m*8),Q=i.getUShort(p,g+4+m*8+2);if(y===3&&(Q===1||Q===0)){b=i.getULong(p,g+4+m*8+4);break}}if(b===-1)return null;var v=new i.Parser(p,g+b);E.format=v.parseUShort(),e.argument(E.format===4,"Only format 4 cmap tables are supported."),E.length=v.parseUShort(),E.language=v.parseUShort();var I;E.segCount=I=v.parseUShort()>>1,v.skip("uShort",3),E.glyphIndexMap={};var F=new i.Parser(p,g+b+14),k=new i.Parser(p,g+b+16+I*2),_=new i.Parser(p,g+b+16+I*4),M=new i.Parser(p,g+b+16+I*6),O=g+b+16+I*8;for(m=0;m<I-1;m+=1)for(var P,R=F.parseUShort(),re=k.parseUShort(),q=_.parseShort(),le=M.parseUShort(),Ae=re;Ae<=R;Ae+=1)le!==0?(O=M.offset+M.relativeOffset-2,O+=le,O+=(Ae-re)*2,P=i.getUShort(p,O),P!==0&&(P=P+q&65535)):P=Ae+q&65535,E.glyphIndexMap[Ae]=P;return E}function c(p,g,m){p.segments.push({end:g,start:g,delta:-(g-m),offset:0})}function u(p){p.segments.push({end:65535,start:65535,delta:1,offset:0})}function f(p){var g,m=new a.Table("cmap",[{name:"version",type:"USHORT",value:0},{name:"numTables",type:"USHORT",value:1},{name:"platformID",type:"USHORT",value:3},{name:"encodingID",type:"USHORT",value:1},{name:"offset",type:"ULONG",value:12},{name:"format",type:"USHORT",value:4},{name:"length",type:"USHORT",value:0},{name:"language",type:"USHORT",value:0},{name:"segCountX2",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);for(m.segments=[],g=0;g<p.length;g+=1){for(var E=p.get(g),b=0;b<E.unicodes.length;b+=1)c(m,E.unicodes[b],g);m.segments=m.segments.sort(function(M,O){return M.start-O.start})}u(m);var y;y=m.segments.length,m.segCountX2=y*2,m.searchRange=Math.pow(2,Math.floor(Math.log(y)/Math.log(2)))*2,m.entrySelector=Math.log(m.searchRange/2)/Math.log(2),m.rangeShift=m.segCountX2-m.searchRange;var Q=[],v=[],I=[],F=[],k=[];for(g=0;g<y;g+=1){var _=m.segments[g];Q=Q.concat({name:"end_"+g,type:"USHORT",value:_.end}),v=v.concat({name:"start_"+g,type:"USHORT",value:_.start}),I=I.concat({name:"idDelta_"+g,type:"SHORT",value:_.delta}),F=F.concat({name:"idRangeOffset_"+g,type:"USHORT",value:_.offset}),_.glyphId!==void 0&&(k=k.concat({name:"glyph_"+g,type:"USHORT",value:_.glyphId}))}return m.fields=m.fields.concat(Q),m.fields.push({name:"reservedPad",type:"USHORT",value:0}),m.fields=m.fields.concat(v),m.fields=m.fields.concat(I),m.fields=m.fields.concat(F),m.fields=m.fields.concat(k),m.length=14+Q.length*2+2+v.length*2+I.length*2+F.length*2+k.length*2,m}r.parse=A,r.make=f}),EF=Ge(r=>{"use strict";function e(i,a,A,c,u){i.beginPath(),i.moveTo(a,A),i.lineTo(c,u),i.stroke()}r.line=e}),Vm=Ge(r=>{"use strict";var e=ur(),i=EF(),a=$n();function A(u,f){var p=f||{commands:[]};return{configurable:!0,get:function(){return typeof p=="function"&&(p=p()),p},set:function(g){p=g}}}function c(u){this.bindConstructorValues(u)}c.prototype.bindConstructorValues=function(u){this.index=u.index||0,this.name=u.name||null,this.unicode=u.unicode||void 0,this.unicodes=u.unicodes||u.unicode!==void 0?[u.unicode]:[],u.xMin&&(this.xMin=u.xMin),u.yMin&&(this.yMin=u.yMin),u.xMax&&(this.xMax=u.xMax),u.yMax&&(this.yMax=u.yMax),u.advanceWidth&&(this.advanceWidth=u.advanceWidth),Object.defineProperty(this,"path",A(this,u.path))},c.prototype.addUnicode=function(u){this.unicodes.length===0&&(this.unicode=u),this.unicodes.push(u)},c.prototype.getPath=function(u,f,p){u=u!==void 0?u:0,f=f!==void 0?f:0,p=p!==void 0?p:72;for(var g=1/this.path.unitsPerEm*p,m=new a.Path,E=this.path.commands,b=0;b<E.length;b+=1){var y=E[b];y.type==="M"?m.moveTo(u+y.x*g,f+-y.y*g):y.type==="L"?m.lineTo(u+y.x*g,f+-y.y*g):y.type==="Q"?m.quadraticCurveTo(u+y.x1*g,f+-y.y1*g,u+y.x*g,f+-y.y*g):y.type==="C"?m.curveTo(u+y.x1*g,f+-y.y1*g,u+y.x2*g,f+-y.y2*g,u+y.x*g,f+-y.y*g):y.type==="Z"&&m.closePath()}return m},c.prototype.getContours=function(){if(this.points===void 0)return[];for(var u=[],f=[],p=0;p<this.points.length;p+=1){var g=this.points[p];f.push(g),g.lastPointOfContour&&(u.push(f),f=[])}return e.argument(f.length===0,"There are still points left in the current contour."),u},c.prototype.getMetrics=function(){for(var u=this.path.commands,f=[],p=[],g=0;g<u.length;g+=1){var m=u[g];m.type!=="Z"&&(f.push(m.x),p.push(m.y)),(m.type==="Q"||m.type==="C")&&(f.push(m.x1),p.push(m.y1)),m.type==="C"&&(f.push(m.x2),p.push(m.y2))}var E={xMin:Math.min.apply(null,f),yMin:Math.min.apply(null,p),xMax:Math.max.apply(null,f),yMax:Math.max.apply(null,p),leftSideBearing:0};return isFinite(E.xMin)||(E.xMin=0),isFinite(E.xMax)||(E.xMax=this.advanceWidth),isFinite(E.yMin)||(E.yMin=0),isFinite(E.yMax)||(E.yMax=0),E.rightSideBearing=this.advanceWidth-E.leftSideBearing-(E.xMax-E.xMin),E},c.prototype.draw=function(u,f,p,g){this.getPath(f,p,g).draw(u)},c.prototype.drawPoints=function(u,f,p,g){function m(F,k,_,M){var O=Math.PI*2;u.beginPath();for(var P=0;P<F.length;P+=1)u.moveTo(k+F[P].x*M,_+F[P].y*M),u.arc(k+F[P].x*M,_+F[P].y*M,2,0,O,!1);u.closePath(),u.fill()}f=f!==void 0?f:0,p=p!==void 0?p:0,g=g!==void 0?g:24;for(var E=1/this.path.unitsPerEm*g,b=[],y=[],Q=this.path,v=0;v<Q.commands.length;v+=1){var I=Q.commands[v];I.x!==void 0&&b.push({x:I.x,y:-I.y}),I.x1!==void 0&&y.push({x:I.x1,y:-I.y1}),I.x2!==void 0&&y.push({x:I.x2,y:-I.y2})}u.fillStyle="blue",m(b,f,p,E),u.fillStyle="red",m(y,f,p,E)},c.prototype.drawMetrics=function(u,f,p,g){var m;f=f!==void 0?f:0,p=p!==void 0?p:0,g=g!==void 0?g:24,m=1/this.path.unitsPerEm*g,u.lineWidth=1,u.strokeStyle="black",i.line(u,f,-1e4,f,1e4),i.line(u,-1e4,p,1e4,p);var E=this.xMin||0,b=this.yMin||0,y=this.xMax||0,Q=this.yMax||0,v=this.advanceWidth||0;u.strokeStyle="blue",i.line(u,f+E*m,-1e4,f+E*m,1e4),i.line(u,f+y*m,-1e4,f+y*m,1e4),i.line(u,-1e4,p+-b*m,1e4,p+-b*m),i.line(u,-1e4,p+-Q*m,1e4,p+-Q*m),u.strokeStyle="green",i.line(u,f+v*m,-1e4,f+v*m,1e4)},r.Glyph=c}),Nl=Ge(r=>{"use strict";var e=Vm();function i(u,f){if(this.font=u,this.glyphs={},Array.isArray(f))for(var p=0;p<f.length;p++)this.glyphs[p]=f[p];this.length=f&&f.length||0}i.prototype.get=function(u){return typeof this.glyphs[u]=="function"&&(this.glyphs[u]=this.glyphs[u]()),this.glyphs[u]},i.prototype.push=function(u,f){this.glyphs[u]=f,this.length++};function a(u,f){return new e.Glyph({index:f,font:u})}function A(u,f,p,g,m,E){return function(){var b=new e.Glyph({index:f,font:u});return b.path=function(){p(b,g,m);var y=E(u.glyphs,b);return y.unitsPerEm=u.unitsPerEm,y},b}}function c(u,f,p,g){return function(){var m=new e.Glyph({index:f,font:u});return m.path=function(){var E=p(u,m,g);return E.unitsPerEm=u.unitsPerEm,E},m}}r.GlyphSet=i,r.glyphLoader=a,r.ttfGlyphLoader=A,r.cffGlyphLoader=c}),jm=Ge(r=>{"use strict";var e=ba(),i=Nl(),a=Tt(),A=$n(),c=tr();function u(W,N){if(W===N)return!0;if(Array.isArray(W)&&Array.isArray(N)){if(W.length!==N.length)return!1;for(var J=0;J<W.length;J+=1)if(!u(W[J],N[J]))return!1;return!0}else return!1}function f(W,N,J){var z=[],j=[],K=a.getCard16(W,N),G,X,D;if(K!==0){var pe=a.getByte(W,N+2);X=N+(K+1)*pe+2;var ce=N+3;for(G=0;G<K+1;G+=1)z.push(a.getOffset(W,ce,pe)),ce+=pe;D=X+z[K]}else D=N+2;for(G=0;G<z.length-1;G+=1){var Qe=a.getBytes(W,X+z[G],X+z[G+1]);J&&(Qe=J(Qe)),j.push(Qe)}return{objects:j,startOffset:N,endOffset:D}}function p(W){for(var N="",J=15,z=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"];;){var j=W.parseByte(),K=j>>4,G=j&15;if(K===J||(N+=z[K],G===J))break;N+=z[G]}return parseFloat(N)}function g(W,N){var J,z,j,K;if(N===28)return J=W.parseByte(),z=W.parseByte(),J<<8|z;if(N===29)return J=W.parseByte(),z=W.parseByte(),j=W.parseByte(),K=W.parseByte(),J<<24|z<<16|j<<8|K;if(N===30)return p(W);if(N>=32&&N<=246)return N-139;if(N>=247&&N<=250)return J=W.parseByte(),(N-247)*256+J+108;if(N>=251&&N<=254)return J=W.parseByte(),-(N-251)*256-J-108;throw new Error("Invalid b0 "+N)}function m(W){for(var N={},J=0;J<W.length;J+=1){var z=W[J][0],j=W[J][1],K;if(j.length===1?K=j[0]:K=j,N.hasOwnProperty(z))throw new Error("Object "+N+" already has key "+z);N[z]=K}return N}function E(W,N,J){N=N!==void 0?N:0;var z=new a.Parser(W,N),j=[],K=[];for(J=J!==void 0?J:W.length;z.relativeOffset<J;){var G=z.parseByte();G<=21?(G===12&&(G=1200+z.parseByte()),j.push([G,K]),K=[]):K.push(g(z,G))}return m(j)}function b(W,N){return N<=390?N=e.cffStandardStrings[N]:N=W[N-391],N}function y(W,N,J){for(var z={},j=0;j<N.length;j+=1){var K=N[j],G=W[K.op];G===void 0&&(G=K.value!==void 0?K.value:null),K.type==="SID"&&(G=b(J,G)),z[K.name]=G}return z}function Q(W,N){var J={};return J.formatMajor=a.getCard8(W,N),J.formatMinor=a.getCard8(W,N+1),J.size=a.getCard8(W,N+2),J.offsetSize=a.getCard8(W,N+3),J.startOffset=N,J.endOffset=N+4,J}var v=[{name:"version",op:0,type:"SID"},{name:"notice",op:1,type:"SID"},{name:"copyright",op:1200,type:"SID"},{name:"fullName",op:2,type:"SID"},{name:"familyName",op:3,type:"SID"},{name:"weight",op:4,type:"SID"},{name:"isFixedPitch",op:1201,type:"number",value:0},{name:"italicAngle",op:1202,type:"number",value:0},{name:"underlinePosition",op:1203,type:"number",value:-100},{name:"underlineThickness",op:1204,type:"number",value:50},{name:"paintType",op:1205,type:"number",value:0},{name:"charstringType",op:1206,type:"number",value:2},{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"uniqueId",op:13,type:"number"},{name:"fontBBox",op:5,type:["number","number","number","number"],value:[0,0,0,0]},{name:"strokeWidth",op:1208,type:"number",value:0},{name:"xuid",op:14,type:[],value:null},{name:"charset",op:15,type:"offset",value:0},{name:"encoding",op:16,type:"offset",value:0},{name:"charStrings",op:17,type:"offset",value:0},{name:"private",op:18,type:["number","offset"],value:[0,0]}],I=[{name:"subrs",op:19,type:"offset",value:0},{name:"defaultWidthX",op:20,type:"number",value:0},{name:"nominalWidthX",op:21,type:"number",value:0}];function F(W,N){var J=E(W,0,W.byteLength);return y(J,v,N)}function k(W,N,J,z){var j=E(W,N,J);return y(j,I,z)}function _(W,N,J,z){var j,K,G,X=new a.Parser(W,N);J-=1;var D=[".notdef"],pe=X.parseCard8();if(pe===0)for(j=0;j<J;j+=1)K=X.parseSID(),D.push(b(z,K));else if(pe===1)for(;D.length<=J;)for(K=X.parseSID(),G=X.parseCard8(),j=0;j<=G;j+=1)D.push(b(z,K)),K+=1;else if(pe===2)for(;D.length<=J;)for(K=X.parseSID(),G=X.parseCard16(),j=0;j<=G;j+=1)D.push(b(z,K)),K+=1;else throw new Error("Unknown charset format "+pe);return D}function M(W,N,J){var z,j,K={},G=new a.Parser(W,N),X=G.parseCard8();if(X===0){var D=G.parseCard8();for(z=0;z<D;z+=1)j=G.parseCard8(),K[j]=z}else if(X===1){var pe=G.parseCard8();for(j=1,z=0;z<pe;z+=1)for(var ce=G.parseCard8(),Qe=G.parseCard8(),Z=ce;Z<=ce+Qe;Z+=1)K[Z]=j,j+=1}else throw new Error("Unknown encoding format "+X);return new e.CffEncoding(K,J)}function O(W,N,J){var z,j,K,G,X=new A.Path,D=[],pe=0,ce=!1,Qe=W.defaultWidthX,Z=!1,H=0,ne=0;function Oe(Ze,Xe){Z&&X.closePath(),X.moveTo(Ze,Xe),Z=!0}function De(){var Ze;Ze=D.length%2!==0,Ze&&!ce&&(Qe=D.shift()+W.nominalWidthX),pe+=D.length>>1,D.length=0,ce=!0}function it(Ze){for(var Xe,wt,te,ve,be,ue,Me,He,Le,Ne,de,ge,oe=0;oe<Ze.length;){var Ye=Ze[oe];switch(oe+=1,Ye){case 1:De();break;case 3:De();break;case 4:D.length>1&&!ce&&(Qe=D.shift()+W.nominalWidthX,ce=!0),ne+=D.pop(),Oe(H,ne);break;case 5:for(;D.length>0;)H+=D.shift(),ne+=D.shift(),X.lineTo(H,ne);break;case 6:for(;D.length>0&&(H+=D.shift(),X.lineTo(H,ne),D.length!==0);)ne+=D.shift(),X.lineTo(H,ne);break;case 7:for(;D.length>0&&(ne+=D.shift(),X.lineTo(H,ne),D.length!==0);)H+=D.shift(),X.lineTo(H,ne);break;case 8:for(;D.length>0;)z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+D.shift(),X.curveTo(z,j,K,G,H,ne);break;case 10:be=D.pop()+W.subrsBias,ue=W.subrs[be],ue&&it(ue);break;case 11:return;case 12:switch(Ye=Ze[oe],oe+=1,Ye){case 35:z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),Me=K+D.shift(),He=G+D.shift(),Le=Me+D.shift(),Ne=He+D.shift(),de=Le+D.shift(),ge=Ne+D.shift(),H=de+D.shift(),ne=ge+D.shift(),D.shift(),X.curveTo(z,j,K,G,Me,He),X.curveTo(Le,Ne,de,ge,H,ne);break;case 34:z=H+D.shift(),j=ne,K=z+D.shift(),G=j+D.shift(),Me=K+D.shift(),He=G,Le=Me+D.shift(),Ne=G,de=Le+D.shift(),ge=ne,H=de+D.shift(),X.curveTo(z,j,K,G,Me,He),X.curveTo(Le,Ne,de,ge,H,ne);break;case 36:z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),Me=K+D.shift(),He=G,Le=Me+D.shift(),Ne=G,de=Le+D.shift(),ge=Ne+D.shift(),H=de+D.shift(),X.curveTo(z,j,K,G,Me,He),X.curveTo(Le,Ne,de,ge,H,ne);break;case 37:z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),Me=K+D.shift(),He=G+D.shift(),Le=Me+D.shift(),Ne=He+D.shift(),de=Le+D.shift(),ge=Ne+D.shift(),Math.abs(de-H)>Math.abs(ge-ne)?H=de+D.shift():ne=ge+D.shift(),X.curveTo(z,j,K,G,Me,He),X.curveTo(Le,Ne,de,ge,H,ne);break;default:console.log("Glyph "+N.index+": unknown operator 1200"+Ye),D.length=0}break;case 14:D.length>0&&!ce&&(Qe=D.shift()+W.nominalWidthX,ce=!0),Z&&(X.closePath(),Z=!1);break;case 18:De();break;case 19:case 20:De(),oe+=pe+7>>3;break;case 21:D.length>2&&!ce&&(Qe=D.shift()+W.nominalWidthX,ce=!0),ne+=D.pop(),H+=D.pop(),Oe(H,ne);break;case 22:D.length>1&&!ce&&(Qe=D.shift()+W.nominalWidthX,ce=!0),H+=D.pop(),Oe(H,ne);break;case 23:De();break;case 24:for(;D.length>2;)z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+D.shift(),X.curveTo(z,j,K,G,H,ne);H+=D.shift(),ne+=D.shift(),X.lineTo(H,ne);break;case 25:for(;D.length>6;)H+=D.shift(),ne+=D.shift(),X.lineTo(H,ne);z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+D.shift(),X.curveTo(z,j,K,G,H,ne);break;case 26:for(D.length%2&&(H+=D.shift());D.length>0;)z=H,j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K,ne=G+D.shift(),X.curveTo(z,j,K,G,H,ne);break;case 27:for(D.length%2&&(ne+=D.shift());D.length>0;)z=H+D.shift(),j=ne,K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G,X.curveTo(z,j,K,G,H,ne);break;case 28:Xe=Ze[oe],wt=Ze[oe+1],D.push((Xe<<24|wt<<16)>>16),oe+=2;break;case 29:be=D.pop()+W.gsubrsBias,ue=W.gsubrs[be],ue&&it(ue);break;case 30:for(;D.length>0&&(z=H,j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+(D.length===1?D.shift():0),X.curveTo(z,j,K,G,H,ne),D.length!==0);)z=H+D.shift(),j=ne,K=z+D.shift(),G=j+D.shift(),ne=G+D.shift(),H=K+(D.length===1?D.shift():0),X.curveTo(z,j,K,G,H,ne);break;case 31:for(;D.length>0&&(z=H+D.shift(),j=ne,K=z+D.shift(),G=j+D.shift(),ne=G+D.shift(),H=K+(D.length===1?D.shift():0),X.curveTo(z,j,K,G,H,ne),D.length!==0);)z=H,j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+(D.length===1?D.shift():0),X.curveTo(z,j,K,G,H,ne);break;default:Ye<32?console.log("Glyph "+N.index+": unknown operator "+Ye):Ye<247?D.push(Ye-139):Ye<251?(Xe=Ze[oe],oe+=1,D.push((Ye-247)*256+Xe+108)):Ye<255?(Xe=Ze[oe],oe+=1,D.push(-(Ye-251)*256-Xe-108)):(Xe=Ze[oe],wt=Ze[oe+1],te=Ze[oe+2],ve=Ze[oe+3],oe+=4,D.push((Xe<<24|wt<<16|te<<8|ve)/65536))}}}return it(J),N.advanceWidth=Qe,X}function P(W){var N;return W.length<1240?N=107:W.length<33900?N=1131:N=32768,N}function R(W,N,J){J.tables.cff={};var z=Q(W,N),j=f(W,z.endOffset,a.bytesToString),K=f(W,j.endOffset),G=f(W,K.endOffset,a.bytesToString),X=f(W,G.endOffset);J.gsubrs=X.objects,J.gsubrsBias=P(J.gsubrs);var D=new DataView(new Uint8Array(K.objects[0]).buffer),pe=F(D,G.objects);J.tables.cff.topDict=pe;var ce=N+pe.private[1],Qe=k(W,ce,pe.private[0],G.objects);if(J.defaultWidthX=Qe.defaultWidthX,J.nominalWidthX=Qe.nominalWidthX,Qe.subrs!==0){var Z=ce+Qe.subrs,H=f(W,Z);J.subrs=H.objects,J.subrsBias=P(J.subrs)}else J.subrs=[],J.subrsBias=0;var ne=f(W,N+pe.charStrings);J.nGlyphs=ne.objects.length;var Oe=_(W,N+pe.charset,J.nGlyphs,G.objects);pe.encoding===0?J.cffEncoding=new e.CffEncoding(e.cffStandardEncoding,Oe):pe.encoding===1?J.cffEncoding=new e.CffEncoding(e.cffExpertEncoding,Oe):J.cffEncoding=M(W,N+pe.encoding,Oe),J.encoding=J.encoding||J.cffEncoding,J.glyphs=new i.GlyphSet(J);for(var De=0;De<J.nGlyphs;De+=1){var it=ne.objects[De];J.glyphs.push(De,i.cffGlyphLoader(J,De,O,it))}}function re(W,N){var J,z=e.cffStandardStrings.indexOf(W);return z>=0&&(J=z),z=N.indexOf(W),z>=0?J=z+e.cffStandardStrings.length:(J=e.cffStandardStrings.length+N.length,N.push(W)),J}function q(){return new c.Table("Header",[{name:"major",type:"Card8",value:1},{name:"minor",type:"Card8",value:0},{name:"hdrSize",type:"Card8",value:4},{name:"major",type:"Card8",value:1}])}function le(W){var N=new c.Table("Name INDEX",[{name:"names",type:"INDEX",value:[]}]);N.names=[];for(var J=0;J<W.length;J+=1)N.names.push({name:"name_"+J,type:"NAME",value:W[J]});return N}function Ae(W,N,J){for(var z={},j=0;j<W.length;j+=1){var K=W[j],G=N[K.name];G!==void 0&&!u(G,K.value)&&(K.type==="SID"&&(G=re(G,J)),z[K.op]={name:K.name,type:K.type,value:G})}return z}function ie(W,N){var J=new c.Table("Top DICT",[{name:"dict",type:"DICT",value:{}}]);return J.dict=Ae(v,W,N),J}function se(W){var N=new c.Table("Top DICT INDEX",[{name:"topDicts",type:"INDEX",value:[]}]);return N.topDicts=[{name:"topDict_0",type:"TABLE",value:W}],N}function ye(W){var N=new c.Table("String INDEX",[{name:"strings",type:"INDEX",value:[]}]);N.strings=[];for(var J=0;J<W.length;J+=1)N.strings.push({name:"string_"+J,type:"STRING",value:W[J]});return N}function fe(){return new c.Table("Global Subr INDEX",[{name:"subrs",type:"INDEX",value:[]}])}function Pe(W,N){for(var J=new c.Table("Charsets",[{name:"format",type:"Card8",value:0}]),z=0;z<W.length;z+=1){var j=W[z],K=re(j,N);J.fields.push({name:"glyph_"+z,type:"SID",value:K})}return J}function Be(W){var N=[],J=W.path;N.push({name:"width",type:"NUMBER",value:W.advanceWidth});for(var z=0,j=0,K=0;K<J.commands.length;K+=1){var G,X,D=J.commands[K];if(D.type==="Q"){var pe=.3333333333333333,ce=2/3;D={type:"C",x:D.x,y:D.y,x1:pe*z+ce*D.x1,y1:pe*j+ce*D.y1,x2:pe*D.x+ce*D.x1,y2:pe*D.y+ce*D.y1}}if(D.type==="M")G=Math.round(D.x-z),X=Math.round(D.y-j),N.push({name:"dx",type:"NUMBER",value:G}),N.push({name:"dy",type:"NUMBER",value:X}),N.push({name:"rmoveto",type:"OP",value:21}),z=Math.round(D.x),j=Math.round(D.y);else if(D.type==="L")G=Math.round(D.x-z),X=Math.round(D.y-j),N.push({name:"dx",type:"NUMBER",value:G}),N.push({name:"dy",type:"NUMBER",value:X}),N.push({name:"rlineto",type:"OP",value:5}),z=Math.round(D.x),j=Math.round(D.y);else if(D.type==="C"){var Qe=Math.round(D.x1-z),Z=Math.round(D.y1-j),H=Math.round(D.x2-D.x1),ne=Math.round(D.y2-D.y1);G=Math.round(D.x-D.x2),X=Math.round(D.y-D.y2),N.push({name:"dx1",type:"NUMBER",value:Qe}),N.push({name:"dy1",type:"NUMBER",value:Z}),N.push({name:"dx2",type:"NUMBER",value:H}),N.push({name:"dy2",type:"NUMBER",value:ne}),N.push({name:"dx",type:"NUMBER",value:G}),N.push({name:"dy",type:"NUMBER",value:X}),N.push({name:"rrcurveto",type:"OP",value:8}),z=Math.round(D.x),j=Math.round(D.y)}}return N.push({name:"endchar",type:"OP",value:14}),N}function Ee(W){for(var N=new c.Table("CharStrings INDEX",[{name:"charStrings",type:"INDEX",value:[]}]),J=0;J<W.length;J+=1){var z=W.get(J),j=Be(z);N.charStrings.push({name:z.name,type:"CHARSTRING",value:j})}return N}function me(W,N){var J=new c.Table("Private DICT",[{name:"dict",type:"DICT",value:{}}]);return J.dict=Ae(I,W,N),J}function ke(W){var N=new c.Table("Private DICT INDEX",[{name:"privateDicts",type:"INDEX",value:[]}]);return N.privateDicts=[{name:"privateDict_0",type:"TABLE",value:W}],N}function Fe(W,N){for(var J=new c.Table("CFF ",[{name:"header",type:"TABLE"},{name:"nameIndex",type:"TABLE"},{name:"topDictIndex",type:"TABLE"},{name:"stringIndex",type:"TABLE"},{name:"globalSubrIndex",type:"TABLE"},{name:"charsets",type:"TABLE"},{name:"charStringsIndex",type:"TABLE"},{name:"privateDictIndex",type:"TABLE"}]),z=1/N.unitsPerEm,j={version:N.version,fullName:N.fullName,familyName:N.familyName,weight:N.weightName,fontMatrix:[z,0,0,z,0,0],charset:999,encoding:0,charStrings:999,private:[0,999]},K={},G=[],X,D=1;D<W.length;D+=1)X=W.get(D),G.push(X.name);var pe=[];J.header=q(),J.nameIndex=le([N.postScriptName]);var ce=ie(j,pe);J.topDictIndex=se(ce),J.globalSubrIndex=fe(),J.charsets=Pe(G,pe),J.charStringsIndex=Ee(W);var Qe=me(K,pe);J.privateDictIndex=ke(Qe),J.stringIndex=ye(pe);var Z=J.header.sizeOf()+J.nameIndex.sizeOf()+J.topDictIndex.sizeOf()+J.stringIndex.sizeOf()+J.globalSubrIndex.sizeOf();return j.charset=Z,j.encoding=0,j.charStrings=j.charset+J.charsets.sizeOf(),j.private[1]=j.charStrings+J.charStringsIndex.sizeOf(),ce=ie(j,pe),J.topDictIndex=se(ce),J}r.parse=R,r.make=Fe}),_m=Ge(r=>{"use strict";var e=ur(),i=Tt(),a=tr();function A(u,f){var p={},g=new i.Parser(u,f);return p.version=g.parseVersion(),p.fontRevision=Math.round(g.parseFixed()*1e3)/1e3,p.checkSumAdjustment=g.parseULong(),p.magicNumber=g.parseULong(),e.argument(p.magicNumber===1594834165,"Font header has wrong magic number."),p.flags=g.parseUShort(),p.unitsPerEm=g.parseUShort(),p.created=g.parseLongDateTime(),p.modified=g.parseLongDateTime(),p.xMin=g.parseShort(),p.yMin=g.parseShort(),p.xMax=g.parseShort(),p.yMax=g.parseShort(),p.macStyle=g.parseUShort(),p.lowestRecPPEM=g.parseUShort(),p.fontDirectionHint=g.parseShort(),p.indexToLocFormat=g.parseShort(),p.glyphDataFormat=g.parseShort(),p}function c(u){return new a.Table("head",[{name:"version",type:"FIXED",value:65536},{name:"fontRevision",type:"FIXED",value:65536},{name:"checkSumAdjustment",type:"ULONG",value:0},{name:"magicNumber",type:"ULONG",value:1594834165},{name:"flags",type:"USHORT",value:0},{name:"unitsPerEm",type:"USHORT",value:1e3},{name:"created",type:"LONGDATETIME",value:0},{name:"modified",type:"LONGDATETIME",value:0},{name:"xMin",type:"SHORT",value:0},{name:"yMin",type:"SHORT",value:0},{name:"xMax",type:"SHORT",value:0},{name:"yMax",type:"SHORT",value:0},{name:"macStyle",type:"USHORT",value:0},{name:"lowestRecPPEM",type:"USHORT",value:0},{name:"fontDirectionHint",type:"SHORT",value:2},{name:"indexToLocFormat",type:"SHORT",value:0},{name:"glyphDataFormat",type:"SHORT",value:0}],u)}r.parse=A,r.make=c}),Zm=Ge(r=>{"use strict";var e=Tt(),i=tr();function a(c,u){var f={},p=new e.Parser(c,u);return f.version=p.parseVersion(),f.ascender=p.parseShort(),f.descender=p.parseShort(),f.lineGap=p.parseShort(),f.advanceWidthMax=p.parseUShort(),f.minLeftSideBearing=p.parseShort(),f.minRightSideBearing=p.parseShort(),f.xMaxExtent=p.parseShort(),f.caretSlopeRise=p.parseShort(),f.caretSlopeRun=p.parseShort(),f.caretOffset=p.parseShort(),p.relativeOffset+=8,f.metricDataFormat=p.parseShort(),f.numberOfHMetrics=p.parseUShort(),f}function A(c){return new i.Table("hhea",[{name:"version",type:"FIXED",value:65536},{name:"ascender",type:"FWORD",value:0},{name:"descender",type:"FWORD",value:0},{name:"lineGap",type:"FWORD",value:0},{name:"advanceWidthMax",type:"UFWORD",value:0},{name:"minLeftSideBearing",type:"FWORD",value:0},{name:"minRightSideBearing",type:"FWORD",value:0},{name:"xMaxExtent",type:"FWORD",value:0},{name:"caretSlopeRise",type:"SHORT",value:1},{name:"caretSlopeRun",type:"SHORT",value:0},{name:"caretOffset",type:"SHORT",value:0},{name:"reserved1",type:"SHORT",value:0},{name:"reserved2",type:"SHORT",value:0},{name:"reserved3",type:"SHORT",value:0},{name:"reserved4",type:"SHORT",value:0},{name:"metricDataFormat",type:"SHORT",value:0},{name:"numberOfHMetrics",type:"USHORT",value:0}],c)}r.parse=a,r.make=A}),Xm=Ge(r=>{"use strict";var e=Tt(),i=tr();function a(c,u,f,p,g){for(var m,E,b=new e.Parser(c,u),y=0;y<p;y+=1){y<f&&(m=b.parseUShort(),E=b.parseShort());var Q=g.get(y);Q.advanceWidth=m,Q.leftSideBearing=E}}function A(c){for(var u=new i.Table("hmtx",[]),f=0;f<c.length;f+=1){var p=c.get(f),g=p.advanceWidth||0,m=p.leftSideBearing||0;u.fields.push({name:"advanceWidth_"+f,type:"USHORT",value:g}),u.fields.push({name:"leftSideBearing_"+f,type:"SHORT",value:m})}return u}r.parse=a,r.make=A}),zm=Ge(r=>{"use strict";var e=ur(),i=Tt(),a=tr();function A(u){for(var f=new a.Table("ltag",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"numTags",type:"ULONG",value:u.length}]),p="",g=12+u.length*4,m=0;m<u.length;++m){var E=p.indexOf(u[m]);E<0&&(E=p.length,p+=u[m]),f.fields.push({name:"offset "+m,type:"USHORT",value:g+E}),f.fields.push({name:"length "+m,type:"USHORT",value:u[m].length})}return f.fields.push({name:"stringPool",type:"CHARARRAY",value:p}),f}function c(u,f){var p=new i.Parser(u,f),g=p.parseULong();e.argument(g===1,"Unsupported ltag table version."),p.skip("uLong",1);for(var m=p.parseULong(),E=[],b=0;b<m;b++){for(var y="",Q=f+p.parseUShort(),v=p.parseUShort(),I=Q;I<Q+v;++I)y+=String.fromCharCode(u.getInt8(I));E.push(y)}return E}r.make=A,r.parse=c}),qm=Ge(r=>{"use strict";var e=Tt(),i=tr();function a(c,u){var f={},p=new e.Parser(c,u);return f.version=p.parseVersion(),f.numGlyphs=p.parseUShort(),f.version===1&&(f.maxPoints=p.parseUShort(),f.maxContours=p.parseUShort(),f.maxCompositePoints=p.parseUShort(),f.maxCompositeContours=p.parseUShort(),f.maxZones=p.parseUShort(),f.maxTwilightPoints=p.parseUShort(),f.maxStorage=p.parseUShort(),f.maxFunctionDefs=p.parseUShort(),f.maxInstructionDefs=p.parseUShort(),f.maxStackElements=p.parseUShort(),f.maxSizeOfInstructions=p.parseUShort(),f.maxComponentElements=p.parseUShort(),f.maxComponentDepth=p.parseUShort()),f}function A(c){return new i.Table("maxp",[{name:"version",type:"FIXED",value:20480},{name:"numGlyphs",type:"USHORT",value:c}])}r.parse=a,r.make=A}),Km=Ge(r=>{"use strict";var e=Dl(),i=e.decode,a=e.encode,A=Tt(),c=tr(),u=["copyright","fontFamily","fontSubfamily","uniqueID","fullName","version","postScriptName","trademark","manufacturer","designer","description","manufacturerURL","designerURL","licence","licenceURL","reserved","preferredFamily","preferredSubfamily","compatibleFullName","sampleText","postScriptFindFontName","wwsFamily","wwsSubfamily"],f={0:"en",1:"fr",2:"de",3:"it",4:"nl",5:"sv",6:"es",7:"da",8:"pt",9:"no",10:"he",11:"ja",12:"ar",13:"fi",14:"el",15:"is",16:"mt",17:"tr",18:"hr",19:"zh-Hant",20:"ur",21:"hi",22:"th",23:"ko",24:"lt",25:"pl",26:"hu",27:"es",28:"lv",29:"se",30:"fo",31:"fa",32:"ru",33:"zh",34:"nl-BE",35:"ga",36:"sq",37:"ro",38:"cz",39:"sk",40:"si",41:"yi",42:"sr",43:"mk",44:"bg",45:"uk",46:"be",47:"uz",48:"kk",49:"az-Cyrl",50:"az-Arab",51:"hy",52:"ka",53:"mo",54:"ky",55:"tg",56:"tk",57:"mn-CN",58:"mn",59:"ps",60:"ks",61:"ku",62:"sd",63:"bo",64:"ne",65:"sa",66:"mr",67:"bn",68:"as",69:"gu",70:"pa",71:"or",72:"ml",73:"kn",74:"ta",75:"te",76:"si",77:"my",78:"km",79:"lo",80:"vi",81:"id",82:"tl",83:"ms",84:"ms-Arab",85:"am",86:"ti",87:"om",88:"so",89:"sw",90:"rw",91:"rn",92:"ny",93:"mg",94:"eo",128:"cy",129:"eu",130:"ca",131:"la",132:"qu",133:"gn",134:"ay",135:"tt",136:"ug",137:"dz",138:"jv",139:"su",140:"gl",141:"af",142:"br",143:"iu",144:"gd",145:"gv",146:"ga",147:"to",148:"el-polyton",149:"kl",150:"az",151:"nn"},p={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:5,11:1,12:4,13:0,14:6,15:0,16:0,17:0,18:0,19:2,20:4,21:9,22:21,23:3,24:29,25:29,26:29,27:29,28:29,29:0,30:0,31:4,32:7,33:25,34:0,35:0,36:0,37:0,38:29,39:29,40:0,41:5,42:7,43:7,44:7,45:7,46:7,47:7,48:7,49:7,50:4,51:24,52:23,53:7,54:7,55:7,56:7,57:27,58:7,59:4,60:4,61:4,62:4,63:26,64:9,65:9,66:9,67:13,68:13,69:11,70:10,71:12,72:17,73:16,74:14,75:15,76:18,77:19,78:20,79:22,80:30,81:0,82:0,83:0,84:4,85:28,86:28,87:28,88:0,89:0,90:0,91:0,92:0,93:0,94:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:7,136:4,137:26,138:0,139:0,140:0,141:0,142:0,143:28,144:0,145:0,146:0,147:0,148:6,149:0,150:0,151:0},g={1078:"af",1052:"sq",1156:"gsw",1118:"am",5121:"ar-DZ",15361:"ar-BH",3073:"ar",2049:"ar-IQ",11265:"ar-JO",13313:"ar-KW",12289:"ar-LB",4097:"ar-LY",6145:"ary",8193:"ar-OM",16385:"ar-QA",1025:"ar-SA",10241:"ar-SY",7169:"aeb",14337:"ar-AE",9217:"ar-YE",1067:"hy",1101:"as",2092:"az-Cyrl",1068:"az",1133:"ba",1069:"eu",1059:"be",2117:"bn",1093:"bn-IN",8218:"bs-Cyrl",5146:"bs",1150:"br",1026:"bg",1027:"ca",3076:"zh-HK",5124:"zh-MO",2052:"zh",4100:"zh-SG",1028:"zh-TW",1155:"co",1050:"hr",4122:"hr-BA",1029:"cs",1030:"da",1164:"prs",1125:"dv",2067:"nl-BE",1043:"nl",3081:"en-AU",10249:"en-BZ",4105:"en-CA",9225:"en-029",16393:"en-IN",6153:"en-IE",8201:"en-JM",17417:"en-MY",5129:"en-NZ",13321:"en-PH",18441:"en-SG",7177:"en-ZA",11273:"en-TT",2057:"en-GB",1033:"en",12297:"en-ZW",1061:"et",1080:"fo",1124:"fil",1035:"fi",2060:"fr-BE",3084:"fr-CA",1036:"fr",5132:"fr-LU",6156:"fr-MC",4108:"fr-CH",1122:"fy",1110:"gl",1079:"ka",3079:"de-AT",1031:"de",5127:"de-LI",4103:"de-LU",2055:"de-CH",1032:"el",1135:"kl",1095:"gu",1128:"ha",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig",1057:"id",1117:"iu",2141:"iu-Latn",2108:"ga",1076:"xh",1077:"zu",1040:"it",2064:"it-CH",1041:"ja",1099:"kn",1087:"kk",1107:"km",1158:"quc",1159:"rw",1089:"sw",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1062:"lv",1063:"lt",2094:"dsb",1134:"lb",1071:"mk",2110:"ms-BN",1086:"ms",1100:"ml",1082:"mt",1153:"mi",1146:"arn",1102:"mr",1148:"moh",1104:"mn",2128:"mn-CN",1121:"ne",1044:"nb",2068:"nn",1154:"oc",1096:"or",1123:"ps",1045:"pl",1046:"pt",2070:"pt-PT",1094:"pa",1131:"qu-BO",2155:"qu-EC",3179:"qu",1048:"ro",1047:"rm",1049:"ru",9275:"smn",4155:"smj-NO",5179:"smj",3131:"se-FI",1083:"se",2107:"se-SE",8251:"sms",6203:"sma-NO",7227:"sms",1103:"sa",7194:"sr-Cyrl-BA",3098:"sr",6170:"sr-Latn-BA",2074:"sr-Latn",1132:"nso",1074:"tn",1115:"si",1051:"sk",1060:"sl",11274:"es-AR",16394:"es-BO",13322:"es-CL",9226:"es-CO",5130:"es-CR",7178:"es-DO",12298:"es-EC",17418:"es-SV",4106:"es-GT",18442:"es-HN",2058:"es-MX",19466:"es-NI",6154:"es-PA",15370:"es-PY",10250:"es-PE",20490:"es-PR",3082:"es",1034:"es",21514:"es-US",14346:"es-UY",8202:"es-VE",2077:"sv-FI",1053:"sv",1114:"syr",1064:"tg",2143:"tzm",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1055:"tr",1090:"tk",1152:"ug",1058:"uk",1070:"hsb",1056:"ur",2115:"uz-Cyrl",1091:"uz",1066:"vi",1106:"cy",1160:"wo",1157:"sah",1144:"ii",1130:"yo"};function m(O,P,R){switch(O){case 0:if(P===65535)return"und";if(R)return R[P];break;case 1:return f[P];case 3:return g[P]}}var E="utf-16",b={0:"macintosh",1:"x-mac-japanese",2:"x-mac-chinesetrad",3:"x-mac-korean",6:"x-mac-greek",7:"x-mac-cyrillic",9:"x-mac-devanagai",10:"x-mac-gurmukhi",11:"x-mac-gujarati",12:"x-mac-oriya",13:"x-mac-bengali",14:"x-mac-tamil",15:"x-mac-telugu",16:"x-mac-kannada",17:"x-mac-malayalam",18:"x-mac-sinhalese",19:"x-mac-burmese",20:"x-mac-khmer",21:"x-mac-thai",22:"x-mac-lao",23:"x-mac-georgian",24:"x-mac-armenian",25:"x-mac-chinesesimp",26:"x-mac-tibetan",27:"x-mac-mongolian",28:"x-mac-ethiopic",29:"x-mac-ce",30:"x-mac-vietnamese",31:"x-mac-extarabic"},y={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"};function Q(O,P,R){switch(O){case 0:return E;case 1:return y[R]||b[P];case 3:if(P===1||P===10)return E;break}}function v(O,P,R){for(var re={},q=new A.Parser(O,P),le=q.parseUShort(),Ae=q.parseUShort(),ie=q.offset+q.parseUShort(),se=0;se<Ae;se++){var ye=q.parseUShort(),fe=q.parseUShort(),Pe=q.parseUShort(),Be=q.parseUShort(),Ee=u[Be]||Be,me=q.parseUShort(),ke=q.parseUShort(),Fe=m(ye,Pe,R),W=Q(ye,fe,Pe);if(W!==void 0&&Fe!==void 0){var N;if(W===E?N=i.UTF16(O,ie+ke,me):N=i.MACSTRING(O,ie+ke,me,W),N){var J=re[Ee];J===void 0&&(J=re[Ee]={}),J[Fe]=N}}}var z=0;return le===1&&(z=q.parseUShort()),re}function I(O){var P={};for(var R in O)P[O[R]]=parseInt(R);return P}function F(O,P,R,re,q,le){return new c.Table("NameRecord",[{name:"platformID",type:"USHORT",value:O},{name:"encodingID",type:"USHORT",value:P},{name:"languageID",type:"USHORT",value:R},{name:"nameID",type:"USHORT",value:re},{name:"length",type:"USHORT",value:q},{name:"offset",type:"USHORT",value:le}])}function k(O,P){var R=O.length,re=P.length-R+1;e:for(var q=0;q<re;q++)for(;q<re;q++){for(var le=0;le<R;le++)if(P[q+le]!==O[le])continue e;return q}return-1}function _(O,P){var R=k(O,P);if(R<0){R=P.length;for(var re=0,q=O.length;re<q;++re)P.push(O[re])}return R}function M(O,P){var R,re=[],q={},le=I(u);for(var Ae in O){var ie=le[Ae];ie===void 0&&(ie=Ae),R=parseInt(ie),q[R]=O[Ae],re.push(R)}for(var se=I(f),ye=I(g),fe=[],Pe=[],Be=0;Be<re.length;Be++){R=re[Be];var Ee=q[R];for(var me in Ee){var ke=Ee[me],Fe=1,W=se[me],N=p[W],J=Q(Fe,N,W),z=a.MACSTRING(ke,J);z===void 0&&(Fe=0,W=P.indexOf(me),W<0&&(W=P.length,P.push(me)),N=4,z=a.UTF16(ke));var j=_(z,Pe);fe.push(F(Fe,N,W,R,z.length,j));var K=ye[me];if(K!==void 0){var G=a.UTF16(ke),X=_(G,Pe);fe.push(F(3,1,K,R,G.length,X))}}}fe.sort(function(ce,Qe){return ce.platformID-Qe.platformID||ce.encodingID-Qe.encodingID||ce.languageID-Qe.languageID||ce.nameID-Qe.nameID});for(var D=new c.Table("name",[{name:"format",type:"USHORT",value:0},{name:"count",type:"USHORT",value:fe.length},{name:"stringOffset",type:"USHORT",value:6+fe.length*12}]),pe=0;pe<fe.length;pe++)D.fields.push({name:"record_"+pe,type:"TABLE",value:fe[pe]});return D.fields.push({name:"strings",type:"LITERAL",value:Pe}),D}r.parse=v,r.make=M}),$m=Ge(r=>{"use strict";var e=Tt(),i=tr(),a=[{begin:0,end:127},{begin:128,end:255},{begin:256,end:383},{begin:384,end:591},{begin:592,end:687},{begin:688,end:767},{begin:768,end:879},{begin:880,end:1023},{begin:11392,end:11519},{begin:1024,end:1279},{begin:1328,end:1423},{begin:1424,end:1535},{begin:42240,end:42559},{begin:1536,end:1791},{begin:1984,end:2047},{begin:2304,end:2431},{begin:2432,end:2559},{begin:2560,end:2687},{begin:2688,end:2815},{begin:2816,end:2943},{begin:2944,end:3071},{begin:3072,end:3199},{begin:3200,end:3327},{begin:3328,end:3455},{begin:3584,end:3711},{begin:3712,end:3839},{begin:4256,end:4351},{begin:6912,end:7039},{begin:4352,end:4607},{begin:7680,end:7935},{begin:7936,end:8191},{begin:8192,end:8303},{begin:8304,end:8351},{begin:8352,end:8399},{begin:8400,end:8447},{begin:8448,end:8527},{begin:8528,end:8591},{begin:8592,end:8703},{begin:8704,end:8959},{begin:8960,end:9215},{begin:9216,end:9279},{begin:9280,end:9311},{begin:9312,end:9471},{begin:9472,end:9599},{begin:9600,end:9631},{begin:9632,end:9727},{begin:9728,end:9983},{begin:9984,end:10175},{begin:12288,end:12351},{begin:12352,end:12447},{begin:12448,end:12543},{begin:12544,end:12591},{begin:12592,end:12687},{begin:43072,end:43135},{begin:12800,end:13055},{begin:13056,end:13311},{begin:44032,end:55215},{begin:55296,end:57343},{begin:67840,end:67871},{begin:19968,end:40959},{begin:57344,end:63743},{begin:12736,end:12783},{begin:64256,end:64335},{begin:64336,end:65023},{begin:65056,end:65071},{begin:65040,end:65055},{begin:65104,end:65135},{begin:65136,end:65279},{begin:65280,end:65519},{begin:65520,end:65535},{begin:3840,end:4095},{begin:1792,end:1871},{begin:1920,end:1983},{begin:3456,end:3583},{begin:4096,end:4255},{begin:4608,end:4991},{begin:5024,end:5119},{begin:5120,end:5759},{begin:5760,end:5791},{begin:5792,end:5887},{begin:6016,end:6143},{begin:6144,end:6319},{begin:10240,end:10495},{begin:40960,end:42127},{begin:5888,end:5919},{begin:66304,end:66351},{begin:66352,end:66383},{begin:66560,end:66639},{begin:118784,end:119039},{begin:119808,end:120831},{begin:1044480,end:1048573},{begin:65024,end:65039},{begin:917504,end:917631},{begin:6400,end:6479},{begin:6480,end:6527},{begin:6528,end:6623},{begin:6656,end:6687},{begin:11264,end:11359},{begin:11568,end:11647},{begin:19904,end:19967},{begin:43008,end:43055},{begin:65536,end:65663},{begin:65856,end:65935},{begin:66432,end:66463},{begin:66464,end:66527},{begin:66640,end:66687},{begin:66688,end:66735},{begin:67584,end:67647},{begin:68096,end:68191},{begin:119552,end:119647},{begin:73728,end:74751},{begin:119648,end:119679},{begin:7040,end:7103},{begin:7168,end:7247},{begin:7248,end:7295},{begin:43136,end:43231},{begin:43264,end:43311},{begin:43312,end:43359},{begin:43520,end:43615},{begin:65936,end:65999},{begin:66e3,end:66047},{begin:66208,end:66271},{begin:127024,end:127135}];function A(f){for(var p=0;p<a.length;p+=1){var g=a[p];if(f>=g.begin&&f<g.end)return p}return-1}function c(f,p){var g={},m=new e.Parser(f,p);g.version=m.parseUShort(),g.xAvgCharWidth=m.parseShort(),g.usWeightClass=m.parseUShort(),g.usWidthClass=m.parseUShort(),g.fsType=m.parseUShort(),g.ySubscriptXSize=m.parseShort(),g.ySubscriptYSize=m.parseShort(),g.ySubscriptXOffset=m.parseShort(),g.ySubscriptYOffset=m.parseShort(),g.ySuperscriptXSize=m.parseShort(),g.ySuperscriptYSize=m.parseShort(),g.ySuperscriptXOffset=m.parseShort(),g.ySuperscriptYOffset=m.parseShort(),g.yStrikeoutSize=m.parseShort(),g.yStrikeoutPosition=m.parseShort(),g.sFamilyClass=m.parseShort(),g.panose=[];for(var E=0;E<10;E++)g.panose[E]=m.parseByte();return g.ulUnicodeRange1=m.parseULong(),g.ulUnicodeRange2=m.parseULong(),g.ulUnicodeRange3=m.parseULong(),g.ulUnicodeRange4=m.parseULong(),g.achVendID=String.fromCharCode(m.parseByte(),m.parseByte(),m.parseByte(),m.parseByte()),g.fsSelection=m.parseUShort(),g.usFirstCharIndex=m.parseUShort(),g.usLastCharIndex=m.parseUShort(),g.sTypoAscender=m.parseShort(),g.sTypoDescender=m.parseShort(),g.sTypoLineGap=m.parseShort(),g.usWinAscent=m.parseUShort(),g.usWinDescent=m.parseUShort(),g.version>=1&&(g.ulCodePageRange1=m.parseULong(),g.ulCodePageRange2=m.parseULong()),g.version>=2&&(g.sxHeight=m.parseShort(),g.sCapHeight=m.parseShort(),g.usDefaultChar=m.parseUShort(),g.usBreakChar=m.parseUShort(),g.usMaxContent=m.parseUShort()),g}function u(f){return new i.Table("OS/2",[{name:"version",type:"USHORT",value:3},{name:"xAvgCharWidth",type:"SHORT",value:0},{name:"usWeightClass",type:"USHORT",value:0},{name:"usWidthClass",type:"USHORT",value:0},{name:"fsType",type:"USHORT",value:0},{name:"ySubscriptXSize",type:"SHORT",value:650},{name:"ySubscriptYSize",type:"SHORT",value:699},{name:"ySubscriptXOffset",type:"SHORT",value:0},{name:"ySubscriptYOffset",type:"SHORT",value:140},{name:"ySuperscriptXSize",type:"SHORT",value:650},{name:"ySuperscriptYSize",type:"SHORT",value:699},{name:"ySuperscriptXOffset",type:"SHORT",value:0},{name:"ySuperscriptYOffset",type:"SHORT",value:479},{name:"yStrikeoutSize",type:"SHORT",value:49},{name:"yStrikeoutPosition",type:"SHORT",value:258},{name:"sFamilyClass",type:"SHORT",value:0},{name:"bFamilyType",type:"BYTE",value:0},{name:"bSerifStyle",type:"BYTE",value:0},{name:"bWeight",type:"BYTE",value:0},{name:"bProportion",type:"BYTE",value:0},{name:"bContrast",type:"BYTE",value:0},{name:"bStrokeVariation",type:"BYTE",value:0},{name:"bArmStyle",type:"BYTE",value:0},{name:"bLetterform",type:"BYTE",value:0},{name:"bMidline",type:"BYTE",value:0},{name:"bXHeight",type:"BYTE",value:0},{name:"ulUnicodeRange1",type:"ULONG",value:0},{name:"ulUnicodeRange2",type:"ULONG",value:0},{name:"ulUnicodeRange3",type:"ULONG",value:0},{name:"ulUnicodeRange4",type:"ULONG",value:0},{name:"achVendID",type:"CHARARRAY",value:"XXXX"},{name:"fsSelection",type:"USHORT",value:0},{name:"usFirstCharIndex",type:"USHORT",value:0},{name:"usLastCharIndex",type:"USHORT",value:0},{name:"sTypoAscender",type:"SHORT",value:0},{name:"sTypoDescender",type:"SHORT",value:0},{name:"sTypoLineGap",type:"SHORT",value:0},{name:"usWinAscent",type:"USHORT",value:0},{name:"usWinDescent",type:"USHORT",value:0},{name:"ulCodePageRange1",type:"ULONG",value:0},{name:"ulCodePageRange2",type:"ULONG",value:0},{name:"sxHeight",type:"SHORT",value:0},{name:"sCapHeight",type:"SHORT",value:0},{name:"usDefaultChar",type:"USHORT",value:0},{name:"usBreakChar",type:"USHORT",value:0},{name:"usMaxContext",type:"USHORT",value:0}],f)}r.unicodeRanges=a,r.getUnicodeRange=A,r.parse=c,r.make=u}),e0=Ge(r=>{"use strict";var e=ba(),i=Tt(),a=tr();function A(u,f){var p={},g=new i.Parser(u,f),m;switch(p.version=g.parseVersion(),p.italicAngle=g.parseFixed(),p.underlinePosition=g.parseShort(),p.underlineThickness=g.parseShort(),p.isFixedPitch=g.parseULong(),p.minMemType42=g.parseULong(),p.maxMemType42=g.parseULong(),p.minMemType1=g.parseULong(),p.maxMemType1=g.parseULong(),p.version){case 1:p.names=e.standardNames.slice();break;case 2:for(p.numberOfGlyphs=g.parseUShort(),p.glyphNameIndex=new Array(p.numberOfGlyphs),m=0;m<p.numberOfGlyphs;m++)p.glyphNameIndex[m]=g.parseUShort();for(p.names=[],m=0;m<p.numberOfGlyphs;m++)if(p.glyphNameIndex[m]>=e.standardNames.length){var E=g.parseChar();p.names.push(g.parseString(E))}break;case 2.5:for(p.numberOfGlyphs=g.parseUShort(),p.offset=new Array(p.numberOfGlyphs),m=0;m<p.numberOfGlyphs;m++)p.offset[m]=g.parseChar();break}return p}function c(){return new a.Table("post",[{name:"version",type:"FIXED",value:196608},{name:"italicAngle",type:"FIXED",value:0},{name:"underlinePosition",type:"FWORD",value:0},{name:"underlineThickness",type:"FWORD",value:0},{name:"isFixedPitch",type:"ULONG",value:0},{name:"minMemType42",type:"ULONG",value:0},{name:"maxMemType42",type:"ULONG",value:0},{name:"minMemType1",type:"ULONG",value:0},{name:"maxMemType1",type:"ULONG",value:0}])}r.parse=A,r.make=c}),wF=Ge(r=>{"use strict";var e=ur(),i=tr(),a=Jm(),A=jm(),c=_m(),u=Zm(),f=Xm(),p=zm(),g=qm(),m=Km(),E=$m(),b=e0();function y(M){return Math.log(M)/Math.log(2)|0}function Q(M){for(;M.length%4!==0;)M.push(0);for(var O=0,P=0;P<M.length;P+=4)O+=(M[P]<<24)+(M[P+1]<<16)+(M[P+2]<<8)+M[P+3];return O%=Math.pow(2,32),O}function v(M,O,P,R){return new i.Table("Table Record",[{name:"tag",type:"TAG",value:M!==void 0?M:""},{name:"checkSum",type:"ULONG",value:O!==void 0?O:0},{name:"offset",type:"ULONG",value:P!==void 0?P:0},{name:"length",type:"ULONG",value:R!==void 0?R:0}])}function I(M){var O=new i.Table("sfnt",[{name:"version",type:"TAG",value:"OTTO"},{name:"numTables",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);O.tables=M,O.numTables=M.length;var P=Math.pow(2,y(O.numTables));O.searchRange=16*P,O.entrySelector=y(P),O.rangeShift=O.numTables*16-O.searchRange;for(var R=[],re=[],q=O.sizeOf()+v().sizeOf()*O.numTables;q%4!==0;)q+=1,re.push({name:"padding",type:"BYTE",value:0});for(var le=0;le<M.length;le+=1){var Ae=M[le];e.argument(Ae.tableName.length===4,"Table name"+Ae.tableName+" is invalid.");var ie=Ae.sizeOf(),se=v(Ae.tableName,Q(Ae.encode()),q,ie);for(R.push({name:se.tag+" Table Record",type:"TABLE",value:se}),re.push({name:Ae.tableName+" table",type:"TABLE",value:Ae}),q+=ie,e.argument(!isNaN(q),"Something went wrong calculating the offset.");q%4!==0;)q+=1,re.push({name:"padding",type:"BYTE",value:0})}return R.sort(function(ye,fe){return ye.value.tag>fe.value.tag?1:-1}),O.fields=O.fields.concat(R),O.fields=O.fields.concat(re),O}function F(M,O,P){for(var R=0;R<O.length;R+=1){var re=M.charToGlyphIndex(O[R]);if(re>0){var q=M.glyphs.get(re);return q.getMetrics()}}return P}function k(M){for(var O=0,P=0;P<M.length;P+=1)O+=M[P];return O/M.length}function _(M){for(var O=[],P=[],R=[],re=[],q=[],le=[],Ae=[],ie,se=0,ye=0,fe=0,Pe=0,Be=0,Ee=0;Ee<M.glyphs.length;Ee+=1){var me=M.glyphs.get(Ee),ke=me.unicode|0;(ie>ke||ie===null)&&(ie=ke),se<ke&&(se=ke);var Fe=E.getUnicodeRange(ke);if(Fe<32)ye|=1<<Fe;else if(Fe<64)fe|=1<<Fe-32;else if(Fe<96)Pe|=1<<Fe-64;else if(Fe<123)Be|=1<<Fe-96;else throw new Error("Unicode ranges bits > 123 are reserved for internal usage");if(me.name!==".notdef"){var W=me.getMetrics();O.push(W.xMin),P.push(W.yMin),R.push(W.xMax),re.push(W.yMax),le.push(W.leftSideBearing),Ae.push(W.rightSideBearing),q.push(me.advanceWidth)}}var N={xMin:Math.min.apply(null,O),yMin:Math.min.apply(null,P),xMax:Math.max.apply(null,R),yMax:Math.max.apply(null,re),advanceWidthMax:Math.max.apply(null,q),advanceWidthAvg:k(q),minLeftSideBearing:Math.min.apply(null,le),maxLeftSideBearing:Math.max.apply(null,le),minRightSideBearing:Math.min.apply(null,Ae)};N.ascender=M.ascender!==void 0?M.ascender:N.yMax,N.descender=M.descender!==void 0?M.descender:N.yMin;var J=c.make({unitsPerEm:M.unitsPerEm,xMin:N.xMin,yMin:N.yMin,xMax:N.xMax,yMax:N.yMax}),z=u.make({ascender:N.ascender,descender:N.descender,advanceWidthMax:N.advanceWidthMax,minLeftSideBearing:N.minLeftSideBearing,minRightSideBearing:N.minRightSideBearing,xMaxExtent:N.maxLeftSideBearing+(N.xMax-N.xMin),numberOfHMetrics:M.glyphs.length}),j=g.make(M.glyphs.length),K=E.make({xAvgCharWidth:Math.round(N.advanceWidthAvg),usWeightClass:500,usWidthClass:5,usFirstCharIndex:ie,usLastCharIndex:se,ulUnicodeRange1:ye,ulUnicodeRange2:fe,ulUnicodeRange3:Pe,ulUnicodeRange4:Be,sTypoAscender:N.ascender,sTypoDescender:N.descender,sTypoLineGap:0,usWinAscent:N.ascender,usWinDescent:-N.descender,sxHeight:F(M,"xyvw",{yMax:0}).yMax,sCapHeight:F(M,"HIKLEFJMNTZBDPRAGOQSUVWXY",N).yMax,usBreakChar:M.hasChar(" ")?32:0}),G=f.make(M.glyphs),X=a.make(M.glyphs),D=M.getEnglishName("fontFamily"),pe=M.getEnglishName("fontSubfamily"),ce=D+" "+pe,Qe=M.getEnglishName("postScriptName");Qe||(Qe=D.replace(/\s/g,"")+"-"+pe);var Z={};for(var H in M.names)Z[H]=M.names[H];Z.uniqueID||(Z.uniqueID={en:M.getEnglishName("manufacturer")+":"+ce}),Z.postScriptName||(Z.postScriptName={en:Qe}),Z.preferredFamily||(Z.preferredFamily=M.names.fontFamily),Z.preferredSubfamily||(Z.preferredSubfamily=M.names.fontSubfamily);var ne=[],Oe=m.make(Z,ne),De=ne.length>0?p.make(ne):void 0,it=b.make(),Ze=A.make(M.glyphs,{version:M.getEnglishName("version"),fullName:ce,familyName:D,weightName:pe,postScriptName:Qe,unitsPerEm:M.unitsPerEm}),Xe=[J,z,j,K,Oe,X,it,Ze,G];De&&Xe.push(De);var wt=I(Xe),te=wt.encode(),ve=Q(te),be=wt.fields,ue=!1;for(Ee=0;Ee<be.length;Ee+=1)if(be[Ee].name==="head table"){be[Ee].value.checkSumAdjustment=2981146554-ve,ue=!0;break}if(!ue)throw new Error("Could not find head table with checkSum to adjust.");return wt}r.computeCheckSum=Q,r.make=I,r.fontToTable=_}),yF=Ge(r=>{"use strict";var e=$n(),i=wF(),a=ba(),A=Nl();function c(u){u=u||{},this.names={fontFamily:{en:u.familyName||" "},fontSubfamily:{en:u.styleName||" "},designer:{en:u.designer||" "},designerURL:{en:u.designerURL||" "},manufacturer:{en:u.manufacturer||" "},manufacturerURL:{en:u.manufacturerURL||" "},license:{en:u.license||" "},licenseURL:{en:u.licenseURL||" "},version:{en:u.version||"Version 0.1"},description:{en:u.description||" "},copyright:{en:u.copyright||" "},trademark:{en:u.trademark||" "}},this.unitsPerEm=u.unitsPerEm||1e3,this.ascender=u.ascender,this.descender=u.descender,this.supported=!0,this.glyphs=new A.GlyphSet(this,u.glyphs||[]),this.encoding=new a.DefaultEncoding(this),this.tables={}}c.prototype.hasChar=function(u){return this.encoding.charToGlyphIndex(u)!==null},c.prototype.charToGlyphIndex=function(u){return this.encoding.charToGlyphIndex(u)},c.prototype.charToGlyph=function(u){var f=this.charToGlyphIndex(u),p=this.glyphs.get(f);return p||(p=this.glyphs.get(0)),p},c.prototype.stringToGlyphs=function(u){for(var f=[],p=0;p<u.length;p+=1){var g=u[p];f.push(this.charToGlyph(g))}return f},c.prototype.nameToGlyphIndex=function(u){return this.glyphNames.nameToGlyphIndex(u)},c.prototype.nameToGlyph=function(u){var f=this.nametoGlyphIndex(u),p=this.glyphs.get(f);return p||(p=this.glyphs.get(0)),p},c.prototype.glyphIndexToName=function(u){return this.glyphNames.glyphIndexToName?this.glyphNames.glyphIndexToName(u):""},c.prototype.getKerningValue=function(u,f){u=u.index||u,f=f.index||f;var p=this.getGposKerningValue;return p?p(u,f):this.kerningPairs[u+","+f]||0},c.prototype.forEachGlyph=function(u,f,p,g,m,E){f=f!==void 0?f:0,p=p!==void 0?p:0,g=g!==void 0?g:72,m=m||{};for(var b=m.kerning===void 0?!0:m.kerning,y=1/this.unitsPerEm*g,Q=this.stringToGlyphs(u),v=0;v<Q.length;v+=1){var I=Q[v];if(E(I,f,p,g,m),I.advanceWidth&&(f+=I.advanceWidth*y),b&&v<Q.length-1){var F=this.getKerningValue(I,Q[v+1]);f+=F*y}}},c.prototype.getPath=function(u,f,p,g,m){var E=new e.Path;return this.forEachGlyph(u,f,p,g,m,function(b,y,Q,v){var I=b.getPath(y,Q,v);E.extend(I)}),E},c.prototype.draw=function(u,f,p,g,m,E){this.getPath(f,p,g,m,E).draw(u)},c.prototype.drawPoints=function(u,f,p,g,m,E){this.forEachGlyph(f,p,g,m,E,function(b,y,Q,v){b.drawPoints(u,y,Q,v)})},c.prototype.drawMetrics=function(u,f,p,g,m,E){this.forEachGlyph(f,p,g,m,E,function(b,y,Q,v){b.drawMetrics(u,y,Q,v)})},c.prototype.getEnglishName=function(u){var f=this.names[u];if(f)return f.en},c.prototype.validate=function(){var u=[],f=this;function p(m,E){m||u.push(E)}function g(m){var E=f.getEnglishName(m);p(E&&E.trim().length>0,"No English "+m+" specified.")}g("fontFamily"),g("weightName"),g("manufacturer"),g("copyright"),g("version"),p(this.unitsPerEm>0,"No unitsPerEm specified.")},c.prototype.toTables=function(){return i.fontToTable(this)},c.prototype.toBuffer=function(){for(var u=this.toTables(),f=u.encode(),p=new ArrayBuffer(f.length),g=new Uint8Array(p),m=0;m<f.length;m++)g[m]=f[m];return p},c.prototype.download=function(){var u=this.getEnglishName("fontFamily"),f=this.getEnglishName("fontSubfamily"),p=u.replace(/\s/g,"")+"-"+f+".otf",g=this.toBuffer();window.requestFileSystem=window.requestFileSystem||window.webkitRequestFileSystem,window.requestFileSystem(window.TEMPORARY,g.byteLength,function(m){m.root.getFile(p,{create:!0},function(E){E.createWriter(function(b){var y=new DataView(g),Q=new Blob([y],{type:"font/opentype"});b.write(Q),b.addEventListener("writeend",function(){location.href=E.toURL()},!1)})})},function(m){throw m})},r.Font=c}),CF=Ge(r=>{"use strict";var e=ur(),i=Tt(),a=tr();function A(E,b){var y=JSON.stringify(E),Q=256;for(var v in b){var I=parseInt(v);if(!(!I||I<256)){if(JSON.stringify(b[v])===y)return I;Q<=I&&(Q=I+1)}}return b[Q]=E,Q}function c(E,b){var y=A(E.name,b);return new a.Table("fvarAxis",[{name:"tag",type:"TAG",value:E.tag},{name:"minValue",type:"FIXED",value:E.minValue<<16},{name:"defaultValue",type:"FIXED",value:E.defaultValue<<16},{name:"maxValue",type:"FIXED",value:E.maxValue<<16},{name:"flags",type:"USHORT",value:0},{name:"nameID",type:"USHORT",value:y}])}function u(E,b,y){var Q={},v=new i.Parser(E,b);return Q.tag=v.parseTag(),Q.minValue=v.parseFixed(),Q.defaultValue=v.parseFixed(),Q.maxValue=v.parseFixed(),v.skip("uShort",1),Q.name=y[v.parseUShort()]||{},Q}function f(E,b,y){for(var Q=A(E.name,y),v=[{name:"nameID",type:"USHORT",value:Q},{name:"flags",type:"USHORT",value:0}],I=0;I<b.length;++I){var F=b[I].tag;v.push({name:"axis "+F,type:"FIXED",value:E.coordinates[F]<<16})}return new a.Table("fvarInstance",v)}function p(E,b,y,Q){var v={},I=new i.Parser(E,b);v.name=Q[I.parseUShort()]||{},I.skip("uShort",1),v.coordinates={};for(var F=0;F<y.length;++F)v.coordinates[y[F].tag]=I.parseFixed();return v}function g(E,b){var y=new a.Table("fvar",[{name:"version",type:"ULONG",value:65536},{name:"offsetToData",type:"USHORT",value:0},{name:"countSizePairs",type:"USHORT",value:2},{name:"axisCount",type:"USHORT",value:E.axes.length},{name:"axisSize",type:"USHORT",value:20},{name:"instanceCount",type:"USHORT",value:E.instances.length},{name:"instanceSize",type:"USHORT",value:4+E.axes.length*4}]);y.offsetToData=y.sizeOf();for(var Q=0;Q<E.axes.length;Q++)y.fields.push({name:"axis "+Q,type:"TABLE",value:c(E.axes[Q],b)});for(var v=0;v<E.instances.length;v++)y.fields.push({name:"instance "+v,type:"TABLE",value:f(E.instances[v],E.axes,b)});return y}function m(E,b,y){var Q=new i.Parser(E,b),v=Q.parseULong();e.argument(v===65536,"Unsupported fvar table version.");var I=Q.parseOffset16();Q.skip("uShort",1);for(var F=Q.parseUShort(),k=Q.parseUShort(),_=Q.parseUShort(),M=Q.parseUShort(),O=[],P=0;P<F;P++)O.push(u(E,b+I+P*k,y));for(var R=[],re=b+I+F*k,q=0;q<_;q++)R.push(p(E,re+q*M,O,y));return{axes:O,instances:R}}r.make=g,r.parse=m}),bF=Ge(r=>{"use strict";var e=ur(),i=Nl(),a=Tt(),A=$n();function c(b,y,Q,v,I){var F;return(y&v)>0?(F=b.parseByte(),y&I||(F=-F),F=Q+F):(y&I)>0?F=Q:F=Q+b.parseShort(),F}function u(b,y,Q){var v=new a.Parser(y,Q);b.numberOfContours=v.parseShort(),b.xMin=v.parseShort(),b.yMin=v.parseShort(),b.xMax=v.parseShort(),b.yMax=v.parseShort();var I,F;if(b.numberOfContours>0){var k,_=b.endPointIndices=[];for(k=0;k<b.numberOfContours;k+=1)_.push(v.parseUShort());for(b.instructionLength=v.parseUShort(),b.instructions=[],k=0;k<b.instructionLength;k+=1)b.instructions.push(v.parseByte());var M=_[_.length-1]+1;for(I=[],k=0;k<M;k+=1)if(F=v.parseByte(),I.push(F),(F&8)>0)for(var O=v.parseByte(),P=0;P<O;P+=1)I.push(F),k+=1;if(e.argument(I.length===M,"Bad flags."),_.length>0){var R=[],re;if(M>0){for(k=0;k<M;k+=1)F=I[k],re={},re.onCurve=!!(F&1),re.lastPointOfContour=_.indexOf(k)>=0,R.push(re);var q=0;for(k=0;k<M;k+=1)F=I[k],re=R[k],re.x=c(v,F,q,2,16),q=re.x;var le=0;for(k=0;k<M;k+=1)F=I[k],re=R[k],re.y=c(v,F,le,4,32),le=re.y}b.points=R}else b.points=[]}else if(b.numberOfContours===0)b.points=[];else{b.isComposite=!0,b.points=[],b.components=[];for(var Ae=!0;Ae;){I=v.parseUShort();var ie={glyphIndex:v.parseUShort(),xScale:1,scale01:0,scale10:0,yScale:1,dx:0,dy:0};(I&1)>0?(ie.dx=v.parseShort(),ie.dy=v.parseShort()):(ie.dx=v.parseChar(),ie.dy=v.parseChar()),(I&8)>0?ie.xScale=ie.yScale=v.parseF2Dot14():(I&64)>0?(ie.xScale=v.parseF2Dot14(),ie.yScale=v.parseF2Dot14()):(I&128)>0&&(ie.xScale=v.parseF2Dot14(),ie.scale01=v.parseF2Dot14(),ie.scale10=v.parseF2Dot14(),ie.yScale=v.parseF2Dot14()),b.components.push(ie),Ae=!!(I&32)}}}function f(b,y){for(var Q=[],v=0;v<b.length;v+=1){var I=b[v],F={x:y.xScale*I.x+y.scale01*I.y+y.dx,y:y.scale10*I.x+y.yScale*I.y+y.dy,onCurve:I.onCurve,lastPointOfContour:I.lastPointOfContour};Q.push(F)}return Q}function p(b){for(var y=[],Q=[],v=0;v<b.length;v+=1){var I=b[v];Q.push(I),I.lastPointOfContour&&(y.push(Q),Q=[])}return e.argument(Q.length===0,"There are still points left in the current contour."),y}function g(b){var y=new A.Path;if(!b)return y;for(var Q=p(b),v=0;v<Q.length;v+=1){var I=Q[v],F=I[0],k=I[I.length-1],_,M;F.onCurve?(_=null,M=!0):(k.onCurve?F=k:F={x:(F.x+k.x)/2,y:(F.y+k.y)/2},_=F,M=!1),y.moveTo(F.x,F.y);for(var O=M?1:0;O<I.length;O+=1){var P=I[O],R=O===0?F:I[O-1];if(R.onCurve&&P.onCurve)y.lineTo(P.x,P.y);else if(R.onCurve&&!P.onCurve)_=P;else if(!R.onCurve&&!P.onCurve){var re={x:(R.x+P.x)/2,y:(R.y+P.y)/2};y.quadraticCurveTo(R.x,R.y,re.x,re.y),_=P}else if(!R.onCurve&&P.onCurve)y.quadraticCurveTo(_.x,_.y,P.x,P.y),_=null;else throw new Error("Invalid state.")}F!==k&&(_?y.quadraticCurveTo(_.x,_.y,F.x,F.y):y.lineTo(F.x,F.y))}return y.closePath(),y}function m(b,y){if(y.isComposite)for(var Q=0;Q<y.components.length;Q+=1){var v=y.components[Q],I=b.get(v.glyphIndex);if(I.getPath(),I.points){var F=f(I.points,v);y.points=y.points.concat(F)}}return g(y.points)}function E(b,y,Q,v){var I=new i.GlyphSet(v),F;for(F=0;F<Q.length-1;F+=1){var k=Q[F],_=Q[F+1];k!==_?I.push(F,i.ttfGlyphLoader(v,F,u,b,y+k,m)):I.push(F,i.glyphLoader(v,F))}return I}r.parse=E}),xF=Ge(r=>{"use strict";var e=ur(),i=Tt();function a(g,m){for(var E=new i.Parser(g,m),b=E.parseUShort(),y=[],Q=0;Q<b;Q++)y[E.parseTag()]={offset:E.parseUShort()};return y}function A(g,m){var E=new i.Parser(g,m),b=E.parseUShort(),y=E.parseUShort();if(b===1)return E.parseUShortList(y);if(b===2){for(var Q=[];y--;)for(var v=E.parseUShort(),I=E.parseUShort(),F=E.parseUShort(),k=v;k<=I;k++)Q[F++]=k;return Q}}function c(g,m){var E=new i.Parser(g,m),b=E.parseUShort();if(b===1){var y=E.parseUShort(),Q=E.parseUShort(),v=E.parseUShortList(Q);return function(O){return v[O-y]||0}}else if(b===2){for(var I=E.parseUShort(),F=[],k=[],_=[],M=0;M<I;M++)F[M]=E.parseUShort(),k[M]=E.parseUShort(),_[M]=E.parseUShort();return function(O){for(var P=0,R=F.length-1;P<R;){var re=P+R+1>>1;O<F[re]?R=re-1:P=re}return F[P]<=O&&O<=k[P]&&_[P]||0}}}function u(g,m){var E=new i.Parser(g,m),b=E.parseUShort(),y=E.parseUShort(),Q=A(g,m+y),v=E.parseUShort(),I=E.parseUShort(),F,k;if(!(v!==4||I!==0)){var _={};if(b===1){for(var M=E.parseUShort(),O=[],P=E.parseOffset16List(M),R=0;R<M;R++){var re=P[R],q=_[re];if(!q){q={},E.relativeOffset=re;for(var le=E.parseUShort();le--;){var Ae=E.parseUShort();v&&(F=E.parseShort()),I&&(k=E.parseShort()),q[Ae]=F}}O[Q[R]]=q}return function(N,J){var z=O[N];if(z)return z[J]}}else if(b===2){for(var ie=E.parseUShort(),se=E.parseUShort(),ye=E.parseUShort(),fe=E.parseUShort(),Pe=c(g,m+ie),Be=c(g,m+se),Ee=[],me=0;me<ye;me++)for(var ke=Ee[me]=[],Fe=0;Fe<fe;Fe++)v&&(F=E.parseShort()),I&&(k=E.parseShort()),ke[Fe]=F;var W={};for(me=0;me<Q.length;me++)W[Q[me]]=1;return function(N,J){if(W[N]){var z=Pe(N),j=Be(J),K=Ee[z];if(K)return K[j]}}}}}function f(g,m){var E=new i.Parser(g,m),b=E.parseUShort(),y=E.parseUShort(),Q=y&16,v=E.parseUShort(),I=E.parseOffset16List(v),F={lookupType:b,lookupFlag:y,markFilteringSet:Q?E.parseUShort():-1};if(b===2){for(var k=[],_=0;_<v;_++)k.push(u(g,m+I[_]));F.getKerningValue=function(M,O){for(var P=k.length;P--;){var R=k[P](M,O);if(R!==void 0)return R}return 0}}return F}function p(g,m,E){var b=new i.Parser(g,m),y=b.parseFixed();e.argument(y===1,"Unsupported GPOS table version."),a(g,m+b.parseUShort()),a(g,m+b.parseUShort());var Q=b.parseUShort();b.relativeOffset=Q;for(var v=b.parseUShort(),I=b.parseOffset16List(v),F=m+Q,k=0;k<v;k++){var _=f(g,F+I[k]);_.lookupType===2&&!E.getGposKerningValue&&(E.getGposKerningValue=_.getKerningValue)}}r.parse=p}),QF=Ge(r=>{"use strict";var e=ur(),i=Tt();function a(A,c){var u={},f=new i.Parser(A,c),p=f.parseUShort();e.argument(p===0,"Unsupported kern table version."),f.skip("uShort",1);var g=f.parseUShort();e.argument(g===0,"Unsupported kern sub-table version."),f.skip("uShort",2);var m=f.parseUShort();f.skip("uShort",3);for(var E=0;E<m;E+=1){var b=f.parseUShort(),y=f.parseUShort(),Q=f.parseShort();u[b+","+y]=Q}return u}r.parse=a}),vF=Ge(r=>{"use strict";var e=Tt();function i(a,A,c,u){for(var f=new e.Parser(a,A),p=u?f.parseUShort:f.parseULong,g=[],m=0;m<c+1;m+=1){var E=p.call(f);u&&(E*=2),g.push(E)}return g}r.parse=i}),IF=Ge(r=>{"use strict";var e=ba(),i=yF(),a=Vm(),A=Tt(),c=$n(),u=Jm(),f=jm(),p=CF(),g=bF(),m=xF(),E=_m(),b=Zm(),y=Xm(),Q=QF(),v=zm(),I=vF(),F=qm(),k=Km(),_=$m(),M=e0();function O(Ae){for(var ie=new ArrayBuffer(Ae.length),se=new Uint8Array(ie),ye=0;ye<Ae.length;ye+=1)se[ye]=Ae[ye];return ie}function P(Ae,ie){var se=We("fs");se.readFile(Ae,function(ye,fe){if(ye)return ie(ye.message);ie(null,O(fe))})}function R(Ae,ie){var se=new XMLHttpRequest;se.open("get",Ae,!0),se.responseType="arraybuffer",se.onload=function(){return se.status!==200?ie("Font could not be loaded: "+se.statusText):ie(null,se.response)},se.send()}function re(Ae){var ie,se,ye,fe,Pe,Be,Ee,me,ke,Fe,W=new i.Font,N=new DataView(Ae,0),J=A.getFixed(N,0);if(J===1)W.outlinesFormat="truetype";else if(J=A.getTag(N,0),J==="OTTO")W.outlinesFormat="cff";else throw new Error("Unsupported OpenType version "+J);for(var z=A.getUShort(N,4),j=12,K=0;K<z;K+=1){var G=A.getTag(N,j),X=A.getULong(N,j+8);switch(G){case"cmap":W.tables.cmap=u.parse(N,X),W.encoding=new e.CmapEncoding(W.tables.cmap);break;case"fvar":fe=X;break;case"head":W.tables.head=E.parse(N,X),W.unitsPerEm=W.tables.head.unitsPerEm,ie=W.tables.head.indexToLocFormat;break;case"hhea":W.tables.hhea=b.parse(N,X),W.ascender=W.tables.hhea.ascender,W.descender=W.tables.hhea.descender,W.numberOfHMetrics=W.tables.hhea.numberOfHMetrics;break;case"hmtx":Ee=X;break;case"ltag":se=v.parse(N,X);break;case"maxp":W.tables.maxp=F.parse(N,X),W.numGlyphs=W.tables.maxp.numGlyphs;break;case"name":Fe=X;break;case"OS/2":W.tables.os2=_.parse(N,X);break;case"post":W.tables.post=M.parse(N,X),W.glyphNames=new e.GlyphNames(W.tables.post);break;case"glyf":Pe=X;break;case"loca":ke=X;break;case"CFF ":ye=X;break;case"kern":me=X;break;case"GPOS":Be=X;break}j+=16}if(W.tables.name=k.parse(N,Fe,se),W.names=W.tables.name,Pe&&ke){var D=ie===0,pe=I.parse(N,ke,W.numGlyphs,D);W.glyphs=g.parse(N,Pe,pe,W)}else if(ye)f.parse(N,ye,W);else throw new Error("Font doesn't contain TrueType or CFF outlines.");return y.parse(N,Ee,W.numberOfHMetrics,W.numGlyphs,W.glyphs),e.addGlyphNames(W),me?W.kerningPairs=Q.parse(N,me):W.kerningPairs={},Be&&m.parse(N,Be,W),fe&&(W.tables.fvar=p.parse(N,fe,W.names)),W}function q(Ae,ie){var se=typeof window>"u",ye=se?P:R;ye(Ae,function(fe,Pe){if(fe)return ie(fe);var Be=re(Pe);return ie(null,Be)})}function le(Ae){var ie=We("fs"),se=ie.readFileSync(Ae);return re(O(se))}r._parse=A,r.Font=i.Font,r.Glyph=a.Glyph,r.Path=c.Path,r.parse=re,r.load=q,r.loadSync=le}),t0=Ge((r,e)=>{"use strict";var i=We("util"),a=We("stream"),A=e.exports=function(){a.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};i.inherits(A,a),A.prototype.read=function(c,u){this._reads.push({length:Math.abs(c),allowLess:c<0,func:u}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))},A.prototype.write=function(c,u){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let f;return Buffer.isBuffer(c)?f=c:f=Buffer.from(c,u||this._encoding),this._buffers.push(f),this._buffered+=f.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused},A.prototype.end=function(c,u){c&&this.write(c,u),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))},A.prototype.destroySoon=A.prototype.end,A.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()},A.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},A.prototype._processReadAllowingLess=function(c){this._reads.shift();let u=this._buffers[0];u.length>c.length?(this._buffered-=c.length,this._buffers[0]=u.slice(c.length),c.func.call(this,u.slice(0,c.length))):(this._buffered-=u.length,this._buffers.shift(),c.func.call(this,u))},A.prototype._processRead=function(c){this._reads.shift();let u=0,f=0,p=Buffer.alloc(c.length);for(;u<c.length;){let g=this._buffers[f++],m=Math.min(g.length,c.length-u);g.copy(p,u,0,m),u+=m,m!==g.length&&(this._buffers[--f]=g.slice(m))}f>0&&this._buffers.splice(0,f),this._buffered-=c.length,c.func.call(this,p)},A.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let c=this._reads[0];if(c.allowLess)this._processReadAllowingLess(c);else if(this._buffered>=c.length)this._processRead(c);else break}this._buffers&&!this.writable&&this._end()}catch(c){this.emit("error",c)}}}),r0=Ge(r=>{"use strict";var e=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];r.getImagePasses=function(i,a){let A=[],c=i%8,u=a%8,f=(i-c)/8,p=(a-u)/8;for(let g=0;g<e.length;g++){let m=e[g],E=f*m.x.length,b=p*m.y.length;for(let y=0;y<m.x.length&&m.x[y]<c;y++)E++;for(let y=0;y<m.y.length&&m.y[y]<u;y++)b++;E>0&&b>0&&A.push({width:E,height:b,index:g})}return A},r.getInterlaceIterator=function(i){return function(a,A,c){let u=a%e[c].x.length,f=(a-u)/e[c].x.length*8+e[c].x[u],p=A%e[c].y.length,g=(A-p)/e[c].y.length*8+e[c].y[p];return f*4+g*i*4}}}),i0=Ge((r,e)=>{"use strict";e.exports=function(i,a,A){let c=i+a-A,u=Math.abs(c-i),f=Math.abs(c-a),p=Math.abs(c-A);return u<=f&&u<=p?i:f<=p?a:A}}),n0=Ge((r,e)=>{"use strict";var i=r0(),a=i0();function A(u,f,p){let g=u*f;return p!==8&&(g=Math.ceil(g/(8/p))),g}var c=e.exports=function(u,f){let p=u.width,g=u.height,m=u.interlace,E=u.bpp,b=u.depth;if(this.read=f.read,this.write=f.write,this.complete=f.complete,this._imageIndex=0,this._images=[],m){let y=i.getImagePasses(p,g);for(let Q=0;Q<y.length;Q++)this._images.push({byteWidth:A(y[Q].width,E,b),height:y[Q].height,lineIndex:0})}else this._images.push({byteWidth:A(p,E,b),height:g,lineIndex:0});b===8?this._xComparison=E:b===16?this._xComparison=E*2:this._xComparison=1};c.prototype.start=function(){this.read(this._images[this._imageIndex].byteWidth+1,this._reverseFilterLine.bind(this))},c.prototype._unFilterType1=function(u,f,p){let g=this._xComparison,m=g-1;for(let E=0;E<p;E++){let b=u[1+E],y=E>m?f[E-g]:0;f[E]=b+y}},c.prototype._unFilterType2=function(u,f,p){let g=this._lastLine;for(let m=0;m<p;m++){let E=u[1+m],b=g?g[m]:0;f[m]=E+b}},c.prototype._unFilterType3=function(u,f,p){let g=this._xComparison,m=g-1,E=this._lastLine;for(let b=0;b<p;b++){let y=u[1+b],Q=E?E[b]:0,v=b>m?f[b-g]:0,I=Math.floor((v+Q)/2);f[b]=y+I}},c.prototype._unFilterType4=function(u,f,p){let g=this._xComparison,m=g-1,E=this._lastLine;for(let b=0;b<p;b++){let y=u[1+b],Q=E?E[b]:0,v=b>m?f[b-g]:0,I=b>m&&E?E[b-g]:0,F=a(v,Q,I);f[b]=y+F}},c.prototype._reverseFilterLine=function(u){let f=u[0],p,g=this._images[this._imageIndex],m=g.byteWidth;if(f===0)p=u.slice(1,m+1);else switch(p=Buffer.alloc(m),f){case 1:this._unFilterType1(u,p,m);break;case 2:this._unFilterType2(u,p,m);break;case 3:this._unFilterType3(u,p,m);break;case 4:this._unFilterType4(u,p,m);break;default:throw new Error("Unrecognised filter type - "+f)}this.write(p),g.lineIndex++,g.lineIndex>=g.height?(this._lastLine=null,this._imageIndex++,g=this._images[this._imageIndex]):this._lastLine=p,g?this.read(g.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}}),FF=Ge((r,e)=>{"use strict";var i=We("util"),a=t0(),A=n0(),c=e.exports=function(u){a.call(this);let f=[],p=this;this._filter=new A(u,{read:this.read.bind(this),write:function(g){f.push(g)},complete:function(){p.emit("complete",Buffer.concat(f))}}),this._filter.start()};i.inherits(c,a)}),es=Ge((r,e)=>{"use strict";e.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}}),s0=Ge((r,e)=>{"use strict";var i=[];(function(){for(let A=0;A<256;A++){let c=A;for(let u=0;u<8;u++)c&1?c=3988292384^c>>>1:c=c>>>1;i[A]=c}})();var a=e.exports=function(){this._crc=-1};a.prototype.write=function(A){for(let c=0;c<A.length;c++)this._crc=i[(this._crc^A[c])&255]^this._crc>>>8;return!0},a.prototype.crc32=function(){return this._crc^-1},a.crc32=function(A){let c=-1;for(let u=0;u<A.length;u++)c=i[(c^A[u])&255]^c>>>8;return c^-1}}),a0=Ge((r,e)=>{"use strict";var i=es(),a=s0(),A=e.exports=function(c,u){this._options=c,c.checkCRC=c.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[i.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[i.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[i.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[i.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[i.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[i.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=u.read,this.error=u.error,this.metadata=u.metadata,this.gamma=u.gamma,this.transColor=u.transColor,this.palette=u.palette,this.parsed=u.parsed,this.inflateData=u.inflateData,this.finished=u.finished,this.simpleTransparency=u.simpleTransparency,this.headersFinished=u.headersFinished||function(){}};A.prototype.start=function(){this.read(i.PNG_SIGNATURE.length,this._parseSignature.bind(this))},A.prototype._parseSignature=function(c){let u=i.PNG_SIGNATURE;for(let f=0;f<u.length;f++)if(c[f]!==u[f]){this.error(new Error("Invalid file signature"));return}this.read(8,this._parseChunkBegin.bind(this))},A.prototype._parseChunkBegin=function(c){let u=c.readUInt32BE(0),f=c.readUInt32BE(4),p="";for(let m=4;m<8;m++)p+=String.fromCharCode(c[m]);let g=!!(c[4]&32);if(!this._hasIHDR&&f!==i.TYPE_IHDR){this.error(new Error("Expected IHDR on beggining"));return}if(this._crc=new a,this._crc.write(Buffer.from(p)),this._chunks[f])return this._chunks[f](u);if(!g){this.error(new Error("Unsupported critical chunk type "+p));return}this.read(u+4,this._skipChunk.bind(this))},A.prototype._skipChunk=function(){this.read(8,this._parseChunkBegin.bind(this))},A.prototype._handleChunkEnd=function(){this.read(4,this._parseChunkEnd.bind(this))},A.prototype._parseChunkEnd=function(c){let u=c.readInt32BE(0),f=this._crc.crc32();if(this._options.checkCRC&&f!==u){this.error(new Error("Crc error - "+u+" - "+f));return}this._hasIEND||this.read(8,this._parseChunkBegin.bind(this))},A.prototype._handleIHDR=function(c){this.read(c,this._parseIHDR.bind(this))},A.prototype._parseIHDR=function(c){this._crc.write(c);let u=c.readUInt32BE(0),f=c.readUInt32BE(4),p=c[8],g=c[9],m=c[10],E=c[11],b=c[12];if(p!==8&&p!==4&&p!==2&&p!==1&&p!==16){this.error(new Error("Unsupported bit depth "+p));return}if(!(g in i.COLORTYPE_TO_BPP_MAP)){this.error(new Error("Unsupported color type"));return}if(m!==0){this.error(new Error("Unsupported compression method"));return}if(E!==0){this.error(new Error("Unsupported filter method"));return}if(b!==0&&b!==1){this.error(new Error("Unsupported interlace method"));return}this._colorType=g;let y=i.COLORTYPE_TO_BPP_MAP[this._colorType];this._hasIHDR=!0,this.metadata({width:u,height:f,depth:p,interlace:!!b,palette:!!(g&i.COLORTYPE_PALETTE),color:!!(g&i.COLORTYPE_COLOR),alpha:!!(g&i.COLORTYPE_ALPHA),bpp:y,colorType:g}),this._handleChunkEnd()},A.prototype._handlePLTE=function(c){this.read(c,this._parsePLTE.bind(this))},A.prototype._parsePLTE=function(c){this._crc.write(c);let u=Math.floor(c.length/3);for(let f=0;f<u;f++)this._palette.push([c[f*3],c[f*3+1],c[f*3+2],255]);this.palette(this._palette),this._handleChunkEnd()},A.prototype._handleTRNS=function(c){this.simpleTransparency(),this.read(c,this._parseTRNS.bind(this))},A.prototype._parseTRNS=function(c){if(this._crc.write(c),this._colorType===i.COLORTYPE_PALETTE_COLOR){if(this._palette.length===0){this.error(new Error("Transparency chunk must be after palette"));return}if(c.length>this._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let u=0;u<c.length;u++)this._palette[u][3]=c[u];this.palette(this._palette)}this._colorType===i.COLORTYPE_GRAYSCALE&&this.transColor([c.readUInt16BE(0)]),this._colorType===i.COLORTYPE_COLOR&&this.transColor([c.readUInt16BE(0),c.readUInt16BE(2),c.readUInt16BE(4)]),this._handleChunkEnd()},A.prototype._handleGAMA=function(c){this.read(c,this._parseGAMA.bind(this))},A.prototype._parseGAMA=function(c){this._crc.write(c),this.gamma(c.readUInt32BE(0)/i.GAMMA_DIVISION),this._handleChunkEnd()},A.prototype._handleIDAT=function(c){this._emittedHeadersFinished||(this._emittedHeadersFinished=!0,this.headersFinished()),this.read(-c,this._parseIDAT.bind(this,c))},A.prototype._parseIDAT=function(c,u){if(this._crc.write(u),this._colorType===i.COLORTYPE_PALETTE_COLOR&&this._palette.length===0)throw new Error("Expected palette not found");this.inflateData(u);let f=c-u.length;f>0?this._handleIDAT(f):this._handleChunkEnd()},A.prototype._handleIEND=function(c){this.read(c,this._parseIEND.bind(this))},A.prototype._parseIEND=function(c){this._crc.write(c),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}}),o0=Ge(r=>{"use strict";var e=r0(),i=[function(){},function(f,p,g,m){if(m===p.length)throw new Error("Ran out of data");let E=p[m];f[g]=E,f[g+1]=E,f[g+2]=E,f[g+3]=255},function(f,p,g,m){if(m+1>=p.length)throw new Error("Ran out of data");let E=p[m];f[g]=E,f[g+1]=E,f[g+2]=E,f[g+3]=p[m+1]},function(f,p,g,m){if(m+2>=p.length)throw new Error("Ran out of data");f[g]=p[m],f[g+1]=p[m+1],f[g+2]=p[m+2],f[g+3]=255},function(f,p,g,m){if(m+3>=p.length)throw new Error("Ran out of data");f[g]=p[m],f[g+1]=p[m+1],f[g+2]=p[m+2],f[g+3]=p[m+3]}],a=[function(){},function(f,p,g,m){let E=p[0];f[g]=E,f[g+1]=E,f[g+2]=E,f[g+3]=m},function(f,p,g){let m=p[0];f[g]=m,f[g+1]=m,f[g+2]=m,f[g+3]=p[1]},function(f,p,g,m){f[g]=p[0],f[g+1]=p[1],f[g+2]=p[2],f[g+3]=m},function(f,p,g){f[g]=p[0],f[g+1]=p[1],f[g+2]=p[2],f[g+3]=p[3]}];function A(f,p){let g=[],m=0;function E(){if(m===f.length)throw new Error("Ran out of data");let b=f[m];m++;let y,Q,v,I,F,k,_,M;switch(p){default:throw new Error("unrecognised depth");case 16:_=f[m],m++,g.push((b<<8)+_);break;case 4:_=b&15,M=b>>4,g.push(M,_);break;case 2:F=b&3,k=b>>2&3,_=b>>4&3,M=b>>6&3,g.push(M,_,k,F);break;case 1:y=b&1,Q=b>>1&1,v=b>>2&1,I=b>>3&1,F=b>>4&1,k=b>>5&1,_=b>>6&1,M=b>>7&1,g.push(M,_,k,F,I,v,Q,y);break}}return{get:function(b){for(;g.length<b;)E();let y=g.slice(0,b);return g=g.slice(b),y},resetAfterLine:function(){g.length=0},end:function(){if(m!==f.length)throw new Error("extra data found")}}}function c(f,p,g,m,E,b){let y=f.width,Q=f.height,v=f.index;for(let I=0;I<Q;I++)for(let F=0;F<y;F++){let k=g(F,I,v);i[m](p,E,k,b),b+=m}return b}function u(f,p,g,m,E,b){let y=f.width,Q=f.height,v=f.index;for(let I=0;I<Q;I++){for(let F=0;F<y;F++){let k=E.get(m),_=g(F,I,v);a[m](p,k,_,b)}E.resetAfterLine()}}r.dataToBitMap=function(f,p){let g=p.width,m=p.height,E=p.depth,b=p.bpp,y=p.interlace,Q;E!==8&&(Q=A(f,E));let v;E<=8?v=Buffer.alloc(g*m*4):v=new Uint16Array(g*m*4);let I=Math.pow(2,E)-1,F=0,k,_;if(y)k=e.getImagePasses(g,m),_=e.getInterlaceIterator(g,m);else{let M=0;_=function(){let O=M;return M+=4,O},k=[{width:g,height:m}]}for(let M=0;M<k.length;M++)E===8?F=c(k[M],v,_,b,f,F):u(k[M],v,_,b,Q,I);if(E===8){if(F!==f.length)throw new Error("extra data found")}else Q.end();return v}}),A0=Ge((r,e)=>{"use strict";function i(c,u,f,p,g){let m=0;for(let E=0;E<p;E++)for(let b=0;b<f;b++){let y=g[c[m]];if(!y)throw new Error("index "+c[m]+" not in palette");for(let Q=0;Q<4;Q++)u[m+Q]=y[Q];m+=4}}function a(c,u,f,p,g){let m=0;for(let E=0;E<p;E++)for(let b=0;b<f;b++){let y=!1;if(g.length===1?g[0]===c[m]&&(y=!0):g[0]===c[m]&&g[1]===c[m+1]&&g[2]===c[m+2]&&(y=!0),y)for(let Q=0;Q<4;Q++)u[m+Q]=0;m+=4}}function A(c,u,f,p,g){let m=255,E=Math.pow(2,g)-1,b=0;for(let y=0;y<p;y++)for(let Q=0;Q<f;Q++){for(let v=0;v<4;v++)u[b+v]=Math.floor(c[b+v]*m/E+.5);b+=4}}e.exports=function(c,u,f=!1){let p=u.depth,g=u.width,m=u.height,E=u.colorType,b=u.transColor,y=u.palette,Q=c;return E===3?i(c,Q,g,m,y):(b&&a(c,Q,g,m,b),p!==8&&!f&&(p===16&&(Q=Buffer.alloc(g*m*4)),A(c,Q,g,m,p))),Q}}),TF=Ge((r,e)=>{"use strict";var i=We("util"),a=We("zlib"),A=t0(),c=FF(),u=a0(),f=o0(),p=A0(),g=e.exports=function(m){A.call(this),this._parser=new u(m,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=m,this.writable=!0,this._parser.start()};i.inherits(g,A),g.prototype._handleError=function(m){this.emit("error",m),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0},g.prototype._inflateData=function(m){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=a.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let E=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,b=Math.max(E,a.Z_MIN_CHUNK);this._inflate=a.createInflate({chunkSize:b});let y=E,Q=this.emit.bind(this,"error");this._inflate.on("error",function(I){y&&Q(I)}),this._filter.on("complete",this._complete.bind(this));let v=this._filter.write.bind(this._filter);this._inflate.on("data",function(I){y&&(I.length>y&&(I=I.slice(0,y)),y-=I.length,v(I))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(m)},g.prototype._handleMetaData=function(m){this._metaData=m,this._bitmapInfo=Object.create(m),this._filter=new c(this._bitmapInfo)},g.prototype._handleTransColor=function(m){this._bitmapInfo.transColor=m},g.prototype._handlePalette=function(m){this._bitmapInfo.palette=m},g.prototype._simpleTransparency=function(){this._metaData.alpha=!0},g.prototype._headersFinished=function(){this.emit("metadata",this._metaData)},g.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))},g.prototype._complete=function(m){if(this.errord)return;let E;try{let b=f.dataToBitMap(m,this._bitmapInfo);E=p(b,this._bitmapInfo,this._options.skipRescale),b=null}catch(b){this._handleError(b);return}this.emit("parsed",E)}}),SF=Ge((r,e)=>{"use strict";var i=es();e.exports=function(a,A,c,u){let f=[i.COLORTYPE_COLOR_ALPHA,i.COLORTYPE_ALPHA].indexOf(u.colorType)!==-1;if(u.colorType===u.inputColorType){let F=(function(){let k=new ArrayBuffer(2);return new DataView(k).setInt16(0,256,!0),new Int16Array(k)[0]!==256})();if(u.bitDepth===8||u.bitDepth===16&&F)return a}let p=u.bitDepth!==16?a:new Uint16Array(a.buffer),g=255,m=i.COLORTYPE_TO_BPP_MAP[u.inputColorType];m===4&&!u.inputHasAlpha&&(m=3);let E=i.COLORTYPE_TO_BPP_MAP[u.colorType];u.bitDepth===16&&(g=65535,E*=2);let b=Buffer.alloc(A*c*E),y=0,Q=0,v=u.bgColor||{};v.red===void 0&&(v.red=g),v.green===void 0&&(v.green=g),v.blue===void 0&&(v.blue=g);function I(){let F,k,_,M=g;switch(u.inputColorType){case i.COLORTYPE_COLOR_ALPHA:M=p[y+3],F=p[y],k=p[y+1],_=p[y+2];break;case i.COLORTYPE_COLOR:F=p[y],k=p[y+1],_=p[y+2];break;case i.COLORTYPE_ALPHA:M=p[y+1],F=p[y],k=F,_=F;break;case i.COLORTYPE_GRAYSCALE:F=p[y],k=F,_=F;break;default:throw new Error("input color type:"+u.inputColorType+" is not supported at present")}return u.inputHasAlpha&&(f||(M/=g,F=Math.min(Math.max(Math.round((1-M)*v.red+M*F),0),g),k=Math.min(Math.max(Math.round((1-M)*v.green+M*k),0),g),_=Math.min(Math.max(Math.round((1-M)*v.blue+M*_),0),g))),{red:F,green:k,blue:_,alpha:M}}for(let F=0;F<c;F++)for(let k=0;k<A;k++){let _=I(p,y);switch(u.colorType){case i.COLORTYPE_COLOR_ALPHA:case i.COLORTYPE_COLOR:u.bitDepth===8?(b[Q]=_.red,b[Q+1]=_.green,b[Q+2]=_.blue,f&&(b[Q+3]=_.alpha)):(b.writeUInt16BE(_.red,Q),b.writeUInt16BE(_.green,Q+2),b.writeUInt16BE(_.blue,Q+4),f&&b.writeUInt16BE(_.alpha,Q+6));break;case i.COLORTYPE_ALPHA:case i.COLORTYPE_GRAYSCALE:{let M=(_.red+_.green+_.blue)/3;u.bitDepth===8?(b[Q]=M,f&&(b[Q+1]=_.alpha)):(b.writeUInt16BE(M,Q),f&&b.writeUInt16BE(_.alpha,Q+2));break}default:throw new Error("unrecognised color Type "+u.colorType)}y+=m,Q+=E}return b}}),DF=Ge((r,e)=>{"use strict";var i=i0();function a(v,I,F,k,_){for(let M=0;M<F;M++)k[_+M]=v[I+M]}function A(v,I,F){let k=0,_=I+F;for(let M=I;M<_;M++)k+=Math.abs(v[M]);return k}function c(v,I,F,k,_,M){for(let O=0;O<F;O++){let P=O>=M?v[I+O-M]:0,R=v[I+O]-P;k[_+O]=R}}function u(v,I,F,k){let _=0;for(let M=0;M<F;M++){let O=M>=k?v[I+M-k]:0,P=v[I+M]-O;_+=Math.abs(P)}return _}function f(v,I,F,k,_){for(let M=0;M<F;M++){let O=I>0?v[I+M-F]:0,P=v[I+M]-O;k[_+M]=P}}function p(v,I,F){let k=0,_=I+F;for(let M=I;M<_;M++){let O=I>0?v[M-F]:0,P=v[M]-O;k+=Math.abs(P)}return k}function g(v,I,F,k,_,M){for(let O=0;O<F;O++){let P=O>=M?v[I+O-M]:0,R=I>0?v[I+O-F]:0,re=v[I+O]-(P+R>>1);k[_+O]=re}}function m(v,I,F,k){let _=0;for(let M=0;M<F;M++){let O=M>=k?v[I+M-k]:0,P=I>0?v[I+M-F]:0,R=v[I+M]-(O+P>>1);_+=Math.abs(R)}return _}function E(v,I,F,k,_,M){for(let O=0;O<F;O++){let P=O>=M?v[I+O-M]:0,R=I>0?v[I+O-F]:0,re=I>0&&O>=M?v[I+O-(F+M)]:0,q=v[I+O]-i(P,R,re);k[_+O]=q}}function b(v,I,F,k){let _=0;for(let M=0;M<F;M++){let O=M>=k?v[I+M-k]:0,P=I>0?v[I+M-F]:0,R=I>0&&M>=k?v[I+M-(F+k)]:0,re=v[I+M]-i(O,P,R);_+=Math.abs(re)}return _}var y={0:a,1:c,2:f,3:g,4:E},Q={0:A,1:u,2:p,3:m,4:b};e.exports=function(v,I,F,k,_){let M;if(!("filterType"in k)||k.filterType===-1)M=[0,1,2,3,4];else if(typeof k.filterType=="number")M=[k.filterType];else throw new Error("unrecognised filter types");k.bitDepth===16&&(_*=2);let O=I*_,P=0,R=0,re=Buffer.alloc((O+1)*F),q=M[0];for(let le=0;le<F;le++){if(M.length>1){let Ae=1/0;for(let ie=0;ie<M.length;ie++){let se=Q[M[ie]](v,R,O,_);se<Ae&&(q=M[ie],Ae=se)}}re[P]=q,P++,y[q](v,R,O,re,P,_),P+=O,R+=O}return re}}),l0=Ge((r,e)=>{"use strict";var i=es(),a=s0(),A=SF(),c=DF(),u=We("zlib"),f=e.exports=function(p){if(this._options=p,p.deflateChunkSize=p.deflateChunkSize||32*1024,p.deflateLevel=p.deflateLevel!=null?p.deflateLevel:9,p.deflateStrategy=p.deflateStrategy!=null?p.deflateStrategy:3,p.inputHasAlpha=p.inputHasAlpha!=null?p.inputHasAlpha:!0,p.deflateFactory=p.deflateFactory||u.createDeflate,p.bitDepth=p.bitDepth||8,p.colorType=typeof p.colorType=="number"?p.colorType:i.COLORTYPE_COLOR_ALPHA,p.inputColorType=typeof p.inputColorType=="number"?p.inputColorType:i.COLORTYPE_COLOR_ALPHA,[i.COLORTYPE_GRAYSCALE,i.COLORTYPE_COLOR,i.COLORTYPE_COLOR_ALPHA,i.COLORTYPE_ALPHA].indexOf(p.colorType)===-1)throw new Error("option color type:"+p.colorType+" is not supported at present");if([i.COLORTYPE_GRAYSCALE,i.COLORTYPE_COLOR,i.COLORTYPE_COLOR_ALPHA,i.COLORTYPE_ALPHA].indexOf(p.inputColorType)===-1)throw new Error("option input color type:"+p.inputColorType+" is not supported at present");if(p.bitDepth!==8&&p.bitDepth!==16)throw new Error("option bit depth:"+p.bitDepth+" is not supported at present")};f.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}},f.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())},f.prototype.filterData=function(p,g,m){let E=A(p,g,m,this._options),b=i.COLORTYPE_TO_BPP_MAP[this._options.colorType];return c(E,g,m,this._options,b)},f.prototype._packChunk=function(p,g){let m=g?g.length:0,E=Buffer.alloc(m+12);return E.writeUInt32BE(m,0),E.writeUInt32BE(p,4),g&&g.copy(E,8),E.writeInt32BE(a.crc32(E.slice(4,E.length-4)),E.length-4),E},f.prototype.packGAMA=function(p){let g=Buffer.alloc(4);return g.writeUInt32BE(Math.floor(p*i.GAMMA_DIVISION),0),this._packChunk(i.TYPE_gAMA,g)},f.prototype.packIHDR=function(p,g){let m=Buffer.alloc(13);return m.writeUInt32BE(p,0),m.writeUInt32BE(g,4),m[8]=this._options.bitDepth,m[9]=this._options.colorType,m[10]=0,m[11]=0,m[12]=0,this._packChunk(i.TYPE_IHDR,m)},f.prototype.packIDAT=function(p){return this._packChunk(i.TYPE_IDAT,p)},f.prototype.packIEND=function(){return this._packChunk(i.TYPE_IEND,null)}}),MF=Ge((r,e)=>{"use strict";var i=We("util"),a=We("stream"),A=es(),c=l0(),u=e.exports=function(f){a.call(this);let p=f||{};this._packer=new c(p),this._deflate=this._packer.createDeflate(),this.readable=!0};i.inherits(u,a),u.prototype.pack=function(f,p,g,m){this.emit("data",Buffer.from(A.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(p,g)),m&&this.emit("data",this._packer.packGAMA(m));let E=this._packer.filterData(f,p,g);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(b){this.emit("data",this._packer.packIDAT(b))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(E)}}),UF=Ge((r,e)=>{"use strict";var i=We("assert").ok,a=We("zlib"),A=We("util"),c=We("buffer").kMaxLength;function u(E){if(!(this instanceof u))return new u(E);E&&E.chunkSize<a.Z_MIN_CHUNK&&(E.chunkSize=a.Z_MIN_CHUNK),a.Inflate.call(this,E),this._offset=this._offset===void 0?this._outOffset:this._offset,this._buffer=this._buffer||this._outBuffer,E&&E.maxLength!=null&&(this._maxLength=E.maxLength)}function f(E){return new u(E)}function p(E,b){b&&process.nextTick(b),E._handle&&(E._handle.close(),E._handle=null)}u.prototype._processChunk=function(E,b,y){if(typeof y=="function")return a.Inflate._processChunk.call(this,E,b,y);let Q=this,v=E&&E.length,I=this._chunkSize-this._offset,F=this._maxLength,k=0,_=[],M=0,O;this.on("error",function(q){O=q});function P(q,le){if(Q._hadError)return;let Ae=I-le;if(i(Ae>=0,"have should not go down"),Ae>0){let ie=Q._buffer.slice(Q._offset,Q._offset+Ae);if(Q._offset+=Ae,ie.length>F&&(ie=ie.slice(0,F)),_.push(ie),M+=ie.length,F-=ie.length,F===0)return!1}return(le===0||Q._offset>=Q._chunkSize)&&(I=Q._chunkSize,Q._offset=0,Q._buffer=Buffer.allocUnsafe(Q._chunkSize)),le===0?(k+=v-q,v=q,!0):!1}i(this._handle,"zlib binding closed");let R;do R=this._handle.writeSync(b,E,k,v,this._buffer,this._offset,I),R=R||this._writeState;while(!this._hadError&&P(R[0],R[1]));if(this._hadError)throw O;if(M>=c)throw p(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+c.toString(16)+" bytes");let re=Buffer.concat(_,M);return p(this),re},A.inherits(u,a.Inflate);function g(E,b){if(typeof b=="string"&&(b=Buffer.from(b)),!(b instanceof Buffer))throw new TypeError("Not a string or buffer");let y=E._finishFlushFlag;return y==null&&(y=a.Z_FINISH),E._processChunk(b,y)}function m(E,b){return g(new u(b),E)}e.exports=r=m,r.Inflate=u,r.createInflate=f,r.inflateSync=m}),c0=Ge((r,e)=>{"use strict";var i=e.exports=function(a){this._buffer=a,this._reads=[]};i.prototype.read=function(a,A){this._reads.push({length:Math.abs(a),allowLess:a<0,func:A})},i.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let a=this._reads[0];if(this._buffer.length&&(this._buffer.length>=a.length||a.allowLess)){this._reads.shift();let A=this._buffer;this._buffer=A.slice(a.length),a.func.call(this,A.slice(0,a.length))}else break}if(this._reads.length>0)throw new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw new Error("unrecognised content at end of stream")}}),kF=Ge(r=>{"use strict";var e=c0(),i=n0();r.process=function(a,A){let c=[],u=new e(a);return new i(A,{read:u.read.bind(u),write:function(f){c.push(f)},complete:function(){}}).start(),u.process(),Buffer.concat(c)}}),YF=Ge((r,e)=>{"use strict";var i=!0,a=We("zlib"),A=UF();a.deflateSync||(i=!1);var c=c0(),u=kF(),f=a0(),p=o0(),g=A0();e.exports=function(m,E){if(!i)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let b;function y(se){b=se}let Q;function v(se){Q=se}function I(se){Q.transColor=se}function F(se){Q.palette=se}function k(){Q.alpha=!0}let _;function M(se){_=se}let O=[];function P(se){O.push(se)}let R=new c(m);if(new f(E,{read:R.read.bind(R),error:y,metadata:v,gamma:M,palette:F,transColor:I,inflateData:P,simpleTransparency:k}).start(),R.process(),b)throw b;let re=Buffer.concat(O);O.length=0;let q;if(Q.interlace)q=a.inflateSync(re);else{let se=((Q.width*Q.bpp*Q.depth+7>>3)+1)*Q.height;q=A(re,{chunkSize:se,maxLength:se})}if(re=null,!q||!q.length)throw new Error("bad png - invalid inflate data response");let le=u.process(q,Q);re=null;let Ae=p.dataToBitMap(le,Q);le=null;let ie=g(Ae,Q,E.skipRescale);return Q.data=ie,Q.gamma=_||0,Q}}),OF=Ge((r,e)=>{"use strict";var i=!0,a=We("zlib");a.deflateSync||(i=!1);var A=es(),c=l0();e.exports=function(u,f){if(!i)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let p=f||{},g=new c(p),m=[];m.push(Buffer.from(A.PNG_SIGNATURE)),m.push(g.packIHDR(u.width,u.height)),u.gamma&&m.push(g.packGAMA(u.gamma));let E=g.filterData(u.data,u.width,u.height),b=a.deflateSync(E,g.getDeflateOptions());if(E=null,!b||!b.length)throw new Error("bad png - invalid compressed data response");return m.push(g.packIDAT(b)),m.push(g.packIEND()),Buffer.concat(m)}}),NF=Ge(r=>{"use strict";var e=YF(),i=OF();r.read=function(a,A){return e(a,A||{})},r.write=function(a,A){return i(a,A)}}),RF=Ge(r=>{"use strict";var e=We("util"),i=We("stream"),a=TF(),A=MF(),c=NF(),u=r.PNG=function(f){i.call(this),f=f||{},this.width=f.width|0,this.height=f.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,f.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new a(f),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(p){this.data=p,this.emit("parsed",p)}.bind(this)),this._packer=new A(f),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};e.inherits(u,i),u.sync=c,u.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)},u.prototype.parse=function(f,p){if(p){let g,m;g=function(E){this.removeListener("error",m),this.data=E,p(null,this)}.bind(this),m=function(E){this.removeListener("parsed",g),p(E,null)}.bind(this),this.once("parsed",g),this.once("error",m)}return this.end(f),this},u.prototype.write=function(f){return this._parser.write(f),!0},u.prototype.end=function(f){this._parser.end(f)},u.prototype._metadata=function(f){this.width=f.width,this.height=f.height,this.emit("metadata",f)},u.prototype._gamma=function(f){this.gamma=f},u.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")},u.bitblt=function(f,p,g,m,E,b,y,Q){if(g|=0,m|=0,E|=0,b|=0,y|=0,Q|=0,g>f.width||m>f.height||g+E>f.width||m+b>f.height)throw new Error("bitblt reading outside image");if(y>p.width||Q>p.height||y+E>p.width||Q+b>p.height)throw new Error("bitblt writing outside image");for(let v=0;v<b;v++)f.data.copy(p.data,(Q+v)*p.width+y<<2,(m+v)*f.width+g<<2,(m+v)*f.width+g+E<<2)},u.prototype.bitblt=function(f,p,g,m,E,b,y){return u.bitblt(this,f,p,g,m,E,b,y),this},u.adjustGamma=function(f){if(f.gamma){for(let p=0;p<f.height;p++)for(let g=0;g<f.width;g++){let m=f.width*p+g<<2;for(let E=0;E<3;E++){let b=f.data[m+E]/255;b=Math.pow(b,1/2.2/f.gamma),f.data[m+E]=Math.round(b*255)}}f.gamma=0}},u.prototype.adjustGamma=function(){u.adjustGamma(this)}}),GF=Ge((r,e)=>{var i=i||function(c){return Buffer.from(c).toString("base64")};function a(c){var u=this,f=Math.round,p=Math.floor,g=new Array(64),m=new Array(64),E=new Array(64),b=new Array(64),y,Q,v,I,F=new Array(65535),k=new Array(65535),_=new Array(64),M=new Array(64),O=[],P=0,R=7,re=new Array(64),q=new Array(64),le=new Array(64),Ae=new Array(256),ie=new Array(2048),se,ye=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],fe=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],Pe=[0,1,2,3,4,5,6,7,8,9,10,11],Be=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],Ee=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],me=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],ke=[0,1,2,3,4,5,6,7,8,9,10,11],Fe=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],W=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function N(te){for(var ve=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99],be=0;be<64;be++){var ue=p((ve[be]*te+50)/100);ue<1?ue=1:ue>255&&(ue=255),g[ye[be]]=ue}for(var Me=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99],He=0;He<64;He++){var Le=p((Me[He]*te+50)/100);Le<1?Le=1:Le>255&&(Le=255),m[ye[He]]=Le}for(var Ne=[1,1.387039845,1.306562965,1.175875602,1,.785694958,.5411961,.275899379],de=0,ge=0;ge<8;ge++)for(var oe=0;oe<8;oe++)E[de]=1/(g[ye[de]]*Ne[ge]*Ne[oe]*8),b[de]=1/(m[ye[de]]*Ne[ge]*Ne[oe]*8),de++}function J(te,ve){for(var be=0,ue=0,Me=new Array,He=1;He<=16;He++){for(var Le=1;Le<=te[He];Le++)Me[ve[ue]]=[],Me[ve[ue]][0]=be,Me[ve[ue]][1]=He,ue++,be++;be*=2}return Me}function z(){y=J(fe,Pe),Q=J(me,ke),v=J(Be,Ee),I=J(Fe,W)}function j(){for(var te=1,ve=2,be=1;be<=15;be++){for(var ue=te;ue<ve;ue++)k[32767+ue]=be,F[32767+ue]=[],F[32767+ue][1]=be,F[32767+ue][0]=ue;for(var Me=-(ve-1);Me<=-te;Me++)k[32767+Me]=be,F[32767+Me]=[],F[32767+Me][1]=be,F[32767+Me][0]=ve-1+Me;te<<=1,ve<<=1}}function K(){for(var te=0;te<256;te++)ie[te]=19595*te,ie[te+256>>0]=38470*te,ie[te+512>>0]=7471*te+32768,ie[te+768>>0]=-11059*te,ie[te+1024>>0]=-21709*te,ie[te+1280>>0]=32768*te+8421375,ie[te+1536>>0]=-27439*te,ie[te+1792>>0]=-5329*te}function G(te){for(var ve=te[0],be=te[1]-1;be>=0;)ve&1<<be&&(P|=1<<R),be--,R--,R<0&&(P==255?(X(255),X(0)):X(P),R=7,P=0)}function X(te){O.push(te)}function D(te){X(te>>8&255),X(te&255)}function pe(te,ve){var be,ue,Me,He,Le,Ne,de,ge,oe=0,Ye,$=8,_e=64;for(Ye=0;Ye<$;++Ye){be=te[oe],ue=te[oe+1],Me=te[oe+2],He=te[oe+3],Le=te[oe+4],Ne=te[oe+5],de=te[oe+6],ge=te[oe+7];var Ue=be+ge,je=be-ge,ot=ue+de,Ke=ue-de,ut=Me+Ne,bt=Me-Ne,xt=He+Le,Ir=He-Le,hr=Ue+xt,Fr=Ue-xt,Tr=ot+ut,ht=ot-ut;te[oe]=hr+Tr,te[oe+4]=hr-Tr;var V=(ht+Fr)*.707106781;te[oe+2]=Fr+V,te[oe+6]=Fr-V,hr=Ir+bt,Tr=bt+Ke,ht=Ke+je;var Vr=(hr-ht)*.382683433,he=.5411961*hr+Vr,fr=1.306562965*ht+Vr,un=Tr*.707106781,rs=je+un,hn=je-un;te[oe+5]=hn+he,te[oe+3]=hn-he,te[oe+1]=rs+fr,te[oe+7]=rs-fr,oe+=8}for(oe=0,Ye=0;Ye<$;++Ye){be=te[oe],ue=te[oe+8],Me=te[oe+16],He=te[oe+24],Le=te[oe+32],Ne=te[oe+40],de=te[oe+48],ge=te[oe+56];var is=be+ge,li=be-ge,ns=ue+de,ss=ue-de,Fi=Me+Ne,fn=Me-Ne,as=He+Le,ka=He-Le,pr=is+as,Ti=is-as,Si=ns+Fi,ci=ns-Fi;te[oe]=pr+Si,te[oe+32]=pr-Si;var os=(ci+Ti)*.707106781;te[oe+16]=Ti+os,te[oe+48]=Ti-os,pr=ka+fn,Si=fn+ss,ci=ss+li;var ui=(pr-ci)*.382683433,pn=.5411961*pr+ui,As=1.306562965*ci+ui,ls=Si*.707106781,cs=li+ls,us=li-ls;te[oe+40]=us+pn,te[oe+24]=us-pn,te[oe+8]=cs+As,te[oe+56]=cs-As,oe++}var Di;for(Ye=0;Ye<_e;++Ye)Di=te[Ye]*ve[Ye],_[Ye]=Di>0?Di+.5|0:Di-.5|0;return _}function ce(){D(65504),D(16),X(74),X(70),X(73),X(70),X(0),X(1),X(1),X(0),D(1),D(1),X(0),X(0)}function Qe(te){if(te){D(65505),te[0]===69&&te[1]===120&&te[2]===105&&te[3]===102?D(te.length+2):(D(te.length+5+2),X(69),X(120),X(105),X(102),X(0));for(var ve=0;ve<te.length;ve++)X(te[ve])}}function Z(te,ve){D(65472),D(17),X(8),D(ve),D(te),X(3),X(1),X(17),X(0),X(2),X(17),X(1),X(3),X(17),X(1)}function H(){D(65499),D(132),X(0);for(var te=0;te<64;te++)X(g[te]);X(1);for(var ve=0;ve<64;ve++)X(m[ve])}function ne(){D(65476),D(418),X(0);for(var te=0;te<16;te++)X(fe[te+1]);for(var ve=0;ve<=11;ve++)X(Pe[ve]);X(16);for(var be=0;be<16;be++)X(Be[be+1]);for(var ue=0;ue<=161;ue++)X(Ee[ue]);X(1);for(var Me=0;Me<16;Me++)X(me[Me+1]);for(var He=0;He<=11;He++)X(ke[He]);X(17);for(var Le=0;Le<16;Le++)X(Fe[Le+1]);for(var Ne=0;Ne<=161;Ne++)X(W[Ne])}function Oe(te){typeof te>"u"||te.constructor!==Array||te.forEach(ve=>{if(typeof ve=="string"){D(65534);var be=ve.length;D(be+2);var ue;for(ue=0;ue<be;ue++)X(ve.charCodeAt(ue))}})}function De(){D(65498),D(12),X(3),X(1),X(0),X(2),X(17),X(3),X(17),X(0),X(63),X(0)}function it(te,ve,be,ue,Me){for(var He=Me[0],Le=Me[240],Ne,de=16,ge=63,oe=64,Ye=pe(te,ve),$=0;$<oe;++$)M[ye[$]]=Ye[$];var _e=M[0]-be;be=M[0],_e==0?G(ue[0]):(Ne=32767+_e,G(ue[k[Ne]]),G(F[Ne]));for(var Ue=63;Ue>0&&M[Ue]==0;Ue--);if(Ue==0)return G(He),be;for(var je=1,ot;je<=Ue;){for(var Ke=je;M[je]==0&&je<=Ue;++je);var ut=je-Ke;if(ut>=de){ot=ut>>4;for(var bt=1;bt<=ot;++bt)G(Le);ut=ut&15}Ne=32767+M[je],G(Me[(ut<<4)+k[Ne]]),G(F[Ne]),je++}return Ue!=ge&&G(He),be}function Ze(){for(var te=String.fromCharCode,ve=0;ve<256;ve++)Ae[ve]=te(ve)}this.encode=function(te,ve){var be=new Date().getTime();ve&&Xe(ve),O=new Array,P=0,R=7,D(65496),ce(),Oe(te.comments),Qe(te.exifBuffer),H(),Z(te.width,te.height),ne(),De();var ue=0,Me=0,He=0;P=0,R=7,this.encode.displayName="_encode_";for(var Le=te.data,Ne=te.width,de=te.height,ge=Ne*4,oe=Ne*3,Ye,$=0,_e,Ue,je,ot,Ke,ut,bt,xt;$<de;){for(Ye=0;Ye<ge;){for(ot=ge*$+Ye,Ke=ot,ut=-1,bt=0,xt=0;xt<64;xt++)bt=xt>>3,ut=(xt&7)*4,Ke=ot+bt*ge+ut,$+bt>=de&&(Ke-=ge*($+1+bt-de)),Ye+ut>=ge&&(Ke-=Ye+ut-ge+4),_e=Le[Ke++],Ue=Le[Ke++],je=Le[Ke++],re[xt]=(ie[_e]+ie[Ue+256>>0]+ie[je+512>>0]>>16)-128,q[xt]=(ie[_e+768>>0]+ie[Ue+1024>>0]+ie[je+1280>>0]>>16)-128,le[xt]=(ie[_e+1280>>0]+ie[Ue+1536>>0]+ie[je+1792>>0]>>16)-128;ue=it(re,E,ue,y,v),Me=it(q,b,Me,Q,I),He=it(le,b,He,Q,I),Ye+=32}$+=8}if(R>=0){var Ir=[];Ir[1]=R+1,Ir[0]=(1<<R+1)-1,G(Ir)}if(D(65497),typeof e>"u")return new Uint8Array(O);return Buffer.from(O);var hr,Fr};function Xe(te){if(te<=0&&(te=1),te>100&&(te=100),se!=te){var ve=0;te<50?ve=Math.floor(5e3/te):ve=Math.floor(200-te*2),N(ve),se=te}}function wt(){var te=new Date().getTime();c||(c=50),Ze(),z(),j(),K(),Xe(c);var ve=new Date().getTime()-te}wt()}typeof e<"u"?e.exports=A:typeof window<"u"&&(window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=A);function A(c,u){typeof u>"u"&&(u=50);var f=new a(u),p=f.encode(c,u);return{data:p,width:c.width,height:c.height}}}),LF=Ge((r,e)=>{var i=(function(){"use strict";var A=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),c=4017,u=799,f=3406,p=2276,g=1567,m=3784,E=5793,b=2896;function y(){}function Q(O,P){for(var R=0,re=[],q,le,Ae=16;Ae>0&&!O[Ae-1];)Ae--;re.push({children:[],index:0});var ie=re[0],se;for(q=0;q<Ae;q++){for(le=0;le<O[q];le++){for(ie=re.pop(),ie.children[ie.index]=P[R];ie.index>0;){if(re.length===0)throw new Error("Could not recreate Huffman Table");ie=re.pop()}for(ie.index++,re.push(ie);re.length<=q;)re.push(se={children:[],index:0}),ie.children[ie.index]=se.children,ie=se;R++}q+1<Ae&&(re.push(se={children:[],index:0}),ie.children[ie.index]=se.children,ie=se)}return re[0].children}function v(O,P,R,re,q,le,Ae,ie,se,ye){var fe=R.precision,Pe=R.samplesPerLine,Be=R.scanLines,Ee=R.mcusPerLine,me=R.progressive,ke=R.maxH,Fe=R.maxV,W=P,N=0,J=0;function z(){if(J>0)return J--,N>>J&1;if(N=O[P++],N==255){var de=O[P++];if(de)throw new Error("unexpected marker: "+(N<<8|de).toString(16))}return J=7,N>>>7}function j(de){for(var ge=de,oe;(oe=z())!==null;){if(ge=ge[oe],typeof ge=="number")return ge;if(typeof ge!="object")throw new Error("invalid huffman sequence")}return null}function K(de){for(var ge=0;de>0;){var oe=z();if(oe===null)return;ge=ge<<1|oe,de--}return ge}function G(de){var ge=K(de);return ge>=1<<de-1?ge:ge+(-1<<de)+1}function X(de,ge){var oe=j(de.huffmanTableDC),Ye=oe===0?0:G(oe);ge[0]=de.pred+=Ye;for(var $=1;$<64;){var _e=j(de.huffmanTableAC),Ue=_e&15,je=_e>>4;if(Ue===0){if(je<15)break;$+=16;continue}$+=je;var ot=A[$];ge[ot]=G(Ue),$++}}function D(de,ge){var oe=j(de.huffmanTableDC),Ye=oe===0?0:G(oe)<<se;ge[0]=de.pred+=Ye}function pe(de,ge){ge[0]|=z()<<se}var ce=0;function Qe(de,ge){if(ce>0){ce--;return}for(var oe=le,Ye=Ae;oe<=Ye;){var $=j(de.huffmanTableAC),_e=$&15,Ue=$>>4;if(_e===0){if(Ue<15){ce=K(Ue)+(1<<Ue)-1;break}oe+=16;continue}oe+=Ue;var je=A[oe];ge[je]=G(_e)*(1<<se),oe++}}var Z=0,H;function ne(de,ge){for(var oe=le,Ye=Ae,$=0;oe<=Ye;){var _e=A[oe],Ue=ge[_e]<0?-1:1;switch(Z){case 0:var je=j(de.huffmanTableAC),ot=je&15,$=je>>4;if(ot===0)$<15?(ce=K($)+(1<<$),Z=4):($=16,Z=1);else{if(ot!==1)throw new Error("invalid ACn encoding");H=G(ot),Z=$?2:3}continue;case 1:case 2:ge[_e]?ge[_e]+=(z()<<se)*Ue:($--,$===0&&(Z=Z==2?3:0));break;case 3:ge[_e]?ge[_e]+=(z()<<se)*Ue:(ge[_e]=H<<se,Z=0);break;case 4:ge[_e]&&(ge[_e]+=(z()<<se)*Ue);break}oe++}Z===4&&(ce--,ce===0&&(Z=0))}function Oe(de,ge,oe,Ye,$){var _e=oe/Ee|0,Ue=oe%Ee,je=_e*de.v+Ye,ot=Ue*de.h+$;de.blocks[je]===void 0&&ye.tolerantDecoding||ge(de,de.blocks[je][ot])}function De(de,ge,oe){var Ye=oe/de.blocksPerLine|0,$=oe%de.blocksPerLine;de.blocks[Ye]===void 0&&ye.tolerantDecoding||ge(de,de.blocks[Ye][$])}var it=re.length,Ze,Xe,wt,te,ve,be;me?le===0?be=ie===0?D:pe:be=ie===0?Qe:ne:be=X;var ue=0,Me,He;it==1?He=re[0].blocksPerLine*re[0].blocksPerColumn:He=Ee*R.mcusPerColumn,q||(q=He);for(var Le,Ne;ue<He;){for(Xe=0;Xe<it;Xe++)re[Xe].pred=0;if(ce=0,it==1)for(Ze=re[0],ve=0;ve<q;ve++)De(Ze,be,ue),ue++;else for(ve=0;ve<q;ve++){for(Xe=0;Xe<it;Xe++)for(Ze=re[Xe],Le=Ze.h,Ne=Ze.v,wt=0;wt<Ne;wt++)for(te=0;te<Le;te++)Oe(Ze,be,ue,wt,te);if(ue++,ue===He)break}if(ue===He)do{if(O[P]===255&&O[P+1]!==0)break;P+=1}while(P<O.length-2);if(J=0,Me=O[P]<<8|O[P+1],Me<65280)throw new Error("marker was not found");if(Me>=65488&&Me<=65495)P+=2;else break}return P-W}function I(O,P){var R=[],re=P.blocksPerLine,q=P.blocksPerColumn,le=re<<3,Ae=new Int32Array(64),ie=new Uint8Array(64);function se(W,N,J){var z=P.quantizationTable,j,K,G,X,D,pe,ce,Qe,Z,H=J,ne;for(ne=0;ne<64;ne++)H[ne]=W[ne]*z[ne];for(ne=0;ne<8;++ne){var Oe=8*ne;if(H[1+Oe]==0&&H[2+Oe]==0&&H[3+Oe]==0&&H[4+Oe]==0&&H[5+Oe]==0&&H[6+Oe]==0&&H[7+Oe]==0){Z=E*H[0+Oe]+512>>10,H[0+Oe]=Z,H[1+Oe]=Z,H[2+Oe]=Z,H[3+Oe]=Z,H[4+Oe]=Z,H[5+Oe]=Z,H[6+Oe]=Z,H[7+Oe]=Z;continue}j=E*H[0+Oe]+128>>8,K=E*H[4+Oe]+128>>8,G=H[2+Oe],X=H[6+Oe],D=b*(H[1+Oe]-H[7+Oe])+128>>8,Qe=b*(H[1+Oe]+H[7+Oe])+128>>8,pe=H[3+Oe]<<4,ce=H[5+Oe]<<4,Z=j-K+1>>1,j=j+K+1>>1,K=Z,Z=G*m+X*g+128>>8,G=G*g-X*m+128>>8,X=Z,Z=D-ce+1>>1,D=D+ce+1>>1,ce=Z,Z=Qe+pe+1>>1,pe=Qe-pe+1>>1,Qe=Z,Z=j-X+1>>1,j=j+X+1>>1,X=Z,Z=K-G+1>>1,K=K+G+1>>1,G=Z,Z=D*p+Qe*f+2048>>12,D=D*f-Qe*p+2048>>12,Qe=Z,Z=pe*u+ce*c+2048>>12,pe=pe*c-ce*u+2048>>12,ce=Z,H[0+Oe]=j+Qe,H[7+Oe]=j-Qe,H[1+Oe]=K+ce,H[6+Oe]=K-ce,H[2+Oe]=G+pe,H[5+Oe]=G-pe,H[3+Oe]=X+D,H[4+Oe]=X-D}for(ne=0;ne<8;++ne){var De=ne;if(H[8+De]==0&&H[16+De]==0&&H[24+De]==0&&H[32+De]==0&&H[40+De]==0&&H[48+De]==0&&H[56+De]==0){Z=E*J[ne+0]+8192>>14,H[0+De]=Z,H[8+De]=Z,H[16+De]=Z,H[24+De]=Z,H[32+De]=Z,H[40+De]=Z,H[48+De]=Z,H[56+De]=Z;continue}j=E*H[0+De]+2048>>12,K=E*H[32+De]+2048>>12,G=H[16+De],X=H[48+De],D=b*(H[8+De]-H[56+De])+2048>>12,Qe=b*(H[8+De]+H[56+De])+2048>>12,pe=H[24+De],ce=H[40+De],Z=j-K+1>>1,j=j+K+1>>1,K=Z,Z=G*m+X*g+2048>>12,G=G*g-X*m+2048>>12,X=Z,Z=D-ce+1>>1,D=D+ce+1>>1,ce=Z,Z=Qe+pe+1>>1,pe=Qe-pe+1>>1,Qe=Z,Z=j-X+1>>1,j=j+X+1>>1,X=Z,Z=K-G+1>>1,K=K+G+1>>1,G=Z,Z=D*p+Qe*f+2048>>12,D=D*f-Qe*p+2048>>12,Qe=Z,Z=pe*u+ce*c+2048>>12,pe=pe*c-ce*u+2048>>12,ce=Z,H[0+De]=j+Qe,H[56+De]=j-Qe,H[8+De]=K+ce,H[48+De]=K-ce,H[16+De]=G+pe,H[40+De]=G-pe,H[24+De]=X+D,H[32+De]=X-D}for(ne=0;ne<64;++ne){var it=128+(H[ne]+8>>4);N[ne]=it<0?0:it>255?255:it}}M(le*q*8);for(var ye,fe,Pe=0;Pe<q;Pe++){var Be=Pe<<3;for(ye=0;ye<8;ye++)R.push(new Uint8Array(le));for(var Ee=0;Ee<re;Ee++){se(P.blocks[Pe][Ee],ie,Ae);var me=0,ke=Ee<<3;for(fe=0;fe<8;fe++){var Fe=R[Be+fe];for(ye=0;ye<8;ye++)Fe[ke+ye]=ie[me++]}}}return R}function F(O){return O<0?0:O>255?255:O}y.prototype={load:function(O){var P=new XMLHttpRequest;P.open("GET",O,!0),P.responseType="arraybuffer",P.onload=function(){var R=new Uint8Array(P.response||P.mozResponseArrayBuffer);this.parse(R),this.onload&&this.onload()}.bind(this),P.send(null)},parse:function(O){var P=this.opts.maxResolutionInMP*1e3*1e3,R=0,re=O.length;function q(){var Ue=O[R]<<8|O[R+1];return R+=2,Ue}function le(){var Ue=q(),je=O.subarray(R,R+Ue-2);return R+=je.length,je}function Ae(Ue){var je=1,ot=1,Ke,ut;for(ut in Ue.components)Ue.components.hasOwnProperty(ut)&&(Ke=Ue.components[ut],je<Ke.h&&(je=Ke.h),ot<Ke.v&&(ot=Ke.v));var bt=Math.ceil(Ue.samplesPerLine/8/je),xt=Math.ceil(Ue.scanLines/8/ot);for(ut in Ue.components)if(Ue.components.hasOwnProperty(ut)){Ke=Ue.components[ut];var Ir=Math.ceil(Math.ceil(Ue.samplesPerLine/8)*Ke.h/je),hr=Math.ceil(Math.ceil(Ue.scanLines/8)*Ke.v/ot),Fr=bt*Ke.h,Tr=xt*Ke.v,ht=Tr*Fr,V=[];M(ht*256);for(var Vr=0;Vr<Tr;Vr++){for(var he=[],fr=0;fr<Fr;fr++)he.push(new Int32Array(64));V.push(he)}Ke.blocksPerLine=Ir,Ke.blocksPerColumn=hr,Ke.blocks=V}Ue.maxH=je,Ue.maxV=ot,Ue.mcusPerLine=bt,Ue.mcusPerColumn=xt}var ie=null,se=null,ye=null,fe,Pe,Be=[],Ee=[],me=[],ke=[],Fe=q(),W=-1;if(this.comments=[],Fe!=65496)throw new Error("SOI not found");for(Fe=q();Fe!=65497;){var N,J,z;switch(Fe){case 65280:break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:var j=le();if(Fe===65534){var K=String.fromCharCode.apply(null,j);this.comments.push(K)}Fe===65504&&j[0]===74&&j[1]===70&&j[2]===73&&j[3]===70&&j[4]===0&&(ie={version:{major:j[5],minor:j[6]},densityUnits:j[7],xDensity:j[8]<<8|j[9],yDensity:j[10]<<8|j[11],thumbWidth:j[12],thumbHeight:j[13],thumbData:j.subarray(14,14+3*j[12]*j[13])}),Fe===65505&&j[0]===69&&j[1]===120&&j[2]===105&&j[3]===102&&j[4]===0&&(this.exifBuffer=j.subarray(5,j.length)),Fe===65518&&j[0]===65&&j[1]===100&&j[2]===111&&j[3]===98&&j[4]===101&&j[5]===0&&(se={version:j[6],flags0:j[7]<<8|j[8],flags1:j[9]<<8|j[10],transformCode:j[11]});break;case 65499:for(var G=q(),X=G+R-2;R<X;){var D=O[R++];M(256);var pe=new Int32Array(64);if(D>>4)if(D>>4===1)for(J=0;J<64;J++){var ce=A[J];pe[ce]=q()}else throw new Error("DQT: invalid table spec");else for(J=0;J<64;J++){var ce=A[J];pe[ce]=O[R++]}Be[D&15]=pe}break;case 65472:case 65473:case 65474:q(),fe={},fe.extended=Fe===65473,fe.progressive=Fe===65474,fe.precision=O[R++],fe.scanLines=q(),fe.samplesPerLine=q(),fe.components={},fe.componentsOrder=[];var Qe=fe.scanLines*fe.samplesPerLine;if(Qe>P){var Z=Math.ceil((Qe-P)/1e6);throw new Error(`maxResolutionInMP limit exceeded by ${Z}MP`)}var H=O[R++],ne,Oe=0,De=0;for(N=0;N<H;N++){ne=O[R];var it=O[R+1]>>4,Ze=O[R+1]&15,Xe=O[R+2];if(it<=0||Ze<=0)throw new Error("Invalid sampling factor, expected values above 0");fe.componentsOrder.push(ne),fe.components[ne]={h:it,v:Ze,quantizationIdx:Xe},R+=3}Ae(fe),Ee.push(fe);break;case 65476:var wt=q();for(N=2;N<wt;){var te=O[R++],ve=new Uint8Array(16),be=0;for(J=0;J<16;J++,R++)be+=ve[J]=O[R];M(16+be);var ue=new Uint8Array(be);for(J=0;J<be;J++,R++)ue[J]=O[R];N+=17+be,(te>>4?me:ke)[te&15]=Q(ve,ue)}break;case 65501:q(),Pe=q();break;case 65500:q(),q();break;case 65498:var Me=q(),He=O[R++],Le=[],Ne;for(N=0;N<He;N++){Ne=fe.components[O[R++]];var de=O[R++];Ne.huffmanTableDC=ke[de>>4],Ne.huffmanTableAC=me[de&15],Le.push(Ne)}var ge=O[R++],oe=O[R++],Ye=O[R++],$=v(O,R,fe,Le,Pe,ge,oe,Ye>>4,Ye&15,this.opts);R+=$;break;case 65535:O[R]!==255&&R--;break;default:if(O[R-3]==255&&O[R-2]>=192&&O[R-2]<=254){R-=3;break}else if(Fe===224||Fe==225){if(W!==-1)throw new Error(`first unknown JPEG marker at offset ${W.toString(16)}, second unknown JPEG marker ${Fe.toString(16)} at offset ${(R-1).toString(16)}`);W=R-1;let Ue=q();if(O[R+Ue-2]===255){R+=Ue-2;break}}throw new Error("unknown JPEG marker "+Fe.toString(16))}Fe=q()}if(Ee.length!=1)throw new Error("only single frame JPEGs supported");for(var N=0;N<Ee.length;N++){var _e=Ee[N].components;for(var J in _e)_e[J].quantizationTable=Be[_e[J].quantizationIdx],delete _e[J].quantizationIdx}this.width=fe.samplesPerLine,this.height=fe.scanLines,this.jfif=ie,this.adobe=se,this.components=[];for(var N=0;N<fe.componentsOrder.length;N++){var Ne=fe.components[fe.componentsOrder[N]];this.components.push({lines:I(fe,Ne),scaleX:Ne.h/fe.maxH,scaleY:Ne.v/fe.maxV})}},getData:function(O,P){var R=this.width/O,re=this.height/P,q,le,Ae,ie,se,ye,fe,Pe,Be,Ee,me=0,ke,Fe,W,N,J,z,j,K,G,X,D,pe=O*P*this.components.length;M(pe);var ce=new Uint8Array(pe);switch(this.components.length){case 1:for(q=this.components[0],Ee=0;Ee<P;Ee++)for(se=q.lines[0|Ee*q.scaleY*re],Be=0;Be<O;Be++)ke=se[0|Be*q.scaleX*R],ce[me++]=ke;break;case 2:for(q=this.components[0],le=this.components[1],Ee=0;Ee<P;Ee++)for(se=q.lines[0|Ee*q.scaleY*re],ye=le.lines[0|Ee*le.scaleY*re],Be=0;Be<O;Be++)ke=se[0|Be*q.scaleX*R],ce[me++]=ke,ke=ye[0|Be*le.scaleX*R],ce[me++]=ke;break;case 3:for(D=!0,this.adobe&&this.adobe.transformCode?D=!0:typeof this.opts.colorTransform<"u"&&(D=!!this.opts.colorTransform),q=this.components[0],le=this.components[1],Ae=this.components[2],Ee=0;Ee<P;Ee++)for(se=q.lines[0|Ee*q.scaleY*re],ye=le.lines[0|Ee*le.scaleY*re],fe=Ae.lines[0|Ee*Ae.scaleY*re],Be=0;Be<O;Be++)D?(ke=se[0|Be*q.scaleX*R],Fe=ye[0|Be*le.scaleX*R],W=fe[0|Be*Ae.scaleX*R],K=F(ke+1.402*(W-128)),G=F(ke-.3441363*(Fe-128)-.71413636*(W-128)),X=F(ke+1.772*(Fe-128))):(K=se[0|Be*q.scaleX*R],G=ye[0|Be*le.scaleX*R],X=fe[0|Be*Ae.scaleX*R]),ce[me++]=K,ce[me++]=G,ce[me++]=X;break;case 4:if(!this.adobe)throw new Error("Unsupported color mode (4 components)");for(D=!1,this.adobe&&this.adobe.transformCode?D=!0:typeof this.opts.colorTransform<"u"&&(D=!!this.opts.colorTransform),q=this.components[0],le=this.components[1],Ae=this.components[2],ie=this.components[3],Ee=0;Ee<P;Ee++)for(se=q.lines[0|Ee*q.scaleY*re],ye=le.lines[0|Ee*le.scaleY*re],fe=Ae.lines[0|Ee*Ae.scaleY*re],Pe=ie.lines[0|Ee*ie.scaleY*re],Be=0;Be<O;Be++)D?(ke=se[0|Be*q.scaleX*R],Fe=ye[0|Be*le.scaleX*R],W=fe[0|Be*Ae.scaleX*R],N=Pe[0|Be*ie.scaleX*R],J=255-F(ke+1.402*(W-128)),z=255-F(ke-.3441363*(Fe-128)-.71413636*(W-128)),j=255-F(ke+1.772*(Fe-128))):(J=se[0|Be*q.scaleX*R],z=ye[0|Be*le.scaleX*R],j=fe[0|Be*Ae.scaleX*R],N=Pe[0|Be*ie.scaleX*R]),ce[me++]=255-J,ce[me++]=255-z,ce[me++]=255-j,ce[me++]=255-N;break;default:throw new Error("Unsupported color mode")}return ce},copyToImageData:function(O,P){var R=O.width,re=O.height,q=O.data,le=this.getData(R,re),Ae=0,ie=0,se,ye,fe,Pe,Be,Ee,me,ke,Fe;switch(this.components.length){case 1:for(ye=0;ye<re;ye++)for(se=0;se<R;se++)fe=le[Ae++],q[ie++]=fe,q[ie++]=fe,q[ie++]=fe,P&&(q[ie++]=255);break;case 3:for(ye=0;ye<re;ye++)for(se=0;se<R;se++)me=le[Ae++],ke=le[Ae++],Fe=le[Ae++],q[ie++]=me,q[ie++]=ke,q[ie++]=Fe,P&&(q[ie++]=255);break;case 4:for(ye=0;ye<re;ye++)for(se=0;se<R;se++)Be=le[Ae++],Ee=le[Ae++],fe=le[Ae++],Pe=le[Ae++],me=255-F(Be*(1-Pe/255)+Pe),ke=255-F(Ee*(1-Pe/255)+Pe),Fe=255-F(fe*(1-Pe/255)+Pe),q[ie++]=me,q[ie++]=ke,q[ie++]=Fe,P&&(q[ie++]=255);break;default:throw new Error("Unsupported color mode")}}};var k=0,_=0;function M(O=0){var P=k+O;if(P>_){var R=Math.ceil((P-_)/1024/1024);throw new Error(`maxMemoryUsageInMB limit exceeded by at least ${R}MB`)}k=P}return y.resetMaxMemoryUsage=function(O){k=0,_=O},y.getBytesAllocated=function(){return k},y.requestMemoryAllocation=M,y})();typeof e<"u"?e.exports=a:typeof window<"u"&&(window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=a);function a(A,c={}){var u={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},f={...u,...c},p=new Uint8Array(A),g=new i;g.opts=f,i.resetMaxMemoryUsage(f.maxMemoryUsageInMB*1024*1024),g.parse(p);var m=f.formatAsRGBA?4:3,E=g.width*g.height*m;try{i.requestMemoryAllocation(E);var b={width:g.width,height:g.height,exifBuffer:g.exifBuffer,data:f.useTArray?new Uint8Array(E):Buffer.alloc(E)};g.comments.length>0&&(b.comments=g.comments)}catch(y){throw y instanceof RangeError?new Error("Could not allocate enough memory for the image. Required: "+E):y instanceof ReferenceError&&y.message==="Buffer is not defined"?new Error("Buffer is not globally defined in this environment. Consider setting useTArray to true"):y}return g.copyToImageData(b,f.formatAsRGBA),b}}),PF=Ge((r,e)=>{var i=GF(),a=LF();e.exports={encode:i,decode:a}}),u0={};mF(u0,{Bitmap:()=>xa,Context:()=>g0,debug_list_of_fonts:()=>_F,decodeJPEGFromStream:()=>lT,decodePNGFromStream:()=>oT,encodeJPEGToStream:()=>AT,encodePNGToStream:()=>aT,make:()=>sT,measureText:()=>Gl,processTextPath:()=>Yl,registerFont:()=>jF});y0.exports=BF(u0);var Ml=(r=>(r[r.transparent=0]="transparent",r[r.aliceblue=4042850303]="aliceblue",r[r.antiquewhite=4209760255]="antiquewhite",r[r.aqua=16777215]="aqua",r[r.aquamarine=2147472639]="aquamarine",r[r.azure=4043309055]="azure",r[r.beige=4126530815]="beige",r[r.bisque=4293182719]="bisque",r[r.black=255]="black",r[r.blanchedalmond=4293643775]="blanchedalmond",r[r.blue=65535]="blue",r[r.blueviolet=2318131967]="blueviolet",r[r.brown=2771004159]="brown",r[r.burlywood=3736635391]="burlywood",r[r.cadetblue=1604231423]="cadetblue",r[r.chartreuse=2147418367]="chartreuse",r[r.chocolate=3530104575]="chocolate",r[r.coral=4286533887]="coral",r[r.cornflowerblue=1687547391]="cornflowerblue",r[r.cornsilk=4294499583]="cornsilk",r[r.crimson=3692313855]="crimson",r[r.cyan=16777215]="cyan",r[r.darkblue=35839]="darkblue",r[r.darkcyan=9145343]="darkcyan",r[r.darkgoldenrod=3095792639]="darkgoldenrod",r[r.darkgray=2846468607]="darkgray",r[r.darkgreen=6553855]="darkgreen",r[r.darkgrey=2846468607]="darkgrey",r[r.darkkhaki=3182914559]="darkkhaki",r[r.darkmagenta=2332068863]="darkmagenta",r[r.darkolivegreen=1433087999]="darkolivegreen",r[r.darkorange=4287365375]="darkorange",r[r.darkorchid=2570243327]="darkorchid",r[r.darkred=2332033279]="darkred",r[r.darksalmon=3918953215]="darksalmon",r[r.darkseagreen=2411499519]="darkseagreen",r[r.darkslateblue=1211993087]="darkslateblue",r[r.darkslategray=793726975]="darkslategray",r[r.darkslategrey=793726975]="darkslategrey",r[r.darkturquoise=13554175]="darkturquoise",r[r.darkviolet=2483082239]="darkviolet",r[r.deeppink=4279538687]="deeppink",r[r.deepskyblue=12582911]="deepskyblue",r[r.dimgray=1768516095]="dimgray",r[r.dimgrey=1768516095]="dimgrey",r[r.dodgerblue=512819199]="dodgerblue",r[r.firebrick=2988581631]="firebrick",r[r.floralwhite=4294635775]="floralwhite",r[r.forestgreen=579543807]="forestgreen",r[r.fuchsia=4278255615]="fuchsia",r[r.gainsboro=3705462015]="gainsboro",r[r.ghostwhite=4177068031]="ghostwhite",r[r.gold=4292280575]="gold",r[r.goldenrod=3668254975]="goldenrod",r[r.gray=2155905279]="gray",r[r.green=8388863]="green",r[r.greenyellow=2919182335]="greenyellow",r[r.grey=2155905279]="grey",r[r.honeydew=4043305215]="honeydew",r[r.hotpink=4285117695]="hotpink",r[r.indianred=3445382399]="indianred",r[r.indigo=1258324735]="indigo",r[r.ivory=4294963455]="ivory",r[r.khaki=4041641215]="khaki",r[r.lavender=3873897215]="lavender",r[r.lavenderblush=4293981695]="lavenderblush",r[r.lawngreen=2096890111]="lawngreen",r[r.lemonchiffon=4294626815]="lemonchiffon",r[r.lightblue=2916673279]="lightblue",r[r.lightcoral=4034953471]="lightcoral",r[r.lightcyan=3774873599]="lightcyan",r[r.lightgoldenrodyellow=4210742015]="lightgoldenrodyellow",r[r.lightgray=3553874943]="lightgray",r[r.lightgreen=2431553791]="lightgreen",r[r.lightgrey=3553874943]="lightgrey",r[r.lightpink=4290167295]="lightpink",r[r.lightsalmon=4288707327]="lightsalmon",r[r.lightseagreen=548580095]="lightseagreen",r[r.lightskyblue=2278488831]="lightskyblue",r[r.lightslategray=2005441023]="lightslategray",r[r.lightslategrey=2005441023]="lightslategrey",r[r.lightsteelblue=2965692159]="lightsteelblue",r[r.lightyellow=4294959359]="lightyellow",r[r.lime=16711935]="lime",r[r.limegreen=852308735]="limegreen",r[r.linen=4210091775]="linen",r[r.magenta=4278255615]="magenta",r[r.maroon=2147483903]="maroon",r[r.mediumaquamarine=1724754687]="mediumaquamarine",r[r.mediumblue=52735]="mediumblue",r[r.mediumorchid=3126187007]="mediumorchid",r[r.mediumpurple=2473647103]="mediumpurple",r[r.mediumseagreen=1018393087]="mediumseagreen",r[r.mediumslateblue=2070474495]="mediumslateblue",r[r.mediumspringgreen=16423679]="mediumspringgreen",r[r.mediumturquoise=1221709055]="mediumturquoise",r[r.mediumvioletred=3340076543]="mediumvioletred",r[r.midnightblue=421097727]="midnightblue",r[r.mintcream=4127193855]="mintcream",r[r.mistyrose=4293190143]="mistyrose",r[r.moccasin=4293178879]="moccasin",r[r.navajowhite=4292783615]="navajowhite",r[r.navy=33023]="navy",r[r.oldlace=4260751103]="oldlace",r[r.olive=2155872511]="olive",r[r.olivedrab=1804477439]="olivedrab",r[r.orange=4289003775]="orange",r[r.orangered=4282712319]="orangered",r[r.orchid=3664828159]="orchid",r[r.palegoldenrod=4008225535]="palegoldenrod",r[r.palegreen=2566625535]="palegreen",r[r.paleturquoise=2951671551]="paleturquoise",r[r.palevioletred=3681588223]="palevioletred",r[r.papayawhip=4293907967]="papayawhip",r[r.peachpuff=4292524543]="peachpuff",r[r.peru=3448061951]="peru",r[r.pink=4290825215]="pink",r[r.plum=3718307327]="plum",r[r.powderblue=2967529215]="powderblue",r[r.purple=2147516671]="purple",r[r.rebeccapurple=1714657791]="rebeccapurple",r[r.red=4278190335]="red",r[r.rosybrown=3163525119]="rosybrown",r[r.royalblue=1097458175]="royalblue",r[r.saddlebrown=2336560127]="saddlebrown",r[r.salmon=4202722047]="salmon",r[r.sandybrown=4104413439]="sandybrown",r[r.seagreen=780883967]="seagreen",r[r.seashell=4294307583]="seashell",r[r.sienna=2689740287]="sienna",r[r.silver=3233857791]="silver",r[r.skyblue=2278484991]="skyblue",r[r.slateblue=1784335871]="slateblue",r[r.slategray=1887473919]="slategray",r[r.slategrey=1887473919]="slategrey",r[r.snow=4294638335]="snow",r[r.springgreen=16744447]="springgreen",r[r.steelblue=1182971135]="steelblue",r[r.tan=3535047935]="tan",r[r.teal=8421631]="teal",r[r.thistle=3636451583]="thistle",r[r.tomato=4284696575]="tomato",r[r.turquoise=1088475391]="turquoise",r[r.violet=4001558271]="violet",r[r.wheat=4125012991]="wheat",r[r.white=4294967295]="white",r[r.whitesmoke=4126537215]="whitesmoke",r[r.yellow=4294902015]="yellow",r[r.yellowgreen=2597139199]="yellowgreen",r))(Ml||{}),ln=function(r,e,i,a){return(r<<24|e<<16|i<<8|a)>>>0},Ea=function(r,e){return r>>>8*(3-e)&255},on=function(r){return[Ea(r,0),Ea(r,1),Ea(r,2),Ea(r,3)]},wa=function(r){return r>>>0},oi=function(r,...e){let i=r;for(let a=0;a<e.length;a+=1)i=i|e[a];return i>>>0},ya=function(r,...e){let i=r;for(let a=0;a<e.length;a+=1)i=i&e[a];return i>>>0},Fl=function(r,e){return r<<e>>>0};function Rl(r,e,i){return r<e?e:r>i?i:r}var HF=function(r,e,i){return r+(e-r)*i};function Ul(r){if(!r)return 0;if(r.indexOf("#")===0){if(r.length===4){let e=parseInt(r[1],16),i=e<<4|e,a=parseInt(r[2],16),A=a<<4|a,c=parseInt(r[3],16),u=c<<4|c,f=wa(i<<16|A<<8|u);return f=Fl(f,8),oi(f,255)}else if(r.length===5){let e=parseInt(r[1],16),i=e<<4|e,a=parseInt(r[2],16),A=a<<4|a,c=parseInt(r[3],16),u=c<<4|c,f=parseInt(r[4],16),p=f<<4|f,g=wa(i<<16|A<<8|u);return g=Fl(g,8),oi(g,p)}else if(r.length===7){let e=wa(parseInt(r.substring(1),16));return e=Fl(e,8),oi(e,255)}else if(r.length===9)return wa(parseInt(r.substring(1),16))}if(r.indexOf("rgba")===0){let e=r.trim().substring(4).replace("(","").replace(")","").split(",");return ln(parseInt(e[0]),parseInt(e[1]),parseInt(e[2]),Math.floor(parseFloat(e[3])*255))}if(r.indexOf("rgb")===0){let e=r.trim().substring(3).replace("(","").replace(")","").split(",");return ln(parseInt(e[0]),parseInt(e[1]),parseInt(e[2]),255)}if(Ai.call(Ml,r))return Ml[r];throw new Error("unknown style format: "+r)}var Ai=Object.hasOwnProperty;function WF(r,e=Uint8Array){let i=r.reduce((c,u)=>c+u.length,0);if(!r.length)return null;let a=new e(i),A=0;for(let c of r)a.set(c,A),A+=c.length;return a}var Tl=class{constructor(...r){if(r.length===4){this.start={},this.end={},[this.start.x,this.start.y,this.end.x,this.end.y]=r;for(let e in r)if(Ai.call(r,e)&&typeof r[e]!="number")throw TypeError("When passing 4 arguments, only numbers may be passed")}else if(r.length===2)[this.start,this.end]=r;else throw Error("Please pass either two Point objects, or 4 integers to the constructor")}getLength(){return Math.sqrt(Math.pow(this.start.x-this.end.x,2)+Math.pow(this.start.y-this.end.y,2))}is_invalid(){return!!(Number.isNaN(this.start.x)||Number.isNaN(this.end.x)||Number.isNaN(this.start.y)||Number.isNaN(this.end.y)||this.start.x>Number.MAX_SAFE_INTEGER||this.start.y>Number.MAX_SAFE_INTEGER||this.end.x>Number.MAX_SAFE_INTEGER||this.end.y>Number.MAX_SAFE_INTEGER)}},lt=class Wr{constructor(e,i){this.x=e,this.y=i}clone(){return new Wr(this.x,this.y)}distance(e){return Math.sqrt(Math.pow(e.x-this.x,2)+Math.pow(e.y-this.y,2))}add(e){return new Wr(this.x+e.x,this.y+e.y)}subtract(e){return new Wr(this.x-e.x,this.y-e.y)}magnitude(){return Math.sqrt(this.dotProduct(this))}dotProduct(e){return this.x*e.x+this.y*e.y}divide(e){return new Wr(this.x/e,this.y/e)}floor(){return new Wr(Math.floor(this.x),Math.floor(this.y))}round(){return new Wr(Math.round(this.x),Math.round(this.y))}unit(){return this.divide(this.magnitude())}rotate(e){return new Wr(Math.cos(e)*this.x-Math.sin(e)*this.y,Math.sin(e)*this.x+Math.cos(e)*this.y)}scale(e){return new Wr(this.x*e,this.y*e)}equals(e){return this.x===e.x&&this.y===e.y}},Rm=r=>Math.PI/180*r;function JF(r){let e=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY,A=Number.NEGATIVE_INFINITY;return r.forEach(c=>{e=Math.min(e,c.x),i=Math.min(i,c.y),a=Math.max(a,c.x),A=Math.max(A,c.y)}),new kl(e,i,a,A)}var kl=class h0{constructor(e,i,a,A){this.x1=e,this.y1=i,this.x2=a,this.y2=A}contains(e){return!(e.x<this.x1||e.x>=this.x2||e.y<this.y1||e.y>=this.y2)}intersect(e){let i=Math.max(this.x1,e.x1),a=Math.max(this.y1,e.y1),A=Math.min(this.x2,e.x2),c=Math.min(this.y2,e.y2);return new h0(i,a,A,c)}},Gm=Ol(IF(),1),An={},VF=class{constructor(r,e,i,a,A){this.binary=r,this.family=e,this.weight=i,this.style=a,this.variant=A,this.loaded=!1,this.font=null}_load(r){if(this.loaded){r&&r();return}let e=function(i,a){if(i)throw new Error("Could not load font: "+i);this.loaded=!0,this.font=a,r&&r()}.bind(this);Gm.load(this.binary,e)}loadSync(){if(this.loaded)return this;try{return this.font=Gm.loadSync(this.binary),this.loaded=!0,this}catch(r){throw new Error("Could not load font: "+r)}}load(){return this.loadPromise()}loadPromise(){return new Promise((r,e)=>{this._load(()=>r())})}};function jF(r,e,i,a,A){return An[e]=new VF(r,e,i,a,A),An[e]}var _F=An;function f0(r){return An[r]||(r=Object.keys(An)[0]),An[r]}function Yl(r,e,i,a,A,c,u){let f=f0(r._font.family);if(!f){console.warn("Font missing",r._font);return}let p=Gl(r,e);(c==="end"||c==="right")&&(i=i-p.width),c==="center"&&(i=i-p.width/2),u==="top"&&(a=a+p.emHeightAscent),u==="middle"&&(a=a+p.emHeightAscent/2+p.emHeightDescent/2),u==="bottom"&&(a=a+p.emHeightDescent);let g=r._font.size;if(!f.loaded){console.warn("font not loaded yet",r._font);return}let m=f.font.getPath(e,i,a,g);r.beginPath(),m.commands.forEach(function(E){switch(E.type){case"M":r.moveTo(E.x,E.y);break;case"Q":r.quadraticCurveTo(E.x1,E.y1,E.x,E.y);break;case"L":r.lineTo(E.x,E.y);break;case"C":r.bezierCurveTo(E.x1,E.y1,E.x2,E.y2,E.x,E.y);break;case"Z":{r.closePath(),A?r.fill():r.stroke(),r.beginPath();break}}})}function Gl(r,e){let i=f0(r._font.family);if(!i)return console.warn("WARNING. Can't find font family ",r._font),{width:10,emHeightAscent:8,emHeightDescent:2};if(!i.font)return console.warn("WARNING. Can't find font family ",r._font),{width:10,emHeightAscent:8,emHeightDescent:2};let a=r._font.size,A=i.font.stringToGlyphs(e),c=0;return A.forEach(function(u){c+=u.advanceWidth}),{width:c/i.font.unitsPerEm*a,emHeightAscent:i.font.ascender/i.font.unitsPerEm*a,emHeightDescent:i.font.descender/i.font.unitsPerEm*a}}var Ii=class{constructor(){this.stops=[]}addColorStop(r,e){let i=Ul(""+e);this.stops.push({t:r,color:i})}_lerpStops(r){r<0&&(r+=1),r>1&&(r-=1);let e=this.stops.slice().reverse().find(p=>p.t<=r),i=this.stops.find(p=>p.t>r);i||(i=this.stops.at(-1));let a=p0(r,e.t,i.t,0,1),A=p=>on(p).map(g=>g/255),c=A(e.color),u=A(i.color),f=c.map((p,g)=>HF(p,u[g],a));return(p=>{let g=p.map(m=>m*255);return ln(g[0],g[1],g[2],255)})(f)}},ZF=class extends Ii{constructor(r,e,i,a){super(),this.start=new lt(r,e),this.end=new lt(i,a)}colorAt(r,e){let i=new lt(r,e),a=this.end.subtract(this.start),A=a.magnitude();a=a.divide(A);let c=i.subtract(this.start).dotProduct(a);return c=Rl(c/A,0,1),this._lerpStops(c)}},XF=class extends Ii{constructor(r,e,i,a){super(),this.start=new lt(r,e)}colorAt(r,e){let i=new lt(r,e).distance(this.start),a=Rl(i/10,0,1);return this._lerpStops(a)}};function p0(r,e,i,a,A){return(r-e)/(i-e)*(A-a)+a}var zF=class extends Ii{constructor(r,e,i){super(),this.angle=r,this.start=new lt(e,i)}colorAt(r,e){let i=this.start.subtract(new lt(r,e)),a=Math.atan2(i.y,i.x)-this.angle,A=p0(a,-Math.PI,Math.PI,0,1);return this._lerpStops(A)}},Lm=[1,0,0,1,0,0],qF=class d0{constructor(e){this.context=e,this.matrix=[1,0,0,1,0,0],this.stack=[]}getMatrix(){return this.matrix}setMatrix(e){this.matrix=[e[0],e[1],e[2],e[3],e[4],e[5]],this.setTransform()}cloneMatrix(e){return[e[0],e[1],e[2],e[3],e[4],e[5]]}cloneTransform(){let e=new d0;return e.setMatrix(this.getMatrix()),e}identity(){this.matrix=Lm,this.setTransform()}isIdentity(){for(let e=0;e<this.matrix.length;e++)if(this.matrix[e]!==Lm[e])return!1;return!0}fromDomMatrix(e){return[e.a,e.b,e.c,e.d,e.e,e.f]}asDomMatrix(){return{is2D:!0,isIdentity:!1,a:this.matrix[0],b:this.matrix[1],c:this.matrix[2],d:this.matrix[3],e:this.matrix[4]}}multiply(e){let i=this.matrix[0]*e[0]+this.matrix[2]*e[1],a=this.matrix[1]*e[0]+this.matrix[3]*e[1],A=this.matrix[0]*e[2]+this.matrix[2]*e[3],c=this.matrix[1]*e[2]+this.matrix[3]*e[3],u=this.matrix[0]*e[4]+this.matrix[2]*e[5]+this.matrix[4],f=this.matrix[1]*e[4]+this.matrix[3]*e[5]+this.matrix[5];this.matrix[0]=i,this.matrix[1]=a,this.matrix[2]=A,this.matrix[3]=c,this.matrix[4]=u,this.matrix[5]=f,this.setTransform()}invert(){let e=1/(this.matrix[0]*this.matrix[3]-this.matrix[1]*this.matrix[2]),i=this.matrix[3]*e,a=-this.matrix[1]*e,A=-this.matrix[2]*e,c=this.matrix[0]*e,u=e*(this.matrix[2]*this.matrix[5]-this.matrix[3]*this.matrix[4]),f=e*(this.matrix[1]*this.matrix[4]-this.matrix[0]*this.matrix[5]);this.matrix[0]=i,this.matrix[1]=a,this.matrix[2]=A,this.matrix[3]=c,this.matrix[4]=u,this.matrix[5]=f,this.setTransform()}save(){let e=this.cloneMatrix(this.getMatrix());this.stack.push(e),this.context&&this.context.save()}restore(){if(this.stack.length>0){let e=this.stack.pop();this.setMatrix(e)}this.context&&this.context.restore()}setTransform(){this.context}translate(e,i){this.matrix[4]+=this.matrix[0]*e+this.matrix[2]*i,this.matrix[5]+=this.matrix[1]*e+this.matrix[3]*i,this.setTransform()}rotate(e){let i=Math.cos(e),a=Math.sin(e),A=this.matrix[0]*i+this.matrix[2]*a,c=this.matrix[1]*i+this.matrix[3]*a,u=this.matrix[0]*-a+this.matrix[2]*i,f=this.matrix[1]*-a+this.matrix[3]*i;this.matrix[0]=A,this.matrix[1]=c,this.matrix[2]=u,this.matrix[3]=f,this.setTransform()}scale(e,i){this.matrix[0]*=e,this.matrix[1]*=e,this.matrix[2]*=i,this.matrix[3]*=i,this.setTransform()}transformPoint(e){let i=e.x,a=e.y;return new lt(i*this.matrix[0]+a*this.matrix[2]+this.matrix[4],i*this.matrix[1]+a*this.matrix[3]+this.matrix[5])}},g0=class{constructor(r){this._bitmap=r,this._fillColor=255,this._strokeColor=255,this._lineWidth=1,this._globalAlpha=1,this._transform=new qF,this._font={family:"invalid",size:12},this.textAlign="start",this.textBaseline="alphabetic",this.imageSmoothingEnabled=!0,this._clip=null,this._fillStyle_text="",this._strokeStyle_text="",this.states=[]}get canvas(){return this._bitmap}get lineWidth(){return this._lineWidth}set lineWidth(r){this._lineWidth=r}get globalAlpha(){return this._globalAlpha}set globalAlpha(r){this._globalAlpha=Rl(r,0,1)}get font(){return`${this._font.size} ${this._font.family}`}set font(r){let e=r.trim().indexOf(" ");this._font.size=parseInt(r.slice(0,e)),this._font.family=r.slice(e).trim()}get fillStyle(){return this._fillStyle_text}set fillStyle(r){r instanceof Ii?this._fillColor=r:(this._fillColor=Ul(r),this._fillStyle_text=r)}get strokeStyle(){return this._strokeStyle_text}set strokeStyle(r){r instanceof Ii?this._strokeStyle_text=r.toString():(this._strokeColor=Ul(r),this._strokeStyle_text=r)}createLinearGradient(r,e,i,a){return new ZF(r,e,i,a)}createRadialGradient(r,e){return new XF(r,e)}createConicGradient(r,e,i){return new zF(r,e,i)}save(){this.states.push({_clip:this._clip}),this._transform.save()}translate(r,e){this._transform.translate(r,e)}rotate(r){this._transform.rotate(r)}scale(r,e){this._transform.scale(r,e)}transform(...r){let e=[...r];this._transform.multiply(e)}setTransform(...r){if(this._transform.identity(),r[0].is2D){let e=this._transform.fromDomMatrix(r[0]);this._transform.multiply(e)}else this._transform.multiply([...r])}getTransform(){return this._transform.asDomMatrix()}restore(){this._transform.restore();let r=this.states.pop();r&&(this._clip=r._clip)}fillRect(r,e,i,a){if(this._transform.isIdentity()){if(typeof this._fillColor=="number"&&on(this._fillColor)[3]===255){for(let A=r;A<r+i;A++)for(let c=e;c<e+a;c++)this.pixelInsideClip(A,c)&&this._bitmap._isValidCoords(A,c)&&this._bitmap.setPixelRGBA(A,c,this._fillColor);return}for(let A=r;A<r+i;A++)for(let c=e;c<e+a;c++)this.fillPixelWithColor(A,c,this.calculateRGBA(A,c))}else{let A=this.path,c=this._closed;this.beginPath(),this.rect(r-1e-4,e-1e-4,i,a),this.closePath(),this.fill(),this.path=A,this._closed=c}}clearRect(r,e,i,a){for(let A=r;A<r+i;A++)for(let c=e;c<e+a;c++)this._bitmap._isValidCoords(r,e)&&this._bitmap.setPixelRGBA(A,c,0)}strokeRect(r,e,i,a){for(let A=r;A<r+i;A++)this.fillPixelWithColor(A,e,this.calculateRGBA_stroke(A,e)),this.fillPixelWithColor(A,e+a,this.calculateRGBA_stroke(A,e+a));for(let A=e;A<e+a;A++)this.fillPixelWithColor(r,A,this.calculateRGBA_stroke(r,A)),this.fillPixelWithColor(r+i,A,this.calculateRGBA_stroke(r+i,A))}strokePixel(r,e){if(!this.pixelInsideClip(r,e))return;let i=this.calculateRGBA_stroke(r,e),a=this._bitmap.getPixelRGBA(r,e),A=this.composite(a,i);this._bitmap.setPixelRGBA(r,e,A)}fillPixelWithColor(r,e,i){if(!this.pixelInsideClip(r,e)||!this._bitmap._isValidCoords(r,e))return;let a=i,A=this._bitmap.getPixelRGBA(r,e),c=this.composite(A,a);this._bitmap.setPixelRGBA(r,e,c)}composite(r,e){let i=on(r),a=on(e),A=a.map(p=>p/255),c=i.map(p=>p/255);A[3]=A[3]*this._globalAlpha;function u(p,g,m,E){return(p*m+g*E*(1-m))/(m+E*(1-m))}let f=A.slice(0,3).map((p,g)=>u(A[g],c[g],A[3],c[3])).map(p=>p*255);return ln(f[0],f[1],f[2],Math.max(i[3],a[3]))}calculateRGBA(r,e){return this._fillColor instanceof Ii?this._fillColor.colorAt(r,e):this._fillColor}calculateRGBA_stroke(r,e){return this._strokeColor instanceof Ii?this._strokeColor.colorAt(r,e):this._strokeColor}getImageData(r,e,i,a){return this._bitmap._copySubBitmap(r,e,i,a)}putImageData(r,e,i){this._bitmap._pasteSubBitmap(r,e,i)}drawImage(r,e,i,a,A,c,u,f,p){if(typeof a>"u")return this.drawImage(r,0,0,r.width,r.height,e,i,r.width,r.height);if(typeof c>"u")return this.drawImage(r,0,0,r.width,r.height,e,i,a,A);let g=new kl(e,i,e+a,i+A),m=[new lt(c,u),new lt(c+f,u),new lt(c+f,u+p),new lt(c,u+p)];m=m.map(v=>this._transform.transformPoint(v));let E=JF(m),b=new kl(0,0,this._bitmap.width,this._bitmap.height);E=E.intersect(b);let y=this._transform.cloneTransform();y.invert();function Q(v,I,F,k,_){return(v-I)/(F-I)*(_-k)+k}for(let v=E.x1;v<E.x2;v++)for(let I=E.y1;I<E.y2;I++){let F=new lt(v,I),k=y.transformPoint(F).round();if(k=new lt(Q(k.x,c,c+f,e,e+a),Q(k.y,u,u+p,i,i+A)),g.contains(k)&&this.pixelInsideClip(F.x,F.y)&&this._bitmap._isValidCoords(F.x,F.y)){let _=r.getPixelRGBA(k.x,k.y),M=this._bitmap.getPixelRGBA(F.x,F.y),O=this.composite(M,_);this._bitmap.setPixelRGBA(F.x,F.y,O)}}}beginPath(){this.path=[],this._closed=!1}moveTo(r,e){return this._moveTo(new lt(r,e))}_moveTo(r){r=this._transform.transformPoint(r),this.pathstart=r,this.path.push(["m",r])}lineTo(r,e){return this._lineTo(new lt(r,e))}_lineTo(r){this.path.push(["l",this._transform.transformPoint(r)])}quadraticCurveTo(r,e,i,a){let A=this._transform.transformPoint(new lt(r,e)),c=this._transform.transformPoint(new lt(i,a));this.path.push(["q",A,c])}bezierCurveTo(r,e,i,a,A,c){this._bezierCurveTo(new lt(r,e),new lt(i,a),new lt(A,c))}_bezierCurveTo(r,e,i){r=this._transform.transformPoint(r),e=this._transform.transformPoint(e),i=this._transform.transformPoint(i),this.path.push(["b",r,e,i])}arc(r,e,i,a,A,c){function u(p){let g=r+Math.cos(p)*i,m=e+Math.sin(p)*i;return new lt(g,m)}a>A&&(A+=Math.PI*2);let f=Math.PI/16;if(c){let p=A;A=a+Math.PI*2,a=p}this._moveTo(u(a));for(let p=a;p<=A;p+=f)this._lineTo(u(p));this._lineTo(u(A))}arcTo(){throw new Error("arcTo not yet supported")}rect(r,e,i,a){this.moveTo(r,e),this.lineTo(r+i,e),this.lineTo(r+i,e+a),this.lineTo(r,e+a),this.lineTo(r,e)}roundRect(r,e,i,a,A){let c={bl:0,br:0,tr:0,tl:0};typeof A>"u"&&(c={bl:0,br:0,tr:0,tl:0}),typeof A=="number"&&(c={tl:A,tr:A,br:A,bl:A}),Array.isArray(A)&&(A.length===0&&(c={bl:0,br:0,tr:0,tl:0}),A.length===1&&(c={tl:A[0],tr:A[0],br:A[0],bl:A[0]}),A.length===2&&(c={tl:A[0],tr:A[1],br:A[0],bl:A[1]}),A.length===3&&(c={tl:A[0],tr:A[1],br:A[2],bl:A[1]}),A.length===4&&(c={tl:A[0],tr:A[1],br:A[2],bl:A[3]})),this.moveTo(r+c.tl,e),this.lineTo(r+i-c.tr,e),this.quadraticCurveTo(r+i,e,r+i,e+c.tr),this.lineTo(r+i,e+a-c.br),this.quadraticCurveTo(r+i,e+a,r+i-c.br,e+a),this.lineTo(r+c.bl,e+a),this.quadraticCurveTo(r,e+a,r,e+a-c.bl),this.lineTo(r,e+c.tl),this.quadraticCurveTo(r,e,r+c.tl,e),this.lineTo(r+c.tl,e)}ellipse(){throw new Error("ellipse not yet supported")}clip(){this._clip=an(this.path)}measureText(r){return Gl(this,r)}closePath(){if(!this._closed){if(!this.pathstart){console.warn("missing path start");let r=this.path[0];r[0]==="l"&&(this.pathstart=r[1])}this.path.push(["l",this.pathstart]),this._closed=!0}}stroke(){let r=KF(this.path),e=$F(r,this.lineWidth/2),i=an(e),a=this.fillStyle;if(this.fillStyle=this.strokeStyle,this.imageSmoothingEnabled?this.fill_aa(i):this.fill_noaa(i),this.fillStyle=a,this.debug){this.save();let A=this.strokeStyle,c=this.lineWidth;this.strokeStyle="red",this.lineWidth=1,console.log("path is",this.path),an(this.path).forEach(u=>this.drawLine(u)),console.log("flat path is",r),an(r).forEach(u=>this.drawLine(u)),console.log("stroke path is",e),an(e).forEach(u=>this.drawLine(u)),console.log("final lines are",i),this.strokeStyle=A,this.lineWidth=c,this.restore()}}drawLine(r){if(r.is_invalid())return console.error("cannot draw line",r);this.imageSmoothingEnabled?this.drawLine_aa(r):this.drawLine_noaa(r)}drawLine_noaa(r){let e=Math.floor(r.start.x),i=Math.floor(r.start.y),a=Math.floor(r.end.x),A=Math.floor(r.end.y),c=Math.abs(a-e),u=e<a?1:-1,f=Math.abs(A-i),p=i<A?1:-1,g=(c>f?c:-f)/2;for(;this.strokePixel(e,i),!(e===a&&i===A);){let m=g;m>-c&&(g-=f,e+=u),m<f&&(g+=c,i+=p)}}drawLine_aa(r){let e=this._lineWidth,i=Math.floor(r.start.x),a=Math.floor(r.start.y),A=Math.floor(r.end.x),c=Math.floor(r.end.y),u=Math.abs(A-i),f=i<A?1:-1,p=Math.abs(c-a),g=a<c?1:-1,m=u-p,E,b,y,Q=u+p===0?1:Math.sqrt(u*u+p*p),v=ya(this.calculateRGBA_stroke(i,a),4294967040),I=ya(this.calculateRGBA_stroke(i,a),255);for(e=(e+1)/2;;){let F=255-~~Math.max(0,255*(Math.abs(m-u+p)/Q-e+1)),k=oi(v,I*F/255);if(this.fillPixelWithColor(i,a,k),E=m,b=i,2*E>=-u){for(E+=p,y=a;E<Q*e&&(c!==y||u>p);E+=u){let _=255-~~Math.max(0,255*(Math.abs(E)/Q-e+1)),M=oi(v,I*_/255);this.fillPixelWithColor(i,y+=g,M)}if(i===A)break;E=m,m-=p,i+=f}if(2*E<=p){for(E=u-E;E<Q*e&&(A!==b||u<p);E+=p){let _=255-~~Math.max(0,255*(Math.abs(E)/Q-e+1)),M=oi(v,I*_/255);this.fillPixelWithColor(b+=f,a,M)}if(a===c)break;m+=u,a+=g}}}fill(){this._closed||this.closePath();let r=an(this.path);this.imageSmoothingEnabled?this.fill_aa(r):this.fill_noaa(r)}fill_aa(r){let e=Hm(r),i=Math.min(e.y2+1,this._bitmap.height),a=Math.max(e.y-1,0);for(let A=i;A>=a;A--){let c=Sl(r,A);for(let u=0;u<c.length;u+=2){let f=Pm(c[u]),p=Pm(c[u+1]),g=Math.floor(c[u]),m=Math.floor(c[u+1]);for(let E=g;E<=m;E++){let b=ya(this.calculateRGBA(E,A),4294967040),y=ya(this.calculateRGBA(E,A),255),Q=this.calculateRGBA(E,A);if(E===g){let v=oi(b,(1-f)*y);this.fillPixelWithColor(E,A,v);continue}if(E===m){let v=oi(b,p*y);this.fillPixelWithColor(E,A,v);continue}this.fillPixelWithColor(E,A,Q)}}}}fill_noaa(r){let e=Hm(r),i=Math.min(e.y2+1,this._bitmap.height),a=Math.max(e.y-1,0);for(let A=i;A>=a;A--){let c=Sl(r,A);for(let u=0;u<c.length;u+=2){let f=Math.floor(c[u]),p=Math.floor(c[u+1]);for(let g=f;g<=p;g++){let m=this.calculateRGBA(g,A);if(g===f){this.fillPixelWithColor(g,A,m);continue}if(g===p){this.fillPixelWithColor(g,A,m);continue}this.fillPixelWithColor(g,A,m)}}}}pixelInsideClip(r,e){return this._clip?Sl(this._clip,e).filter(i=>i<r).length%2!==0:!0}fillText(r,e,i){Yl(this,r,e,i,!0,this.textAlign,this.textBaseline)}strokeText(r,e,i){Yl(this,r,e,i,!1,this.textAlign,this.textBaseline)}};function Pm(r){return r-Math.floor(r)}function an(r){let e=[],i=null;return r.forEach(function(a){if(a[0]==="m"&&(i=a[1]),a[0]==="l"){let A=a[1];e.push(new Tl(i,A)),i=A}if(a[0]==="q"){let A=[i,a[1],a[2]];for(let c=0;c<1;c+=.1){let u=tT(A,c);e.push(new Tl(i,u)),i=u}}if(a[0]==="b"){let A=[i,a[1],a[2],a[3]];m0(A,10).forEach(c=>{e.push(new Tl(i,c)),i=c})}}),e}function KF(r){let e=[],i=null;return r.forEach(a=>{if(a[0]==="m"){i=a[1],e.push(["m",new lt(i.x,i.y)]);return}if(a[0]==="l"){i=a[1],e.push(["l",new lt(i.x,i.y)]);return}if(a[0]==="b"){let A=[i,a[1],a[2],a[3]],c=m0(A,10);for(let u=1;u<c.length;u+=2)e.push(["l",new lt(c[u].x,c[u].y)]);i=a[3]}}),e}function $F(r,e){let i=[],a=[];r.forEach(u=>{u[0]==="m"&&(a.length>0&&i.push(a),a=[]),a.push(u)}),a.length>0&&i.push(a),i.forEach(u=>{u[0][0]!=="m"&&console.warn("missing a starting move command!")});let A=i.map(u=>eT(u,e)),c=[];return A.forEach(u=>u.forEach(f=>c.push(f))),c}function eT(r,e){let i=null,a=[],A=[],c=null;function u(m,E,b){m.equals(E)&&console.log("same points!",m,E);let y=m.subtract(E).unit(),Q=y.rotate(Rm(90)),v=y.rotate(Rm(-90));return[Q.scale(b).add(E),v.scale(b).add(E)]}let f=null;function p(m){return m<-Math.PI?m+Math.PI*2:m>+Math.PI?m-Math.PI*2:m}r.forEach(function(m,E){if(m[0]==="m"&&(i=m[1],f=m,c=i.clone(),a.push(["m",c.clone()])),m[0]==="l"){let b=i,y=m[1];if(b.equals(y))return console.warn("can't project the same paths",E,m,b,y);let Q=r[E+1];if(f[0]==="m"){let R=u(y,b,e);a.push(["l",R[1]]),A.push(["l",R[0]])}if(f=m,!Q){let R=u(b,y,e);a.push(["l",R[0]]),A.push(["l",R[1]]);return}let v=Q[1];if(v.equals(y))return console.warn("can't project the same paths",E,m,b,y);let I=b.subtract(y),F=v.subtract(y),k=Math.atan2(I.y,I.x),_=Math.atan2(F.y,F.x),M=p(_-k),O=u(b,y,e),P=u(v,y,e);if(M<0){a.push(["l",O[0]]),a.push(["l",P[1]]);let R=e/Math.cos((Math.PI+M)/2),re=b.subtract(y).unit().rotate(M/2).scale(R).add(y);A.push(["l",re])}else{let R=e/Math.cos(-(Math.PI-M)/2);R>10&&(R=10);let re=v.subtract(y).unit().rotate(-M/2).scale(R).add(y);a.push(["l",re]),A.push(["l",O[1]]),A.push(["l",P[0]])}i=y}}),A.reverse();let g=[].concat(a).concat(A);return g.push(["l",c]),g}function tT(r,e){let i=(1-e)*(1-e)*r[0].x+2*(1-e)*e*r[1].x+e*e*r[2].x,a=(1-e)*(1-e)*r[0].y+2*(1-e)*e*r[1].y+e*e*r[2].y;return new lt(i,a)}function m0(r,e){function i(a){if(iT(a)<e)return[a[0],a[3]];let A=rT(a,.5);return i(A[0]).concat(i(A[1]))}return i(r)}function rT(r,e){let i=r[0],a=r[1],A=r[2],c=r[3],u=Kn(i,a,e),f=Kn(a,A,e),p=Kn(c,A,e),g=Kn(u,f,e),m=Kn(f,p,e),E={x:(m.x-g.x)*e+g.x,y:(m.y-g.y)*e+g.y};return[[i,u,g,E],[E,m,p,c]]}function iT(r){let e=r[0],i=r[1],a=r[2],A=r[3],c=Math.pow(3*i.x-2*e.x-A.x,2),u=Math.pow(3*i.y-2*e.y-A.y,2),f=Math.pow(3*a.x-2*A.x-e.x,2),p=Math.pow(3*a.y-2*A.y-e.y,2);return c<f&&(c=f),u<p&&(u=p),c+u}function Kn(r,e,i){return{x:(e.x-r.x)*i+r.x,y:(e.y-r.y)*i+r.y}}function Hm(r){let e={x:Number.MAX_VALUE,y:Number.MAX_VALUE,x2:Number.MIN_VALUE,y2:Number.MIN_VALUE};function i(a){e.x=Math.min(e.x,a.x),e.y=Math.min(e.y,a.y),e.x2=Math.max(e.x2,a.x),e.y2=Math.max(e.y2,a.y)}return r.forEach(function(a){i(a.start),i(a.end)}),e}function Sl(r,e){let i=[];for(let a=0;a<r.length;a++){let A=r[a].start,c=r[a].end;if(A.y<e&&c.y>=e||c.y<e&&A.y>=e){let u=A.x+(e-A.y)/(c.y-A.y)*(c.x-A.x);i.push(u)}}return i.sort(function(a,A){return a-A})}var xa=class B0{constructor(e,i){this.width=Math.floor(e),this.height=Math.floor(i),this.data=new Uint8Array(this.width*this.height*4);let a=255;for(let A=0;A<this.height;A++)for(let c=0;c<this.width;c++)this.setPixelRGBA(c,A,a);this._context=new g0(this)}calculateIndex(e,i){return e=Math.floor(e),i=Math.floor(i),e<0||i<0||e>=this.width||i>=this.height?0:(this.width*i+e)*4}setPixelRGBA(e,i,a){this.validate_coords(e,i);let A=this.calculateIndex(e,i),c=on(a);this.data[A+0]=c[0],this.data[A+1]=c[1],this.data[A+2]=c[2],this.data[A+3]=c[3]}setPixelRGBA_i(e,i,a,A,c,u){let f=this.calculateIndex(e,i);this.data[f+0]=a,this.data[f+1]=A,this.data[f+2]=c,this.data[f+3]=u}getPixelRGBA(e,i){this.validate_coords(e,i);let a=this.calculateIndex(e,i);return ln(this.data[a+0],this.data[a+1],this.data[a+2],this.data[a+3])}getDebugPixelRGBA(e,i){let a=this.calculateIndex(e,i),A=this.width,c=this.height,u=this.data;return console.dir({i:a,width:A,height:c,data:u}),ln(this.data[a+0],this.data[a+1],this.data[a+2],this.data[a+3])}getPixelRGBA_separate(e,i){let a=this.calculateIndex(e,i);return this.data.slice(a,a+4)}getContext(e){return e==="2d"?this._context:null}_copySubBitmap(e,i,a,A){let c=new B0(a,A);for(let u=0;u<a;u++)for(let f=0;f<A;f++){let p=this.calculateIndex(e+u,i+f),g=c.calculateIndex(u,f);for(let m=0;m<4;m++)c.data[g+m]=this.data[p+m]}return c}_pasteSubBitmap(e,i,a){for(let A=0;A<e.width;A++)for(let c=0;c<e.height;c++){let u=this.calculateIndex(i+A,a+c),f=e.calculateIndex(A,c);for(let p=0;p<4;p++)this.data[u+p]=e.data[f+p]}}_isValidCoords(e,i){return!(e<0||i<0||e>=this.width||i>=this.height)}validate_coords(e,i){if(e<0)throw new Error(`Invalid Index: x ${e} <0`);if(i<0)throw new Error(`Invalid Index: y ${i} <0`);if(e>=this.width)throw new Error(`Invalid Index: x ${e} >= width ${this.width}`);if(i>=this.height)throw new Error(`Invalid Index: y ${i} >= height ${this.height}`)}},nT=Ol(RF(),1),E0=Ol(PF(),1),{PNG:w0}=nT;function sT(r,e){return new xa(r,e)}function aT(r,e,i={}){return new Promise((a,A)=>{if(!Ai.call(r,"data")||!Ai.call(r,"width")||!Ai.call(r,"height"))return A(new TypeError("Invalid bitmap image provided"));let c=new w0({width:r.width,height:r.height,deflateLevel:i.deflateLevel||9,deflateStrategy:i.deflateStrategy||3});for(let u=0;u<r.width;u++)for(let f=0;f<r.height;f++){let p=r.getPixelRGBA(u,f),g=(f*r.width+u)*4,m=on(p);for(let E=0;E<4;E++)c.data[g+E]=m[E]}c.on("error",u=>{A(u)}).pack().pipe(e).on("finish",()=>{a()}).on("error",u=>{A(u)})})}function oT(r){return new Promise((e,i)=>{r.pipe(new w0).on("parsed",function(){let a=new xa(this.width,this.height);for(let A=0;A<a.data.length;A++)a.data[A]=this.data[A];e(a)}).on("error",function(a){i(a)})})}function AT(r,e,i=90){return new Promise((a,A)=>{if(!Ai.call(r,"data")||!Ai.call(r,"width")||!Ai.call(r,"height"))return A(new TypeError("Invalid bitmap image provided"));let c={data:r.data,width:r.width,height:r.height};e.on("error",u=>A(u)),e.write(E0.encode(c,i).data,()=>{e.end(),a()})})}function lT(r,e){return new Promise((i,a)=>{try{let A=[];r.on("data",c=>A.push(c)),r.on("end",()=>{let c=WF(A),u=null;try{u=E0.decode(c,e)}catch(p){a(p);return}let f=new xa(u.width,u.height);for(let p=0;p<u.width;p++)for(let g=0;g<u.height;g++){let m=(g*u.width+p)*4;f.setPixelRGBA_i(p,g,u.data[m+0],u.data[m+1],u.data[m+2],u.data[m+3])}i(f)}),r.on("error",c=>{a(c)})}catch(A){console.log(A),a(A)}})}});var Q0=ae((x0,Qa)=>{var b0=(()=>{var r=Object.defineProperty,e=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.prototype.hasOwnProperty,A=(t,n)=>{for(var s in n)r(t,s,{get:n[s],enumerable:!0})},c=(t,n,s,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let l of i(n))!a.call(t,l)&&l!==s&&r(t,l,{get:()=>n[l],enumerable:!(o=e(n,l))||o.enumerable});return t},u=t=>c(r({},"__esModule",{value:!0}),t),f={};A(f,{BoundingBox:()=>Ee,Font:()=>pu,Glyph:()=>Ui,Path:()=>z,_parse:()=>he,load:()=>jy,loadSync:()=>_y,parse:()=>Vy});var p=0,g=-3;function m(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function E(t,n){this.source=t,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=n,this.destLen=0,this.ltree=new m,this.dtree=new m}var b=new m,y=new m,Q=new Uint8Array(30),v=new Uint16Array(30),I=new Uint8Array(30),F=new Uint16Array(30),k=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),_=new m,M=new Uint8Array(320);function O(t,n,s,o){var l,h;for(l=0;l<s;++l)t[l]=0;for(l=0;l<30-s;++l)t[l+s]=l/s|0;for(h=o,l=0;l<30;++l)n[l]=h,h+=1<<t[l]}function P(t,n){var s;for(s=0;s<7;++s)t.table[s]=0;for(t.table[7]=24,t.table[8]=152,t.table[9]=112,s=0;s<24;++s)t.trans[s]=256+s;for(s=0;s<144;++s)t.trans[24+s]=s;for(s=0;s<8;++s)t.trans[168+s]=280+s;for(s=0;s<112;++s)t.trans[176+s]=144+s;for(s=0;s<5;++s)n.table[s]=0;for(n.table[5]=32,s=0;s<32;++s)n.trans[s]=s}var R=new Uint16Array(16);function re(t,n,s,o){var l,h;for(l=0;l<16;++l)t.table[l]=0;for(l=0;l<o;++l)t.table[n[s+l]]++;for(t.table[0]=0,h=0,l=0;l<16;++l)R[l]=h,h+=t.table[l];for(l=0;l<o;++l)n[s+l]&&(t.trans[R[n[s+l]]++]=l)}function q(t){t.bitcount--||(t.tag=t.source[t.sourceIndex++],t.bitcount=7);var n=t.tag&1;return t.tag>>>=1,n}function le(t,n,s){if(!n)return s;for(;t.bitcount<24;)t.tag|=t.source[t.sourceIndex++]<<t.bitcount,t.bitcount+=8;var o=t.tag&65535>>>16-n;return t.tag>>>=n,t.bitcount-=n,o+s}function Ae(t,n){for(;t.bitcount<24;)t.tag|=t.source[t.sourceIndex++]<<t.bitcount,t.bitcount+=8;var s=0,o=0,l=0,h=t.tag;do o=2*o+(h&1),h>>>=1,++l,s+=n.table[l],o-=n.table[l];while(o>=0);return t.tag=h,t.bitcount-=l,n.trans[s+o]}function ie(t,n,s){var o,l,h,d,B,w;for(o=le(t,5,257),l=le(t,5,1),h=le(t,4,4),d=0;d<19;++d)M[d]=0;for(d=0;d<h;++d){var x=le(t,3,0);M[k[d]]=x}for(re(_,M,0,19),B=0;B<o+l;){var C=Ae(t,_);switch(C){case 16:var S=M[B-1];for(w=le(t,2,3);w;--w)M[B++]=S;break;case 17:for(w=le(t,3,3);w;--w)M[B++]=0;break;case 18:for(w=le(t,7,11);w;--w)M[B++]=0;break;default:M[B++]=C;break}}re(n,M,0,o),re(s,M,o,l)}function se(t,n,s){for(;;){var o=Ae(t,n);if(o===256)return p;if(o<256)t.dest[t.destLen++]=o;else{var l,h,d,B;for(o-=257,l=le(t,Q[o],v[o]),h=Ae(t,s),d=t.destLen-le(t,I[h],F[h]),B=d;B<d+l;++B)t.dest[t.destLen++]=t.dest[B]}}}function ye(t){for(var n,s,o;t.bitcount>8;)t.sourceIndex--,t.bitcount-=8;if(n=t.source[t.sourceIndex+1],n=256*n+t.source[t.sourceIndex],s=t.source[t.sourceIndex+3],s=256*s+t.source[t.sourceIndex+2],n!==(~s&65535))return g;for(t.sourceIndex+=4,o=n;o;--o)t.dest[t.destLen++]=t.source[t.sourceIndex++];return t.bitcount=0,p}function fe(t,n){var s=new E(t,n),o,l,h;do{switch(o=q(s),l=le(s,2,0),l){case 0:h=ye(s);break;case 1:h=se(s,b,y);break;case 2:ie(s,s.ltree,s.dtree),h=se(s,s.ltree,s.dtree);break;default:h=g}if(h!==p)throw new Error("Data error")}while(!o);return s.destLen<s.dest.length?typeof s.dest.slice=="function"?s.dest.slice(0,s.destLen):s.dest.subarray(0,s.destLen):s.dest}P(b,y),O(Q,v,4,3),O(I,F,2,1),Q[28]=0,v[28]=258;function Pe(t,n,s,o,l){return Math.pow(1-l,3)*t+3*Math.pow(1-l,2)*l*n+3*(1-l)*Math.pow(l,2)*s+Math.pow(l,3)*o}function Be(){this.x1=Number.NaN,this.y1=Number.NaN,this.x2=Number.NaN,this.y2=Number.NaN}Be.prototype.isEmpty=function(){return isNaN(this.x1)||isNaN(this.y1)||isNaN(this.x2)||isNaN(this.y2)},Be.prototype.addPoint=function(t,n){typeof t=="number"&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=t,this.x2=t),t<this.x1&&(this.x1=t),t>this.x2&&(this.x2=t)),typeof n=="number"&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=n,this.y2=n),n<this.y1&&(this.y1=n),n>this.y2&&(this.y2=n))},Be.prototype.addX=function(t){this.addPoint(t,null)},Be.prototype.addY=function(t){this.addPoint(null,t)},Be.prototype.addBezier=function(t,n,s,o,l,h,d,B){let w=[t,n],x=[s,o],C=[l,h],S=[d,B];this.addPoint(t,n),this.addPoint(d,B);for(let T=0;T<=1;T++){let Y=6*w[T]-12*x[T]+6*C[T],U=-3*w[T]+9*x[T]-9*C[T]+3*S[T],L=3*x[T]-3*w[T];if(U===0){if(Y===0)continue;let Re=-L/Y;0<Re&&Re<1&&(T===0&&this.addX(Pe(w[T],x[T],C[T],S[T],Re)),T===1&&this.addY(Pe(w[T],x[T],C[T],S[T],Re)));continue}let ee=Math.pow(Y,2)-4*L*U;if(ee<0)continue;let Te=(-Y+Math.sqrt(ee))/(2*U);0<Te&&Te<1&&(T===0&&this.addX(Pe(w[T],x[T],C[T],S[T],Te)),T===1&&this.addY(Pe(w[T],x[T],C[T],S[T],Te)));let xe=(-Y-Math.sqrt(ee))/(2*U);0<xe&&xe<1&&(T===0&&this.addX(Pe(w[T],x[T],C[T],S[T],xe)),T===1&&this.addY(Pe(w[T],x[T],C[T],S[T],xe)))}},Be.prototype.addQuad=function(t,n,s,o,l,h){let d=t+.6666666666666666*(s-t),B=n+2/3*(o-n),w=d+1/3*(l-t),x=B+1/3*(h-n);this.addBezier(t,n,d,B,w,x,l,h)};var Ee=Be;function me(){this.commands=[],this.fill="black",this.stroke=null,this.strokeWidth=1}var ke={};function Fe(t,n){let s=Math.floor(t),o=t-s;if(ke[n]||(ke[n]={}),ke[n][o]!==void 0){let h=ke[n][o];return s+h}let l=+(Math.round(o+"e+"+n)+"e-"+n);return ke[n][o]=l,s+l}function W(t){let n=[[]],s=0,o=0;for(let l=0;l<t.length;l+=1){let h=n[n.length-1],d=t[l],B=h[0],w=h[1],x=h[h.length-1],C=t[l+1];h.push(d),d.type==="M"?(s=d.x,o=d.y):d.type==="L"&&(!C||C.type==="Z")?Math.abs(d.x-s)>1||Math.abs(d.y-o)>1||h.pop():d.type==="L"&&x&&x.x===d.x&&x.y===d.y?h.pop():d.type==="Z"&&(B&&w&&x&&B.type==="M"&&w.type==="L"&&x.type==="L"&&x.x===B.x&&x.y===B.y&&(h.shift(),h[0].type="M"),l+1<t.length&&n.push([]))}return t=[].concat.apply([],n),t}function N(t){return Object.assign({},{decimalPlaces:2,optimize:!0,flipY:!0,flipYBase:void 0,scale:1,x:0,y:0},t)}function J(t){return parseInt(t)===t&&(t={decimalPlaces:t,flipY:!1}),Object.assign({},{decimalPlaces:2,optimize:!0,flipY:!0,flipYBase:void 0},t)}me.prototype.fromSVG=function(t,n={}){typeof SVGPathElement<"u"&&t instanceof SVGPathElement&&(t=t.getAttribute("d")),n=N(n),this.commands=[];let s="0123456789",o="MmLlQqCcZzHhVv",l="SsTtAa",h="-+",d={},B=[""],w=!1;function x(U){return U.filter(L=>L.length).map(L=>{let ee=parseFloat(L);return(n.decimalPlaces||n.decimalPlaces===0)&&(ee=Fe(ee,n.decimalPlaces)),ee})}function C(U){if(!this.commands.length)return U;let L=this.commands[this.commands.length-1];for(let ee=0;ee<U.length;ee++)U[ee]+=L[ee&1?"y":"x"];return U}function S(){if(d.type===void 0)return;let U=d.type.toUpperCase(),L=U!=="Z"&&d.type.toUpperCase()!==d.type,ee=x(B);if(B=[""],!ee.length&&U!=="Z")return;L&&U!=="H"&&U!=="V"&&(ee=C.apply(this,[ee]));let Te=this.commands.length&&this.commands[this.commands.length-1].x||0,xe=this.commands.length&&this.commands[this.commands.length-1].y||0;switch(U){case"M":this.moveTo(...ee);break;case"L":this.lineTo(...ee);break;case"V":for(let Re=0;Re<ee.length;Re++){let Je=0;L&&(Je=this.commands.length&&this.commands[this.commands.length-1].y||0),this.lineTo(Te,ee[Re]+Je)}break;case"H":for(let Re=0;Re<ee.length;Re++){let Je=0;L&&(Je=this.commands.length&&this.commands[this.commands.length-1].x||0),this.lineTo(ee[Re]+Je,xe)}break;case"C":this.bezierCurveTo(...ee);break;case"Q":this.quadraticCurveTo(...ee);break;case"Z":(this.commands.length<1||this.commands[this.commands.length-1].type!=="Z")&&this.close();break}if(this.commands.length)for(let Re in this.commands[this.commands.length-1])this.commands[this.commands.length-1][Re]===void 0&&(this.commands[this.commands.length-1][Re]=0)}for(let U=0;U<t.length;U++){let L=t.charAt(U),ee=B[B.length-1];if(s.indexOf(L)>-1)B[B.length-1]+=L;else if(h.indexOf(L)>-1)if(!d.type&&!this.commands.length&&(d.type="L"),L==="-")!d.type||ee.indexOf("-")>0?w=!0:ee.length?B.push("-"):B[B.length-1]=L;else if(!d.type||ee.length>0)w=!0;else continue;else if(o.indexOf(L)>-1)d.type?(S.apply(this),d={type:L}):d.type=L;else{if(l.indexOf(L)>-1)throw new Error("Unsupported path command: "+L+". Currently supported commands are "+o.split("").join(", ")+".");` ,
130
- \r\f\v`.indexOf(L)>-1?B.push(""):L==="."?!d.type||ee.indexOf(L)>-1?w=!0:B[B.length-1]+=L:w=!0}if(w)throw new Error("Unexpected character: "+L+" at offset "+U)}S.apply(this),n.optimize&&(this.commands=W(this.commands));let T=n.flipY,Y=n.flipYBase;if(T===!0&&n.flipYBase===void 0){let U=this.getBoundingBox();Y=U.y1+U.y2}for(let U in this.commands){let L=this.commands[U];for(let ee in L)["x","x1","x2"].includes(ee)?this.commands[U][ee]=n.x+L[ee]*n.scale:["y","y1","y2"].includes(ee)&&(this.commands[U][ee]=n.y+(T?Y-L[ee]:L[ee])*n.scale)}return this},me.fromSVG=function(t,n){return new me().fromSVG(t,n)},me.prototype.moveTo=function(t,n){this.commands.push({type:"M",x:t,y:n})},me.prototype.lineTo=function(t,n){this.commands.push({type:"L",x:t,y:n})},me.prototype.curveTo=me.prototype.bezierCurveTo=function(t,n,s,o,l,h){this.commands.push({type:"C",x1:t,y1:n,x2:s,y2:o,x:l,y:h})},me.prototype.quadTo=me.prototype.quadraticCurveTo=function(t,n,s,o){this.commands.push({type:"Q",x1:t,y1:n,x:s,y:o})},me.prototype.close=me.prototype.closePath=function(){this.commands.push({type:"Z"})},me.prototype.extend=function(t){if(t.commands)t=t.commands;else if(t instanceof Ee){let n=t;this.moveTo(n.x1,n.y1),this.lineTo(n.x2,n.y1),this.lineTo(n.x2,n.y2),this.lineTo(n.x1,n.y2),this.close();return}Array.prototype.push.apply(this.commands,t)},me.prototype.getBoundingBox=function(){let t=new Ee,n=0,s=0,o=0,l=0;for(let h=0;h<this.commands.length;h++){let d=this.commands[h];switch(d.type){case"M":t.addPoint(d.x,d.y),n=o=d.x,s=l=d.y;break;case"L":t.addPoint(d.x,d.y),o=d.x,l=d.y;break;case"Q":t.addQuad(o,l,d.x1,d.y1,d.x,d.y),o=d.x,l=d.y;break;case"C":t.addBezier(o,l,d.x1,d.y1,d.x2,d.y2,d.x,d.y),o=d.x,l=d.y;break;case"Z":o=n,l=s;break;default:throw new Error("Unexpected path command "+d.type)}}return t.isEmpty()&&t.addPoint(0,0),t},me.prototype.draw=function(t){let n=this._layers;if(n&&n.length){for(let o=0;o<n.length;o++)this.draw.call(n[o],t);return}let s=this._image;if(s){t.drawImage(s.image,s.x,s.y,s.width,s.height);return}t.beginPath();for(let o=0;o<this.commands.length;o+=1){let l=this.commands[o];l.type==="M"?t.moveTo(l.x,l.y):l.type==="L"?t.lineTo(l.x,l.y):l.type==="C"?t.bezierCurveTo(l.x1,l.y1,l.x2,l.y2,l.x,l.y):l.type==="Q"?t.quadraticCurveTo(l.x1,l.y1,l.x,l.y):l.type==="Z"&&this.stroke&&this.strokeWidth&&t.closePath()}this.fill&&(t.fillStyle=this.fill,t.fill()),this.stroke&&(t.strokeStyle=this.stroke,t.lineWidth=this.strokeWidth,t.stroke())},me.prototype.toPathData=function(t){t=J(t);function n(B){let w=Fe(B,t.decimalPlaces);return Math.round(B)===w?""+w:w.toFixed(t.decimalPlaces)}function s(){let B="";for(let w=0;w<arguments.length;w+=1){let x=arguments[w];x>=0&&w>0&&(B+=" "),B+=n(x)}return B}let o=this.commands;t.optimize&&(o=JSON.parse(JSON.stringify(this.commands)),o=W(o));let l=t.flipY,h=t.flipYBase;if(l===!0&&h===void 0){let B=new me;B.extend(o);let w=B.getBoundingBox();h=w.y1+w.y2}let d="";for(let B=0;B<o.length;B+=1){let w=o[B];w.type==="M"?d+="M"+s(w.x,l?h-w.y:w.y):w.type==="L"?d+="L"+s(w.x,l?h-w.y:w.y):w.type==="C"?d+="C"+s(w.x1,l?h-w.y1:w.y1,w.x2,l?h-w.y2:w.y2,w.x,l?h-w.y:w.y):w.type==="Q"?d+="Q"+s(w.x1,l?h-w.y1:w.y1,w.x,l?h-w.y:w.y):w.type==="Z"&&(d+="Z")}return d},me.prototype.toSVG=function(t,n){this._layers&&this._layers.length&&console.warn("toSVG() does not support colr font layers yet"),this._image&&console.warn("toSVG() does not support SVG glyphs yet"),n||(n=this.toPathData(t));let s='<path d="';return s+=n,s+='"',this.fill!==void 0&&this.fill!=="black"&&(this.fill===null?s+=' fill="none"':s+=' fill="'+this.fill+'"'),this.stroke&&(s+=' stroke="'+this.stroke+'" stroke-width="'+this.strokeWidth+'"'),s+="/>",s},me.prototype.toDOMElement=function(t,n){this._layers&&this._layers.length&&console.warn("toDOMElement() does not support colr font layers yet"),n||(n=this.toPathData(t));let s=document.createElementNS("http://www.w3.org/2000/svg","path");return s.setAttribute("d",n),this.fill!==void 0&&this.fill!=="black"&&(this.fill===null?s.setAttribute("fill","none"):s.setAttribute("fill",this.fill)),this.stroke&&(s.setAttribute("stroke",this.stroke),s.setAttribute("stroke-width",this.strokeWidth)),s};var z=me;function j(t){throw new Error(t)}function K(t,n){t||j(n)}var G={fail:j,argument:K,assert:K},X=32768,D=2147483648,pe=-32768,ce=32767+1/65536,Qe={},Z={},H={};function ne(t){return function(){return t}}Z.BYTE=function(t){return G.argument(t>=0&&t<=255,"Byte value should be between 0 and 255."),[t]},H.BYTE=ne(1),Z.CHAR=function(t){return[t.charCodeAt(0)]},H.CHAR=ne(1),Z.CHARARRAY=function(t){(t===null||typeof t>"u")&&(t="",console.warn("CHARARRAY with undefined or null value encountered and treated as an empty string. This is probably caused by a missing glyph name."));let n=[];for(let s=0;s<t.length;s+=1)n[s]=t.charCodeAt(s);return n},H.CHARARRAY=function(t){return typeof t>"u"?0:t.length},Z.USHORT=function(t){return[t>>8&255,t&255]},H.USHORT=ne(2),Z.SHORT=function(t){return t>=X&&(t=-(2*X-t)),[t>>8&255,t&255]},H.SHORT=ne(2),Z.UINT24=function(t){return[t>>16&255,t>>8&255,t&255]},H.UINT24=ne(3),Z.ULONG=function(t){return[t>>24&255,t>>16&255,t>>8&255,t&255]},H.ULONG=ne(4),Z.LONG=function(t){return t>=D&&(t=-(2*D-t)),[t>>24&255,t>>16&255,t>>8&255,t&255]},H.LONG=ne(4),Z.FLOAT=function(t){if(t>ce||t<pe)throw new Error(`Value ${t} is outside the range of representable values in 16.16 format`);let n=Math.round(t*65536)<<0;return Z.ULONG(n)},H.FLOAT=H.ULONG,Z.FIXED=Z.ULONG,H.FIXED=H.ULONG,Z.FWORD=Z.SHORT,H.FWORD=H.SHORT,Z.UFWORD=Z.USHORT,H.UFWORD=H.USHORT,Z.F2DOT14=function(t){return Z.USHORT(t*16384)},H.F2DOT14=H.USHORT,Z.LONGDATETIME=function(t){return[0,0,0,0,t>>24&255,t>>16&255,t>>8&255,t&255]},H.LONGDATETIME=ne(8),Z.TAG=function(t){return G.argument(t.length===4,"Tag should be exactly 4 ASCII characters."),[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3)]},H.TAG=ne(4),Z.Card8=Z.BYTE,H.Card8=H.BYTE,Z.Card16=Z.USHORT,H.Card16=H.USHORT,Z.OffSize=Z.BYTE,H.OffSize=H.BYTE,Z.SID=Z.USHORT,H.SID=H.USHORT,Z.NUMBER=function(t){return t>=-107&&t<=107?[t+139]:t>=108&&t<=1131?(t=t-108,[(t>>8)+247,t&255]):t>=-1131&&t<=-108?(t=-t-108,[(t>>8)+251,t&255]):t>=-32768&&t<=32767?Z.NUMBER16(t):Z.NUMBER32(t)},H.NUMBER=function(t){return Z.NUMBER(t).length},Z.NUMBER16=function(t){return[28,t>>8&255,t&255]},H.NUMBER16=ne(3),Z.NUMBER32=function(t){return[29,t>>24&255,t>>16&255,t>>8&255,t&255]},H.NUMBER32=ne(5),Z.REAL=function(t){let n=t.toString(),s=/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/.exec(n);if(s){let h=parseFloat("1e"+((s[2]?+s[2]:0)+s[1].length));n=(Math.round(t*h)/h).toString()}let o="";for(let h=0,d=n.length;h<d;h+=1){let B=n[h];B==="e"?o+=n[++h]==="-"?"c":"b":B==="."?o+="a":B==="-"?o+="e":o+=B}o+=o.length&1?"f":"ff";let l=[30];for(let h=0,d=o.length;h<d;h+=2)l.push(parseInt(o.substr(h,2),16));return l},H.REAL=function(t){return Z.REAL(t).length},Z.NAME=Z.CHARARRAY,H.NAME=H.CHARARRAY,Z.STRING=Z.CHARARRAY,H.STRING=H.CHARARRAY,Qe.UTF8=function(t,n,s){let o=[],l=s;for(let h=0;h<l;h++,n+=1)o[h]=t.getUint8(n);return String.fromCharCode.apply(null,o)},Qe.UTF16=function(t,n,s){let o=[],l=s/2;for(let h=0;h<l;h++,n+=2)o[h]=t.getUint16(n);return String.fromCharCode.apply(null,o)},Z.UTF16=function(t){let n=[];for(let s=0;s<t.length;s+=1){let o=t.charCodeAt(s);n[n.length]=o>>8&255,n[n.length]=o&255}return n},H.UTF16=function(t){return t.length*2};var Oe={"x-mac-croatian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u03A9\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uF8FF\xA9\u2044\u20AC\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7","x-mac-cyrillic":"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E","x-mac-gaelic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u1E02\xB1\u2264\u2265\u1E03\u010A\u010B\u1E0A\u1E0B\u1E1E\u1E1F\u0120\u0121\u1E40\xE6\xF8\u1E41\u1E56\u1E57\u027C\u0192\u017F\u1E60\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\u1E61\u1E9B\xFF\u0178\u1E6A\u20AC\u2039\u203A\u0176\u0177\u1E6B\xB7\u1EF2\u1EF3\u204A\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u2663\xD2\xDA\xDB\xD9\u0131\xDD\xFD\u0174\u0175\u1E84\u1E85\u1E80\u1E81\u1E82\u1E83","x-mac-greek":"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\u20AC\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\xB7\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\xAD","x-mac-icelandic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-inuit":"\u1403\u1404\u1405\u1406\u140A\u140B\u1431\u1432\u1433\u1434\u1438\u1439\u1449\u144E\u144F\u1450\u1451\u1455\u1456\u1466\u146D\u146E\u146F\u1470\u1472\u1473\u1483\u148B\u148C\u148D\u148E\u1490\u1491\xB0\u14A1\u14A5\u14A6\u2022\xB6\u14A7\xAE\xA9\u2122\u14A8\u14AA\u14AB\u14BB\u14C2\u14C3\u14C4\u14C5\u14C7\u14C8\u14D0\u14EF\u14F0\u14F1\u14F2\u14F4\u14F5\u1505\u14D5\u14D6\u14D7\u14D8\u14DA\u14DB\u14EA\u1528\u1529\u152A\u152B\u152D\u2026\xA0\u152E\u153E\u1555\u1556\u1557\u2013\u2014\u201C\u201D\u2018\u2019\u1558\u1559\u155A\u155D\u1546\u1547\u1548\u1549\u154B\u154C\u1550\u157F\u1580\u1581\u1582\u1583\u1584\u1585\u158F\u1590\u1591\u1592\u1593\u1594\u1595\u1671\u1672\u1673\u1674\u1675\u1676\u1596\u15A0\u15A1\u15A2\u15A3\u15A4\u15A5\u15A6\u157C\u0141\u0142","x-mac-ce":"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7",macintosh:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-romanian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u0218\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\u0103\u0219\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\u2039\u203A\u021A\u021B\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-turkish":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\uF8A0\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"};Qe.MACSTRING=function(t,n,s,o){let l=Oe[o];if(l===void 0)return;let h="";for(let d=0;d<s;d++){let B=t.getUint8(n+d);B<=127?h+=String.fromCharCode(B):h+=l[B&127]}return h};var De=typeof WeakMap=="function"&&new WeakMap,it,Ze=function(t){if(!it){it={};for(let l in Oe)it[l]=new String(l)}let n=it[t];if(n===void 0)return;if(De){let l=De.get(n);if(l!==void 0)return l}let s=Oe[t];if(s===void 0)return;let o={};for(let l=0;l<s.length;l++)o[s.charCodeAt(l)]=l+128;return De&&De.set(n,o),o};Z.MACSTRING=function(t,n){let s=Ze(n);if(s===void 0)return;let o=[];for(let l=0;l<t.length;l++){let h=t.charCodeAt(l);if(h>=128&&(h=s[h],h===void 0))return;o[l]=h}return o},H.MACSTRING=function(t,n){let s=Z.MACSTRING(t,n);return s!==void 0?s.length:0};function Xe(t){return t>=-128&&t<=127}function wt(t,n,s){let o=0,l=t.length;for(;n<l&&o<64&&t[n]===0;)++n,++o;return s.push(128|o-1),n}function te(t,n,s){let o=0,l=t.length,h=n;for(;h<l&&o<64;){let d=t[h];if(!Xe(d)||d===0&&h+1<l&&t[h+1]===0)break;++h,++o}s.push(o-1);for(let d=n;d<h;++d)s.push(t[d]+256&255);return h}function ve(t,n,s){let o=0,l=t.length,h=n;for(;h<l&&o<64;){let d=t[h];if(d===0||Xe(d)&&h+1<l&&Xe(t[h+1]))break;++h,++o}s.push(64|o-1);for(let d=n;d<h;++d){let B=t[d];s.push(B+65536>>8&255,B+256&255)}return h}Z.VARDELTAS=function(t){let n=0,s=[];for(;n<t.length;){let o=t[n];o===0?n=wt(t,n,s):o>=-128&&o<=127?n=te(t,n,s):n=ve(t,n,s)}return s},Z.INDEX=function(t){let n=1,s=[n],o=[];for(let B=0;B<t.length;B+=1){let w=Z.OBJECT(t[B]);Array.prototype.push.apply(o,w),n+=w.length,s.push(n)}if(o.length===0)return[0,0];let l=[],h=1+Math.floor(Math.log(n)/Math.log(2))/8|0,d=[void 0,Z.BYTE,Z.USHORT,Z.UINT24,Z.ULONG][h];for(let B=0;B<s.length;B+=1){let w=d(s[B]);Array.prototype.push.apply(l,w)}return Array.prototype.concat(Z.Card16(t.length),Z.OffSize(h),l,o)},H.INDEX=function(t){return Z.INDEX(t).length},Z.DICT=function(t){let n=[],s=Object.keys(t),o=s.length;for(let l=0;l<o;l+=1){let h=parseInt(s[l],0),d=t[h],B=Z.OPERAND(d.value,d.type),w=Z.OPERATOR(h);for(let x=0;x<B.length;x++)n.push(B[x]);for(let x=0;x<w.length;x++)n.push(w[x])}return n},H.DICT=function(t){return Z.DICT(t).length},Z.OPERATOR=function(t){return t<1200?[t]:[12,t-1200]},Z.OPERAND=function(t,n){let s=[];if(Array.isArray(n))for(let o=0;o<n.length;o+=1){G.argument(t.length===n.length,"Not enough arguments given for type"+n);let l=Z.OPERAND(t[o],n[o]);for(let h=0;h<l.length;h++)s.push(l[h])}else if(n==="SID"){let o=Z.NUMBER(t);for(let l=0;l<o.length;l++)s.push(o[l])}else if(n==="offset"){let o=Z.NUMBER32(t);for(let l=0;l<o.length;l++)s.push(o[l])}else if(n==="number"){let o=Z.NUMBER(t);for(let l=0;l<o.length;l++)s.push(o[l])}else if(n==="real"){let o=Z.REAL(t);for(let l=0;l<o.length;l++)s.push(o[l])}else throw new Error("Unknown operand type "+n);return s},Z.OP=Z.BYTE,H.OP=H.BYTE;var be=typeof WeakMap=="function"&&new WeakMap;Z.CHARSTRING=function(t){if(be){let o=be.get(t);if(o!==void 0)return o}let n=[],s=t.length;for(let o=0;o<s;o+=1){let l=t[o],h=Z[l.type](l.value);for(let d=0;d<h.length;d++)n.push(h[d])}return be&&be.set(t,n),n},H.CHARSTRING=function(t){return Z.CHARSTRING(t).length},Z.OBJECT=function(t){let n=Z[t.type];return G.argument(n!==void 0,"No encoding function for type "+t.type),n(t.value)},H.OBJECT=function(t){let n=H[t.type];return G.argument(n!==void 0,"No sizeOf function for type "+t.type),n(t.value)},Z.TABLE=function(t){let n=[],s=(t.fields||[]).length,o=[],l=[];for(let h=0;h<s;h+=1){let d=t.fields[h],B=Z[d.type];G.argument(B!==void 0,"No encoding function for field type "+d.type+" ("+d.name+")");let w=t[d.name];w===void 0&&(w=d.value);let x=B(w);if(d.type==="TABLE")w.fields!==null&&(l.push(n.length),o.push(x)),n.push(0,0);else for(let C=0;C<x.length;C++)n.push(x[C])}for(let h=0;h<o.length;h+=1){let d=l[h],B=n.length;G.argument(B<65536,"Table "+t.tableName+" too big."),n[d]=B>>8,n[d+1]=B&255;for(let w=0;w<o[h].length;w++)n.push(o[h][w])}return n},H.TABLE=function(t){let n=0,s=(t.fields||[]).length;for(let o=0;o<s;o+=1){let l=t.fields[o],h=H[l.type];G.argument(h!==void 0,"No sizeOf function for field type "+l.type+" ("+l.name+")");let d=t[l.name];d===void 0&&(d=l.value),n+=h(d),l.type==="TABLE"&&(n+=2)}return n},Z.RECORD=Z.TABLE,H.RECORD=H.TABLE,Z.LITERAL=function(t){return t},H.LITERAL=function(t){return t.length};function ue(t,n,s){if(n&&n.length)for(let o=0;o<n.length;o+=1){let l=n[o];this[l.name]=l.value}if(this.tableName=t,this.fields=n,s){let o=Object.keys(s);for(let l=0;l<o.length;l+=1){let h=o[l],d=s[h];this[h]!==void 0&&(this[h]=d)}}}ue.prototype.encode=function(){return Z.TABLE(this)},ue.prototype.sizeOf=function(){return H.TABLE(this)};function Me(t,n,s){s===void 0&&(s=n.length);let o=new Array(n.length+1);o[0]={name:t+"Count",type:"USHORT",value:s};for(let l=0;l<n.length;l++)o[l+1]={name:t+l,type:"USHORT",value:n[l]};return o}function He(t,n,s){let o=n.length,l=new Array(o+1);l[0]={name:t+"Count",type:"USHORT",value:o};for(let h=0;h<o;h++)l[h+1]={name:t+h,type:"TABLE",value:s(n[h],h)};return l}function Le(t,n,s){let o=n.length,l=[];l[0]={name:t+"Count",type:"USHORT",value:o};for(let h=0;h<o;h++)l=l.concat(s(n[h],h));return l}function Ne(t){t.format===1?ue.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:1}].concat(Me("glyph",t.glyphs))):t.format===2?ue.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:2}].concat(Le("rangeRecord",t.ranges,function(n,s){return[{name:"startGlyphID"+s,type:"USHORT",value:n.start},{name:"endGlyphID"+s,type:"USHORT",value:n.end},{name:"startCoverageIndex"+s,type:"USHORT",value:n.index}]}))):G.assert(!1,"Coverage format must be 1 or 2.")}Ne.prototype=Object.create(ue.prototype),Ne.prototype.constructor=Ne;function de(t){ue.call(this,"scriptListTable",Le("scriptRecord",t,function(n,s){let o=n.script,l=o.defaultLangSys;return G.assert(!!l,"Unable to write GSUB: script "+n.tag+" has no default language system."),[{name:"scriptTag"+s,type:"TAG",value:n.tag},{name:"script"+s,type:"TABLE",value:new ue("scriptTable",[{name:"defaultLangSys",type:"TABLE",value:new ue("defaultLangSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:l.reqFeatureIndex}].concat(Me("featureIndex",l.featureIndexes)))}].concat(Le("langSys",o.langSysRecords,function(h,d){let B=h.langSys;return[{name:"langSysTag"+d,type:"TAG",value:h.tag},{name:"langSys"+d,type:"TABLE",value:new ue("langSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:B.reqFeatureIndex}].concat(Me("featureIndex",B.featureIndexes)))}]})))}]}))}de.prototype=Object.create(ue.prototype),de.prototype.constructor=de;function ge(t){ue.call(this,"featureListTable",Le("featureRecord",t,function(n,s){let o=n.feature;return[{name:"featureTag"+s,type:"TAG",value:n.tag},{name:"feature"+s,type:"TABLE",value:new ue("featureTable",[{name:"featureParams",type:"USHORT",value:o.featureParams}].concat(Me("lookupListIndex",o.lookupListIndexes)))}]}))}ge.prototype=Object.create(ue.prototype),ge.prototype.constructor=ge;function oe(t,n){ue.call(this,"lookupListTable",He("lookup",t,function(s){let o=n[s.lookupType];return G.assert(!!o,"Unable to write GSUB lookup type "+s.lookupType+" tables."),new ue("lookupTable",[{name:"lookupType",type:"USHORT",value:s.lookupType},{name:"lookupFlag",type:"USHORT",value:s.lookupFlag}].concat(He("subtable",s.subtables,o)))}))}oe.prototype=Object.create(ue.prototype),oe.prototype.constructor=oe;function Ye(t){t.format===1?ue.call(this,"classDefTable",[{name:"classFormat",type:"USHORT",value:1},{name:"startGlyphID",type:"USHORT",value:t.startGlyph}].concat(Me("glyph",t.classes))):t.format===2?ue.call(this,"classDefTable",[{name:"classFormat",type:"USHORT",value:2}].concat(Le("rangeRecord",t.ranges,function(n,s){return[{name:"startGlyphID"+s,type:"USHORT",value:n.start},{name:"endGlyphID"+s,type:"USHORT",value:n.end},{name:"class"+s,type:"USHORT",value:n.classId}]}))):G.assert(!1,"Class format must be 1 or 2.")}Ye.prototype=Object.create(ue.prototype),Ye.prototype.constructor=Ye;var $={Table:ue,Record:ue,Coverage:Ne,ClassDef:Ye,ScriptList:de,FeatureList:ge,LookupList:oe,ushortList:Me,tableList:He,recordList:Le};function _e(t,n){return t.getUint8(n)}function Ue(t,n){return t.getUint16(n,!1)}function je(t,n){return t.getInt16(n,!1)}function ot(t,n){return(t.getUint16(n)<<8)+t.getUint8(n+2)}function Ke(t,n){return t.getUint32(n,!1)}function ut(t,n){return t.getInt32(n,!1)}function bt(t,n){let s=t.getInt16(n,!1),o=t.getUint16(n+2,!1);return s+o/65535}function xt(t,n){let s="";for(let o=n;o<n+4;o+=1)s+=String.fromCharCode(t.getInt8(o));return s}function Ir(t,n,s){let o=0;for(let l=0;l<s;l+=1)o<<=8,o+=t.getUint8(n+l);return o}function hr(t,n,s){let o=[];for(let l=n;l<s;l+=1)o.push(t.getUint8(l));return o}function Fr(t){let n="";for(let s=0;s<t.length;s+=1)n+=String.fromCharCode(t[s]);return n}var Tr={byte:1,uShort:2,f2dot14:2,short:2,uInt24:3,uLong:4,fixed:4,longDateTime:8,tag:4},ht={LONG_WORDS:32768,WORD_DELTA_COUNT_MASK:32767,SHARED_POINT_NUMBERS:32768,COUNT_MASK:4095,EMBEDDED_PEAK_TUPLE:32768,INTERMEDIATE_REGION:16384,PRIVATE_POINT_NUMBERS:8192,TUPLE_INDEX_MASK:4095,POINTS_ARE_WORDS:128,POINT_RUN_COUNT_MASK:127,DELTAS_ARE_ZERO:128,DELTAS_ARE_WORDS:64,DELTA_RUN_COUNT_MASK:63,INNER_INDEX_BIT_COUNT_MASK:15,MAP_ENTRY_SIZE_MASK:48};function V(t,n){this.data=t,this.offset=n,this.relativeOffset=0}V.prototype.parseByte=function(){let t=this.data.getUint8(this.offset+this.relativeOffset);return this.relativeOffset+=1,t},V.prototype.parseChar=function(){let t=this.data.getInt8(this.offset+this.relativeOffset);return this.relativeOffset+=1,t},V.prototype.parseCard8=V.prototype.parseByte,V.prototype.parseUShort=function(){let t=this.data.getUint16(this.offset+this.relativeOffset);return this.relativeOffset+=2,t},V.prototype.parseCard16=V.prototype.parseUShort,V.prototype.parseSID=V.prototype.parseUShort,V.prototype.parseOffset16=V.prototype.parseUShort,V.prototype.parseShort=function(){let t=this.data.getInt16(this.offset+this.relativeOffset);return this.relativeOffset+=2,t},V.prototype.parseF2Dot14=function(){let t=this.data.getInt16(this.offset+this.relativeOffset)/16384;return this.relativeOffset+=2,t},V.prototype.parseUInt24=function(){let t=ot(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=3,t},V.prototype.parseULong=function(){let t=Ke(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,t},V.prototype.parseLong=function(){let t=ut(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,t},V.prototype.parseOffset32=V.prototype.parseULong,V.prototype.parseFixed=function(){let t=bt(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,t},V.prototype.parseString=function(t){let n=this.data,s=this.offset+this.relativeOffset,o="";this.relativeOffset+=t;for(let l=0;l<t;l++)o+=String.fromCharCode(n.getUint8(s+l));return o},V.prototype.parseTag=function(){return this.parseString(4)},V.prototype.parseLongDateTime=function(){let t=Ke(this.data,this.offset+this.relativeOffset+4);return t-=2082844800,this.relativeOffset+=8,t},V.prototype.parseVersion=function(t){let n=Ue(this.data,this.offset+this.relativeOffset),s=Ue(this.data,this.offset+this.relativeOffset+2);return this.relativeOffset+=4,t===void 0&&(t=4096),n+s/t/10},V.prototype.skip=function(t,n){n===void 0&&(n=1),this.relativeOffset+=Tr[t]*n},V.prototype.parseULongList=function(t){t===void 0&&(t=this.parseULong());let n=new Array(t),s=this.data,o=this.offset+this.relativeOffset;for(let l=0;l<t;l++)n[l]=s.getUint32(o),o+=4;return this.relativeOffset+=t*4,n},V.prototype.parseOffset16List=V.prototype.parseUShortList=function(t){t===void 0&&(t=this.parseUShort());let n=new Array(t),s=this.data,o=this.offset+this.relativeOffset;for(let l=0;l<t;l++)n[l]=s.getUint16(o),o+=2;return this.relativeOffset+=t*2,n},V.prototype.parseShortList=function(t){let n=new Array(t),s=this.data,o=this.offset+this.relativeOffset;for(let l=0;l<t;l++)n[l]=s.getInt16(o),o+=2;return this.relativeOffset+=t*2,n},V.prototype.parseByteList=function(t){let n=new Array(t),s=this.data,o=this.offset+this.relativeOffset;for(let l=0;l<t;l++)n[l]=s.getUint8(o++);return this.relativeOffset+=t,n},V.prototype.parseList=function(t,n){n||(n=t,t=this.parseUShort());let s=new Array(t);for(let o=0;o<t;o++)s[o]=n.call(this);return s},V.prototype.parseList32=function(t,n){n||(n=t,t=this.parseULong());let s=new Array(t);for(let o=0;o<t;o++)s[o]=n.call(this);return s},V.prototype.parseRecordList=function(t,n){n||(n=t,t=this.parseUShort());let s=new Array(t),o=Object.keys(n);for(let l=0;l<t;l++){let h={};for(let d=0;d<o.length;d++){let B=o[d],w=n[B];h[B]=w.call(this)}s[l]=h}return s},V.prototype.parseRecordList32=function(t,n){n||(n=t,t=this.parseULong());let s=new Array(t),o=Object.keys(n);for(let l=0;l<t;l++){let h={};for(let d=0;d<o.length;d++){let B=o[d],w=n[B];h[B]=w.call(this)}s[l]=h}return s},V.prototype.parseTupleRecords=function(t,n){let s=[];for(let o=0;o<t;o++){let l=[];for(let h=0;h<n;h++)l.push(this.parseF2Dot14());s.push(l)}return s},V.prototype.parseStruct=function(t){if(typeof t=="function")return t.call(this);{let n=Object.keys(t),s={};for(let o=0;o<n.length;o++){let l=n[o],h=t[l];s[l]=h.call(this)}return s}},V.prototype.parseValueRecord=function(t){if(t===void 0&&(t=this.parseUShort()),t===0)return;let n={};return t&1&&(n.xPlacement=this.parseShort()),t&2&&(n.yPlacement=this.parseShort()),t&4&&(n.xAdvance=this.parseShort()),t&8&&(n.yAdvance=this.parseShort()),t&16&&(n.xPlaDevice=void 0,this.parseShort()),t&32&&(n.yPlaDevice=void 0,this.parseShort()),t&64&&(n.xAdvDevice=void 0,this.parseShort()),t&128&&(n.yAdvDevice=void 0,this.parseShort()),n},V.prototype.parseValueRecordList=function(){let t=this.parseUShort(),n=this.parseUShort(),s=new Array(n);for(let o=0;o<n;o++)s[o]=this.parseValueRecord(t);return s},V.prototype.parsePointer=function(t){let n=this.parseOffset16();if(n>0)return new V(this.data,this.offset+n).parseStruct(t)},V.prototype.parsePointer32=function(t){let n=this.parseOffset32();if(n>0)return new V(this.data,this.offset+n).parseStruct(t)},V.prototype.parseListOfLists=function(t){let n=this.parseOffset16List(),s=n.length,o=this.relativeOffset,l=new Array(s);for(let h=0;h<s;h++){let d=n[h];if(d===0){l[h]=void 0;continue}if(this.relativeOffset=d,t){let B=this.parseOffset16List(),w=new Array(B.length);for(let x=0;x<B.length;x++)this.relativeOffset=d+B[x],w[x]=t.call(this);l[h]=w}else l[h]=this.parseUShortList()}return this.relativeOffset=o,l},V.prototype.parseCoverage=function(){let t=this.offset+this.relativeOffset,n=this.parseUShort(),s=this.parseUShort();if(n===1)return{format:1,glyphs:this.parseUShortList(s)};if(n===2){let o=new Array(s);for(let l=0;l<s;l++)o[l]={start:this.parseUShort(),end:this.parseUShort(),index:this.parseUShort()};return{format:2,ranges:o}}throw new Error("0x"+t.toString(16)+": Coverage format must be 1 or 2.")},V.prototype.parseClassDef=function(){let t=this.offset+this.relativeOffset,n=this.parseUShort();return n===1?{format:1,startGlyph:this.parseUShort(),classes:this.parseUShortList()}:n===2?{format:2,ranges:this.parseRecordList({start:V.uShort,end:V.uShort,classId:V.uShort})}:(console.warn(`0x${t.toString(16)}: This font file uses an invalid ClassDef format of ${n}. It might be corrupted and should be reacquired if it doesn't display as intended.`),{format:n})},V.list=function(t,n){return function(){return this.parseList(t,n)}},V.list32=function(t,n){return function(){return this.parseList32(t,n)}},V.recordList=function(t,n){return function(){return this.parseRecordList(t,n)}},V.recordList32=function(t,n){return function(){return this.parseRecordList32(t,n)}},V.pointer=function(t){return function(){return this.parsePointer(t)}},V.pointer32=function(t){return function(){return this.parsePointer32(t)}},V.tag=V.prototype.parseTag,V.byte=V.prototype.parseByte,V.uShort=V.offset16=V.prototype.parseUShort,V.uShortList=V.prototype.parseUShortList,V.uInt24=V.prototype.parseUInt24,V.uLong=V.offset32=V.prototype.parseULong,V.uLongList=V.prototype.parseULongList,V.fixed=V.prototype.parseFixed,V.f2Dot14=V.prototype.parseF2Dot14,V.struct=V.prototype.parseStruct,V.coverage=V.prototype.parseCoverage,V.classDef=V.prototype.parseClassDef;var Vr={reserved:V.uShort,reqFeatureIndex:V.uShort,featureIndexes:V.uShortList};V.prototype.parseScriptList=function(){return this.parsePointer(V.recordList({tag:V.tag,script:V.pointer({defaultLangSys:V.pointer(Vr),langSysRecords:V.recordList({tag:V.tag,langSys:V.pointer(Vr)})})}))||[]},V.prototype.parseFeatureList=function(){return this.parsePointer(V.recordList({tag:V.tag,feature:V.pointer({featureParams:V.offset16,lookupListIndexes:V.uShortList})}))||[]},V.prototype.parseLookupList=function(t){return this.parsePointer(V.list(V.pointer(function(){let n=this.parseUShort();G.argument(1<=n&&n<=9,"GPOS/GSUB lookup type "+n+" unknown.");let s=this.parseUShort(),o=s&16;return{lookupType:n,lookupFlag:s,subtables:this.parseList(V.pointer(t[n])),markFilteringSet:o?this.parseUShort():void 0}})))||[]},V.prototype.parseFeatureVariationsList=function(){return this.parsePointer32(function(){let t=this.parseUShort(),n=this.parseUShort();return G.argument(t===1&&n<1,"GPOS/GSUB feature variations table unknown."),this.parseRecordList32({conditionSetOffset:V.offset32,featureTableSubstitutionOffset:V.offset32})})||[]},V.prototype.parseVariationStore=function(){let t=this.relativeOffset,n=this.parseUShort(),s={itemVariationStore:this.parseItemVariationStore()};return this.relativeOffset=t+n+2,s},V.prototype.parseItemVariationStore=function(){let t=this.relativeOffset,n={format:this.parseUShort(),variationRegions:[],itemVariationSubtables:[]},s=this.parseOffset32(),o=this.parseUShort(),l=this.parseULongList(o);this.relativeOffset=t+s,n.variationRegions=this.parseVariationRegionList();for(let h=0;h<o;h++){let d=l[h];this.relativeOffset=t+d,n.itemVariationSubtables.push(this.parseItemVariationSubtable())}return n},V.prototype.parseVariationRegionList=function(){let t=this.parseUShort(),n=this.parseUShort();return this.parseRecordList(n,{regionAxes:V.recordList(t,{startCoord:V.f2Dot14,peakCoord:V.f2Dot14,endCoord:V.f2Dot14})})},V.prototype.parseItemVariationSubtable=function(){let t=this.parseUShort(),n=this.parseUShort(),s=this.parseUShortList(),o=s.length;return{regionIndexes:s,deltaSets:t&&o?this.parseDeltaSets(t,n,o):[]}},V.prototype.parseDeltaSetIndexMap=function(){let t=this.parseByte(),n=this.parseByte(),s=[],o=0;switch(t){case 0:o=this.parseUShort();break;case 1:o=this.parseULong();break;default:console.error(`unsupported DeltaSetIndexMap format ${t}`)}if(!o)return{format:t,entryFormat:n};let l=(n&ht.INNER_INDEX_BIT_COUNT_MASK)+1,h=((n&ht.MAP_ENTRY_SIZE_MASK)>>4)+1;for(let d=0;d<o;d++){let B;if(h===1)B=this.parseByte();else if(h===2)B=this.parseUShort();else if(h===3)B=this.parseUInt24();else if(h===4)B=this.parseULong();else throw new Error(`Invalid entry size of ${h}`);let w=B>>l,x=B&(1<<l)-1;s.push({outerIndex:w,innerIndex:x})}return{format:t,entryFormat:n,map:s}},V.prototype.parseDeltaSets=function(t,n,s){let o=Array.from({length:t},()=>[]),l=n&ht.LONG_WORDS,h=n&ht.WORD_DELTA_COUNT_MASK;if(h>s)throw Error("wordCount must be less than or equal to regionIndexCount");let d=(l?this.parseLong:this.parseShort).bind(this),B=(l?this.parseShort:this.parseChar).bind(this);for(let w=0;w<t;w++)for(let x=0;x<s;x++)x<h?o[w].push(d()):o[w].push(B());return o},V.prototype.parseTupleVariationStoreList=function(t,n,s){let o=this.parseUShort(),h=this.parseUShort()&1,d=this.parseOffset32(),B=(h?this.parseULong:this.parseUShort).bind(this),w={},x=B();h||(x*=2);let C;for(let S=0;S<o;S++){C=B(),h||(C*=2);let T=C-x;w[S]=T?this.parseTupleVariationStore(d+x,t,n,s,S):void 0,x=C}return w},V.prototype.parseTupleVariationStore=function(t,n,s,o,l){let h=this.relativeOffset;this.relativeOffset=t,s==="cvar"&&(this.relativeOffset+=4);let d=this.parseUShort(),B=!!(d&ht.SHARED_POINT_NUMBERS),w=d&ht.COUNT_MASK,x=this.parseOffset16(),C=[],S=[];for(let U=0;U<w;U++){let L=this.parseTupleVariationHeader(n,s);C.push(L)}this.relativeOffset!==t+x&&(console.warn(`Unexpected offset after parsing tuple variation headers! Expected ${t+x}, actually ${this.relativeOffset}`),this.relativeOffset=t+x),B&&(S=this.parsePackedPointNumbers());let T=this.relativeOffset;for(let U=0;U<w;U++){let L=C[U];L.privatePoints=[],this.relativeOffset=T,s==="cvar"&&!L.peakTuple&&console.warn("An embedded peak tuple is required in TupleVariationHeaders for the cvar table."),L.flags.privatePointNumbers&&(L.privatePoints=this.parsePackedPointNumbers()),delete L.flags;let ee=this.offset,Te=this.relativeOffset,xe=Re=>{let Je,$e,nt=()=>{let st=0;if(s==="gvar"){if(st=L.privatePoints.length||S.length,!st){let Bt=o.get(l);Bt.path,st=Bt.points.length,st+=4}}else s==="cvar"&&(st=o.length);this.offset=ee,this.relativeOffset=Te,Je=this.parsePackedDeltas(st),s==="gvar"&&($e=this.parsePackedDeltas(st))};return{configurable:!0,get:function(){return Je===void 0&&nt(),Re==="deltasY"?$e:Je},set:function(st){Je===void 0&&nt(),Re==="deltasY"?$e=st:Je=st}}};Object.defineProperty(L,"deltas",xe.call(this,"deltas")),s==="gvar"&&Object.defineProperty(L,"deltasY",xe.call(this,"deltasY")),T+=L.variationDataSize,delete L.variationDataSize}this.relativeOffset=h;let Y={headers:C};return Y.sharedPoints=S,Y},V.prototype.parseTupleVariationHeader=function(t,n){let s=this.parseUShort(),o=this.parseUShort(),l=!!(o&ht.EMBEDDED_PEAK_TUPLE),h=!!(o&ht.INTERMEDIATE_REGION),d=!!(o&ht.PRIVATE_POINT_NUMBERS),B=l?void 0:o&ht.TUPLE_INDEX_MASK,w=l?this.parseTupleRecords(1,t)[0]:void 0,x=h?this.parseTupleRecords(1,t)[0]:void 0,C=h?this.parseTupleRecords(1,t)[0]:void 0,S={variationDataSize:s,peakTuple:w,intermediateStartTuple:x,intermediateEndTuple:C,flags:{embeddedPeakTuple:l,intermediateRegion:h,privatePointNumbers:d}};return n==="gvar"&&(S.sharedTupleRecordsIndex=B),S},V.prototype.parsePackedPointNumbers=function(){let t=this.parseByte(),n=[],s=t;if(t>=128){let l=this.parseByte();s=(t&ht.POINT_RUN_COUNT_MASK)<<8|l}let o=0;for(;n.length<s;){let l=this.parseByte(),h=!!(l&ht.POINTS_ARE_WORDS),d=(l&ht.POINT_RUN_COUNT_MASK)+1;for(let B=0;B<d&&n.length<s;B++){let w;h?w=this.parseUShort():w=this.parseByte(),o=o+w,n.push(o)}}return n},V.prototype.parsePackedDeltas=function(t){let n=[];for(;n.length<t;){let s=this.parseByte(),o=!!(s&ht.DELTAS_ARE_ZERO),l=!!(s&ht.DELTAS_ARE_WORDS),h=(s&ht.DELTA_RUN_COUNT_MASK)+1;for(let d=0;d<h&&n.length<t;d++)o?n.push(0):l?n.push(this.parseShort()):n.push(this.parseChar())}return n};var he={getByte:_e,getCard8:_e,getUShort:Ue,getCard16:Ue,getShort:je,getUInt24:ot,getULong:Ke,getFixed:bt,getTag:xt,getOffset:Ir,getBytes:hr,bytesToString:Fr,Parser:V},fr=["copyright","fontFamily","fontSubfamily","uniqueID","fullName","version","postScriptName","trademark","manufacturer","designer","description","manufacturerURL","designerURL","license","licenseURL","reserved","preferredFamily","preferredSubfamily","compatibleFullName","sampleText","postScriptFindFontName","wwsFamily","wwsSubfamily"],un={0:"en",1:"fr",2:"de",3:"it",4:"nl",5:"sv",6:"es",7:"da",8:"pt",9:"no",10:"he",11:"ja",12:"ar",13:"fi",14:"el",15:"is",16:"mt",17:"tr",18:"hr",19:"zh-Hant",20:"ur",21:"hi",22:"th",23:"ko",24:"lt",25:"pl",26:"hu",27:"es",28:"lv",29:"se",30:"fo",31:"fa",32:"ru",33:"zh",34:"nl-BE",35:"ga",36:"sq",37:"ro",38:"cz",39:"sk",40:"si",41:"yi",42:"sr",43:"mk",44:"bg",45:"uk",46:"be",47:"uz",48:"kk",49:"az-Cyrl",50:"az-Arab",51:"hy",52:"ka",53:"mo",54:"ky",55:"tg",56:"tk",57:"mn-CN",58:"mn",59:"ps",60:"ks",61:"ku",62:"sd",63:"bo",64:"ne",65:"sa",66:"mr",67:"bn",68:"as",69:"gu",70:"pa",71:"or",72:"ml",73:"kn",74:"ta",75:"te",76:"si",77:"my",78:"km",79:"lo",80:"vi",81:"id",82:"tl",83:"ms",84:"ms-Arab",85:"am",86:"ti",87:"om",88:"so",89:"sw",90:"rw",91:"rn",92:"ny",93:"mg",94:"eo",128:"cy",129:"eu",130:"ca",131:"la",132:"qu",133:"gn",134:"ay",135:"tt",136:"ug",137:"dz",138:"jv",139:"su",140:"gl",141:"af",142:"br",143:"iu",144:"gd",145:"gv",146:"ga",147:"to",148:"el-polyton",149:"kl",150:"az",151:"nn"},rs={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:5,11:1,12:4,13:0,14:6,15:0,16:0,17:0,18:0,19:2,20:4,21:9,22:21,23:3,24:29,25:29,26:29,27:29,28:29,29:0,30:0,31:4,32:7,33:25,34:0,35:0,36:0,37:0,38:29,39:29,40:0,41:5,42:7,43:7,44:7,45:7,46:7,47:7,48:7,49:7,50:4,51:24,52:23,53:7,54:7,55:7,56:7,57:27,58:7,59:4,60:4,61:4,62:4,63:26,64:9,65:9,66:9,67:13,68:13,69:11,70:10,71:12,72:17,73:16,74:14,75:15,76:18,77:19,78:20,79:22,80:30,81:0,82:0,83:0,84:4,85:28,86:28,87:28,88:0,89:0,90:0,91:0,92:0,93:0,94:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:7,136:4,137:26,138:0,139:0,140:0,141:0,142:0,143:28,144:0,145:0,146:0,147:0,148:6,149:0,150:0,151:0},hn={1078:"af",1052:"sq",1156:"gsw",1118:"am",5121:"ar-DZ",15361:"ar-BH",3073:"ar",2049:"ar-IQ",11265:"ar-JO",13313:"ar-KW",12289:"ar-LB",4097:"ar-LY",6145:"ary",8193:"ar-OM",16385:"ar-QA",1025:"ar-SA",10241:"ar-SY",7169:"aeb",14337:"ar-AE",9217:"ar-YE",1067:"hy",1101:"as",2092:"az-Cyrl",1068:"az",1133:"ba",1069:"eu",1059:"be",2117:"bn",1093:"bn-IN",8218:"bs-Cyrl",5146:"bs",1150:"br",1026:"bg",1027:"ca",3076:"zh-HK",5124:"zh-MO",2052:"zh",4100:"zh-SG",1028:"zh-TW",1155:"co",1050:"hr",4122:"hr-BA",1029:"cs",1030:"da",1164:"prs",1125:"dv",2067:"nl-BE",1043:"nl",3081:"en-AU",10249:"en-BZ",4105:"en-CA",9225:"en-029",16393:"en-IN",6153:"en-IE",8201:"en-JM",17417:"en-MY",5129:"en-NZ",13321:"en-PH",18441:"en-SG",7177:"en-ZA",11273:"en-TT",2057:"en-GB",1033:"en",12297:"en-ZW",1061:"et",1080:"fo",1124:"fil",1035:"fi",2060:"fr-BE",3084:"fr-CA",1036:"fr",5132:"fr-LU",6156:"fr-MC",4108:"fr-CH",1122:"fy",1110:"gl",1079:"ka",3079:"de-AT",1031:"de",5127:"de-LI",4103:"de-LU",2055:"de-CH",1032:"el",1135:"kl",1095:"gu",1128:"ha",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig",1057:"id",1117:"iu",2141:"iu-Latn",2108:"ga",1076:"xh",1077:"zu",1040:"it",2064:"it-CH",1041:"ja",1099:"kn",1087:"kk",1107:"km",1158:"quc",1159:"rw",1089:"sw",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1062:"lv",1063:"lt",2094:"dsb",1134:"lb",1071:"mk",2110:"ms-BN",1086:"ms",1100:"ml",1082:"mt",1153:"mi",1146:"arn",1102:"mr",1148:"moh",1104:"mn",2128:"mn-CN",1121:"ne",1044:"nb",2068:"nn",1154:"oc",1096:"or",1123:"ps",1045:"pl",1046:"pt",2070:"pt-PT",1094:"pa",1131:"qu-BO",2155:"qu-EC",3179:"qu",1048:"ro",1047:"rm",1049:"ru",9275:"smn",4155:"smj-NO",5179:"smj",3131:"se-FI",1083:"se",2107:"se-SE",8251:"sms",6203:"sma-NO",7227:"sms",1103:"sa",7194:"sr-Cyrl-BA",3098:"sr",6170:"sr-Latn-BA",2074:"sr-Latn",1132:"nso",1074:"tn",1115:"si",1051:"sk",1060:"sl",11274:"es-AR",16394:"es-BO",13322:"es-CL",9226:"es-CO",5130:"es-CR",7178:"es-DO",12298:"es-EC",17418:"es-SV",4106:"es-GT",18442:"es-HN",2058:"es-MX",19466:"es-NI",6154:"es-PA",15370:"es-PY",10250:"es-PE",20490:"es-PR",3082:"es",1034:"es",21514:"es-US",14346:"es-UY",8202:"es-VE",2077:"sv-FI",1053:"sv",1114:"syr",1064:"tg",2143:"tzm",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1055:"tr",1090:"tk",1152:"ug",1058:"uk",1070:"hsb",1056:"ur",2115:"uz-Cyrl",1091:"uz",1066:"vi",1106:"cy",1160:"wo",1157:"sah",1144:"ii",1130:"yo"};function is(t,n,s){switch(t){case 0:if(n===65535)return"und";if(s)return s[n];break;case 1:return un[n];case 3:return hn[n]}}var li="utf-16",ns={0:"macintosh",1:"x-mac-japanese",2:"x-mac-chinesetrad",3:"x-mac-korean",6:"x-mac-greek",7:"x-mac-cyrillic",9:"x-mac-devanagai",10:"x-mac-gurmukhi",11:"x-mac-gujarati",12:"x-mac-oriya",13:"x-mac-bengali",14:"x-mac-tamil",15:"x-mac-telugu",16:"x-mac-kannada",17:"x-mac-malayalam",18:"x-mac-sinhalese",19:"x-mac-burmese",20:"x-mac-khmer",21:"x-mac-thai",22:"x-mac-lao",23:"x-mac-georgian",24:"x-mac-armenian",25:"x-mac-chinesesimp",26:"x-mac-tibetan",27:"x-mac-mongolian",28:"x-mac-ethiopic",29:"x-mac-ce",30:"x-mac-vietnamese",31:"x-mac-extarabic"},ss={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"};function Fi(t,n,s){switch(t){case 0:return li;case 1:return ss[s]||ns[n];case 3:if(n===1||n===10)return li;break}}var fn={0:"unicode",1:"macintosh",2:"reserved",3:"windows"};function as(t){return fn[t]}function ka(t,n,s){let o={},l=new he.Parser(t,n),h=l.parseUShort(),d=l.parseUShort(),B=l.offset+l.parseUShort();for(let w=0;w<d;w++){let x=l.parseUShort(),C=l.parseUShort(),S=l.parseUShort(),T=l.parseUShort(),Y=fr[T]||T,U=l.parseUShort(),L=l.parseUShort(),ee=is(x,S,s),Te=Fi(x,C,S),xe=as(x);if(Te!==void 0&&ee!==void 0&&xe!==void 0){let Re;if(Te===li?Re=Qe.UTF16(t,B+L,U):Re=Qe.MACSTRING(t,B+L,U,Te),Re){let Je=o[xe];Je===void 0&&(Je=o[xe]={});let $e=Je[Y];$e===void 0&&($e=Je[Y]={}),$e[ee]=Re}}}return h===1&&l.parseUShort(),o}function pr(t){let n={};for(let s in t)n[t[s]]=parseInt(s);return n}function Ti(t,n,s,o,l,h){return new $.Record("NameRecord",[{name:"platformID",type:"USHORT",value:t},{name:"encodingID",type:"USHORT",value:n},{name:"languageID",type:"USHORT",value:s},{name:"nameID",type:"USHORT",value:o},{name:"length",type:"USHORT",value:l},{name:"offset",type:"USHORT",value:h}])}function Si(t,n){let s=t.length,o=n.length-s+1;e:for(let l=0;l<o;l++)for(;l<o;l++){for(let h=0;h<s;h++)if(n[l+h]!==t[h])continue e;return l}return-1}function ci(t,n){let s=Si(t,n);if(s<0){s=n.length;let o=0,l=t.length;for(;o<l;++o)n.push(t[o])}return s}function os(t,n){let s=pr(fn),o=pr(un),l=pr(hn),h=[],d=[];for(let w in t){let x,C=[],S={},T=pr(fr),Y=s[w];for(let U in t[w]){let L=T[U];if(L===void 0&&(L=U),x=parseInt(L),isNaN(x))throw new Error('Name table entry "'+U+'" does not exist, see nameTableNames for complete list.');S[x]=t[w][U],C.push(x)}for(let U=0;U<C.length;U++){x=C[U];let L=S[x];for(let ee in L){let Te=L[ee];if(Y===1||Y===0){let xe=o[ee],Re=rs[xe],Je=Fi(Y,Re,xe),$e=Z.MACSTRING(Te,Je);if(Y===0&&(xe=n.indexOf(ee),xe<0&&(xe=n.length,n.push(ee)),Re=4,$e=Z.UTF16(Te)),$e!==void 0){let nt=ci($e,d);h.push(Ti(Y,Re,xe,x,$e.length,nt))}}if(Y===3){let xe=l[ee];if(xe!==void 0){let Re=Z.UTF16(Te),Je=ci(Re,d);h.push(Ti(3,1,xe,x,Re.length,Je))}}}}}h.sort(function(w,x){return w.platformID-x.platformID||w.encodingID-x.encodingID||w.languageID-x.languageID||w.nameID-x.nameID});let B=new $.Table("name",[{name:"format",type:"USHORT",value:0},{name:"count",type:"USHORT",value:h.length},{name:"stringOffset",type:"USHORT",value:6+h.length*12}]);for(let w=0;w<h.length;w++)B.fields.push({name:"record_"+w,type:"RECORD",value:h[w]});return B.fields.push({name:"strings",type:"LITERAL",value:d}),B}function ui(t,n,s=[]){if(n<256&&n in fr){if(s.length&&!s.includes(parseInt(n)))return;n=fr[n]}for(let o in t)for(let l in t[o])if(l===n||parseInt(l)===n)return t[o][l]}var pn={parse:ka,make:os,getNameByID:ui};function As(t,n,s,o){t.length=n.parseUShort(),t.language=n.parseUShort()-1;let l=n.parseByteList(t.length),h=Object.assign({},l),d=Fi(s,o,t.language),B=Oe[d];for(let w=0;w<B.length;w++)h[B.charCodeAt(w)]=l[128+w];t.glyphIndexMap=h}function ls(t,n,s){n.parseUShort(),t.length=n.parseULong(),t.language=n.parseULong();let o;t.groupCount=o=n.parseULong(),t.glyphIndexMap={};for(let l=0;l<o;l+=1){let h=n.parseULong(),d=n.parseULong(),B=n.parseULong();for(let w=h;w<=d;w+=1)t.glyphIndexMap[w]=B,s===12&&B++}}function cs(t,n,s,o,l){t.length=n.parseUShort(),t.language=n.parseUShort();let h;t.segCount=h=n.parseUShort()>>1,n.skip("uShort",3),t.glyphIndexMap={};let d=new he.Parser(s,o+l+14),B=new he.Parser(s,o+l+16+h*2),w=new he.Parser(s,o+l+16+h*4),x=new he.Parser(s,o+l+16+h*6),C=o+l+16+h*8;for(let S=0;S<h-1;S+=1){let T,Y=d.parseUShort(),U=B.parseUShort(),L=w.parseShort(),ee=x.parseUShort();for(let Te=U;Te<=Y;Te+=1)ee!==0?(C=x.offset+x.relativeOffset-2,C+=ee,C+=(Te-U)*2,T=he.getUShort(s,C),T!==0&&(T=T+L&65535)):T=Te+L&65535,t.glyphIndexMap[Te]=T}}function us(t,n){let s={};n.skip("uLong");let o=n.parseULong();for(let l=0;l<o;l+=1){let h=n.parseUInt24(),d={varSelector:h},B=n.parseOffset32(),w=n.parseOffset32(),x=n.relativeOffset;B&&(n.relativeOffset=B,d.defaultUVS=n.parseStruct({ranges:function(){return n.parseRecordList32({startUnicodeValue:n.parseUInt24,additionalCount:n.parseByte})}})),w&&(n.relativeOffset=w,d.nonDefaultUVS=n.parseStruct({uvsMappings:function(){let C={},S=n.parseRecordList32({unicodeValue:n.parseUInt24,glyphID:n.parseUShort});for(let T=0;T<S.length;T+=1)C[S[T].unicodeValue]=S[T];return C}})),s[h]=d,n.relativeOffset=x}t.varSelectorList=s}function Di(t,n){let s={};s.version=he.getUShort(t,n),G.argument(s.version===0,"cmap table version should be 0."),s.numTables=he.getUShort(t,n+2);let o=null,l=-1,h=-1,d=null,B=null,w=[0,1,2,3,4,6],x=[0,1,10];for(let S=s.numTables-1;S>=0;S-=1)if(d=he.getUShort(t,n+4+S*8),B=he.getUShort(t,n+4+S*8+2),d===3&&x.includes(B)||d===0&&w.includes(B)||d===1&&B===0){if(h>0)continue;if(h=he.getULong(t,n+4+S*8+4),o)break}else if(d===0&&B===5){if(l=he.getULong(t,n+4+S*8+4),o=new he.Parser(t,n+l),o.parseUShort()!==14)l=-1,o=null;else if(h>0)break}if(h===-1)throw new Error("No valid cmap sub-tables found.");let C=new he.Parser(t,n+h);if(s.format=C.parseUShort(),s.format===0)As(s,C,d,B);else if(s.format===12||s.format===13)ls(s,C,s.format);else if(s.format===4)cs(s,C,t,n,h);else throw new Error("Only format 0 (platformId 1, encodingId 0), 4, 12 and 14 cmap tables are supported (found format "+s.format+", platformId "+d+", encodingId "+B+").");return o&&us(s,o),s}function U0(t,n,s){t.segments.push({end:n,start:n,delta:-(n-s),offset:0,glyphIndex:s})}function k0(t){t.segments.push({end:65535,start:65535,delta:1,offset:0})}function Y0(t){if(t.length===0)return t;let n=[t[0]];for(let s=1;s<t.length;s++){let o=n[n.length-1],l=t[s];o.end+1===l.start&&o.delta===l.delta&&l.end!==65535?o.end=l.end:n.push(l)}return n}function O0(t){let n=!0,s;for(s=t.length-1;s>0;s-=1)if(t.get(s).unicode>65535){n=!1;break}let o=[{name:"version",type:"USHORT",value:0},{name:"numTables",type:"USHORT",value:n?1:2},{name:"platformID",type:"USHORT",value:3},{name:"encodingID",type:"USHORT",value:1},{name:"offset",type:"ULONG",value:n?12:20}];n||o.push({name:"cmap12PlatformID",type:"USHORT",value:3},{name:"cmap12EncodingID",type:"USHORT",value:10},{name:"cmap12Offset",type:"ULONG",value:0}),o.push({name:"format",type:"USHORT",value:4},{name:"cmap4Length",type:"USHORT",value:0},{name:"language",type:"USHORT",value:0},{name:"segCountX2",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0});let l=new $.Table("cmap",o);for(l.segments=[],s=0;s<t.length;s+=1){let Y=t.get(s);for(let U=0;U<Y.unicodes.length;U+=1)U0(l,Y.unicodes[U],s)}l.segments.sort(function(Y,U){return Y.start-U.start}),l.segments=Y0(l.segments),k0(l);let h=l.segments.length,d=0,B=[],w=[],x=[],C=[],S=[],T=[];for(s=0;s<h;s+=1){let Y=l.segments[s];Y.end<=65535&&Y.start<=65535?(B.push({name:"end_"+s,type:"USHORT",value:Y.end}),w.push({name:"start_"+s,type:"USHORT",value:Y.start}),x.push({name:"idDelta_"+s,type:"SHORT",value:Y.delta}),C.push({name:"idRangeOffset_"+s,type:"USHORT",value:Y.offset}),Y.glyphId!==void 0&&S.push({name:"glyph_"+s,type:"USHORT",value:Y.glyphId})):d+=1,!n&&Y.glyphIndex!==void 0&&(T.push({name:"cmap12Start_"+s,type:"ULONG",value:Y.start}),T.push({name:"cmap12End_"+s,type:"ULONG",value:Y.end}),T.push({name:"cmap12Glyph_"+s,type:"ULONG",value:Y.glyphIndex}))}l.segCountX2=(h-d)*2,l.searchRange=Math.pow(2,Math.floor(Math.log(h-d)/Math.log(2)))*2,l.entrySelector=Math.log(l.searchRange/2)/Math.log(2),l.rangeShift=l.segCountX2-l.searchRange;for(let Y=0;Y<B.length;Y++)l.fields.push(B[Y]);l.fields.push({name:"reservedPad",type:"USHORT",value:0});for(let Y=0;Y<w.length;Y++)l.fields.push(w[Y]);for(let Y=0;Y<x.length;Y++)l.fields.push(x[Y]);for(let Y=0;Y<C.length;Y++)l.fields.push(C[Y]);for(let Y=0;Y<S.length;Y++)l.fields.push(S[Y]);if(l.cmap4Length=14+B.length*2+2+w.length*2+x.length*2+C.length*2+S.length*2,!n){let Y=16+T.length*4;l.cmap12Offset=20+l.cmap4Length,l.fields.push({name:"cmap12Format",type:"USHORT",value:12},{name:"cmap12Reserved",type:"USHORT",value:0},{name:"cmap12Length",type:"ULONG",value:Y},{name:"cmap12Language",type:"ULONG",value:0},{name:"cmap12nGroups",type:"ULONG",value:T.length/3});for(let U=0;U<T.length;U++)l.fields.push(T[U])}return l}var Wl={parse:Di,make:O0},hs=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","266 ff","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],N0=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron"],R0=[".notdef","space","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],G0=[".notdef","space","dollaroldstyle","dollarsuperior","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","hyphensuperior","colonmonetary","onefitted","rupiah","centoldstyle","figuredash","hypheninferior","onequarter","onehalf","threequarters","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior"],Ya=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls"],L0=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],hi=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function Jl(t){this.font=t}Jl.prototype.charToGlyphIndex=function(t){let n=t.codePointAt(0),s=this.font.glyphs;if(s)for(let o=0;o<s.length;o+=1){let l=s.get(o);for(let h=0;h<l.unicodes.length;h+=1)if(l.unicodes[h]===n)return o}return null};function Vl(t){this.cmap=t}Vl.prototype.charToGlyphIndex=function(t){return this.cmap.glyphIndexMap[t.codePointAt(0)]||0};function jl(t,n){this.encoding=t,this.charset=n}jl.prototype.charToGlyphIndex=function(t){let n=t.codePointAt(0),s=this.encoding[n];return this.charset.indexOf(s)};function Oa(t){switch(t.version){case 1:this.names=hi.slice();break;case 2:this.names=new Array(t.numberOfGlyphs);for(let n=0;n<t.numberOfGlyphs;n++)t.glyphNameIndex[n]<hi.length?this.names[n]=hi[t.glyphNameIndex[n]]:this.names[n]=t.names[t.glyphNameIndex[n]-hi.length];break;case 2.5:this.names=new Array(t.numberOfGlyphs);for(let n=0;n<t.numberOfGlyphs;n++)this.names[n]=hi[n+t.glyphNameIndex[n]];break;case 3:this.names=[];break;default:this.names=[];break}}Oa.prototype.nameToGlyphIndex=function(t){return this.names.indexOf(t)},Oa.prototype.glyphIndexToName=function(t){return this.names[t]};function P0(t){let n,s=t.tables.cmap.glyphIndexMap,o=Object.keys(s);for(let l=0;l<o.length;l+=1){let h=o[l],d=s[h];n=t.glyphs.get(d),n.addUnicode(parseInt(h))}for(let l=0;l<t.glyphs.length;l+=1)n=t.glyphs.get(l),t.cffEncoding?n.name=t.cffEncoding.charset[l]:t.glyphNames.names&&(n.name=t.glyphNames.glyphIndexToName(l))}function H0(t){t._IndexToUnicodeMap={};let n=t.tables.cmap.glyphIndexMap,s=Object.keys(n);for(let o=0;o<s.length;o+=1){let l=s[o],h=n[l];t._IndexToUnicodeMap[h]===void 0?t._IndexToUnicodeMap[h]={unicodes:[parseInt(l)]}:t._IndexToUnicodeMap[h].unicodes.push(parseInt(l))}}function W0(t,n){n.lowMemory?H0(t):P0(t)}function J0(t,n,s,o,l){t.beginPath(),t.moveTo(n,s),t.lineTo(o,l),t.stroke()}var fi={line:J0};function V0(t,n){let s=new V(t,n),o=s.parseShort();o!==0&&console.warn("Only CPALv0 is currently fully supported.");let l=s.parseShort(),h=s.parseShort(),d=s.parseShort(),B=s.parseOffset32(),w=s.parseUShortList(h);s.relativeOffset=B;let x=s.parseULongList(d);return s.relativeOffset=B,{version:o,numPaletteEntries:l,colorRecords:x,colorRecordIndices:w}}function j0({version:t=0,numPaletteEntries:n=0,colorRecords:s=[],colorRecordIndices:o=[0]}){return G.argument(t===0,"Only CPALv0 are supported."),G.argument(s.length,"No colorRecords given."),G.argument(o.length,"No colorRecordIndices given."),o.length>1&&G.argument(n,"Can't infer numPaletteEntries on multiple colorRecordIndices"),new $.Table("CPAL",[{name:"version",type:"USHORT",value:t},{name:"numPaletteEntries",type:"USHORT",value:n||s.length},{name:"numPalettes",type:"USHORT",value:o.length},{name:"numColorRecords",type:"USHORT",value:s.length},{name:"colorRecordsArrayOffset",type:"ULONG",value:12+2*o.length},...o.map((l,h)=>({name:"colorRecordIndices_"+h,type:"USHORT",value:l})),...s.map((l,h)=>({name:"colorRecords_"+h,type:"ULONG",value:l}))])}function _l(t){var n=(t&4278190080)>>24,s=(t&16711680)>>16,o=(t&65280)>>8,l=t&255;return n=n+256&255,s=s+256&255,o=o+256&255,l=(l+256&255)/255,{b:n,g:s,r:o,a:l}}function Na(t,n,s=0,o="hexa"){if(n==65535)return"currentColor";let l=t&&t.tables&&t.tables.cpal;if(!l)return"currentColor";if(s>l.colorRecordIndices.length-1)throw new Error(`Palette index out of range (colorRecordIndices.length: ${l.colorRecordIndices.length}, index: ${n})`);if(n>l.numPaletteEntries)throw new Error(`Color index out of range (numPaletteEntries: ${l.numPaletteEntries}, index: ${n})`);let h=l.colorRecordIndices[s]+n;if(h>l.colorRecords)throw new Error(`Color index out of range (colorRecords.length: ${l.colorRecords.length}, lookupIndex: ${h})`);let d=_l(l.colorRecords[h]);return o==="bgra"?d:Mi(d,o)}function rr(t){return("0"+parseInt(t).toString(16)).slice(-2)}function _0(t){let n=t.r/255,s=t.g/255,o=t.b/255,l=Math.max(n,s,o),h=Math.min(n,s,o),d,B,w=(l+h)/2;if(l===h)d=B=0;else{let x=l-h;switch(B=w>.5?x/(2-l-h):x/(l+h),l){case n:d=(s-o)/x+(s<o?6:0);break;case s:d=(o-n)/x+2;break;case o:d=(n-s)/x+4;break}d/=6}return{h:d*360,s:B*100,l:w*100}}function Z0(t){let{h:n,s,l:o,a:l}=t;n=n%360,s/=100,o/=100;let h=(1-Math.abs(2*o-1))*s,d=h*(1-Math.abs(n/60%2-1)),B=o-h/2,w=0,x=0,C=0;return 0<=n&&n<60?(w=h,x=d,C=0):60<=n&&n<120?(w=d,x=h,C=0):120<=n&&n<180?(w=0,x=h,C=d):180<=n&&n<240?(w=0,x=d,C=h):240<=n&&n<300?(w=d,x=0,C=h):300<=n&&n<=360&&(w=h,x=0,C=d),{r:Math.round((w+B)*255),g:Math.round((x+B)*255),b:Math.round((C+B)*255),a:l}}function Zl(t){return parseInt(`0x${rr(t.b)}${rr(t.g)}${rr(t.r)}${rr(t.a*255)}`,16)}function fs(t,n="hexa"){let s=n=="raw"||n=="cpal",o=Number.isInteger(t),l=!0;if(o&&s||t==="currentColor")return t;if(typeof t=="object"){if(n=="bgra")return t;if(s)return Zl(t)}else if(!o&&/^#([a-f0-9]{3}|[a-f0-9]{4}|[a-f0-9]{6}|[a-f0-9]{8})$/i.test(t.trim())){switch(t=t.trim().substring(1),t.length){case 3:t={r:parseInt(t[0].repeat(2),16),g:parseInt(t[1].repeat(2),16),b:parseInt(t[2].repeat(2),16),a:1};break;case 4:t={r:parseInt(t[0].repeat(2),16),g:parseInt(t[1].repeat(2),16),b:parseInt(t[2].repeat(2),16),a:parseInt(t[3].repeat(2),16)/255};break;case 6:t={r:parseInt(t[0]+t[1],16),g:parseInt(t[2]+t[3],16),b:parseInt(t[4]+t[5],16),a:1};break;case 8:t={r:parseInt(t[0]+t[1],16),g:parseInt(t[2]+t[3],16),b:parseInt(t[4]+t[5],16),a:parseInt(t[6]+t[7],16)/255};break}if(n=="bgra")return t}else if(typeof document<"u"&&/^[a-z]+$/i.test(t)){let h=document.createElement("canvas").getContext("2d");h.fillStyle=t;let d=Mi(h.fillStyle,"hexa");d==="#000000ff"&&t.toLowerCase()!=="black"?l=!1:t=d}else{t=t.trim();let h=/rgba?\(\s*(?:(\d*\.\d+)(%?)|(\d+)(%?))\s*(?:,|\s*)\s*(?:(\d*\.\d+)(%?)|(\d+)(%?))\s*(?:,|\s*)\s*(?:(\d*\.\d+)(%?)|(\d+)(%?))\s*(?:(?:,|\s|\/)\s*(?:(0*(?:\.\d+)?()|0*1(?:\.0+)?())|(?:\.\d+)|(\d+)(%)|(\d*\.\d+)(%)))?\s*\)/;if(h.test(t)){let d=t.match(h).filter(B=>typeof B<"u");t={r:Math.round(parseFloat(d[1])/(d[2]?.39215686274509803:1)),g:Math.round(parseFloat(d[3])/(d[4]?.39215686274509803:1)),b:Math.round(parseFloat(d[5])/(d[6]?.39215686274509803:1)),a:d[7]?parseFloat(d[7])/(d[8]?100:1):1}}else{let d=/hsla?\(\s*(?:(\d*\.\d+|\d+)(deg|turn|))\s*(?:,|\s*)\s*(?:(\d*\.\d+)%?|(\d+)%?)\s*(?:,|\s*)\s*(?:(\d*\.\d+)%?|(\d+)%?)\s*(?:(?:,|\s|\/)\s*(?:(0*(?:\.\d+)?()|0*1(?:\.0+)?())|(?:\.\d+)|(\d+)(%)|(\d*\.\d+)(%)))?\s*\)/;if(d.test(t)){let B=t.match(d).filter(w=>typeof w<"u");t=Z0({h:parseFloat(B[1])*(B[2]==="turn"?360:1),s:parseFloat(B[3]),l:parseFloat(B[4]),a:B[5]?parseFloat(B[5])/(B[6]?100:1):1})}else l=!1}}if(!l)throw new Error(`Invalid color format: ${t}`);return Mi(t,n)}function Mi(t,n="hexa"){if(t==="currentColor")return t;if(Number.isInteger(t)){if(n=="raw"||n=="cpal")return t;t=_l(t)}else typeof t!="object"&&(t=fs(t,"bgra"));let s=["hsl","hsla"].includes(n)?_0(t):null;switch(n){case"rgba":return`rgba(${t.r}, ${t.g}, ${t.b}, ${parseFloat(t.a.toFixed(3))})`;case"rgb":return`rgb(${t.r}, ${t.g}, ${t.b})`;case"hex":case"hex6":case"hex-6":return`#${rr(t.r)}${rr(t.g)}${rr(t.b)}`;case"hexa":case"hex8":case"hex-8":return`#${rr(t.r)}${rr(t.g)}${rr(t.b)}${rr(t.a*255)}`;case"hsl":return`hsl(${s.h.toFixed(2)}, ${s.s.toFixed(2)}%, ${s.l.toFixed(2)}%)`;case"hsla":return`hsla(${s.h.toFixed(2)}, ${s.s.toFixed(2)}%, ${s.l.toFixed(2)}%, ${parseFloat(t.a.toFixed(3))})`;case"bgra":return t;case"raw":case"cpal":return Zl(t);default:throw new Error("Unknown color format: "+n)}}var Xl={parse:V0,make:j0,getPaletteColor:Na,parseColor:fs,formatColor:Mi};function X0(t,n){let s=n||new z;return{configurable:!0,get:function(){return typeof s=="function"&&(s=s()),s},set:function(o){s=o}}}function Qt(t){this.bindConstructorValues(t)}Qt.prototype.bindConstructorValues=function(t){if(this.index=t.index||0,t.name===".notdef"?t.unicode=void 0:t.name===".null"&&(t.unicode=0),t.unicode===0&&t.name!==".null")throw new Error('The unicode value "0" is reserved for the glyph name ".null" and cannot be used by any other glyph.');this.name=t.name||null,this.unicode=t.unicode,this.unicodes=t.unicodes||(t.unicode!==void 0?[t.unicode]:[]),"xMin"in t&&(this.xMin=t.xMin),"yMin"in t&&(this.yMin=t.yMin),"xMax"in t&&(this.xMax=t.xMax),"yMax"in t&&(this.yMax=t.yMax),"advanceWidth"in t&&(this.advanceWidth=t.advanceWidth),"leftSideBearing"in t&&(this.leftSideBearing=t.leftSideBearing),"points"in t&&(this.points=t.points),Object.defineProperty(this,"path",X0(this,t.path))},Qt.prototype.addUnicode=function(t){this.unicodes.length===0&&(this.unicode=t),this.unicodes.push(t)},Qt.prototype.getBoundingBox=function(){return this.path.getBoundingBox()},Qt.prototype.getPath=function(t,n,s,o,l){t=t!==void 0?t:0,n=n!==void 0?n:0,s=s!==void 0?s:72,o=Object.assign({},l&&l.defaultRenderOptions,o);let h,d,B=o.xScale,w=o.yScale,x=1/(this.path.unitsPerEm||1e3)*s,C=this;l&&l.variation&&(C=l.variation.getTransform(this,o.variation),h=C.path.commands),o.hinting&&l&&l.hinting&&(d=C.path&&l.hinting.exec(C,s,o)),d?(h=l.hinting.getCommands(d),t=Math.round(t),n=Math.round(n),B=w=1):(h=C.path.commands,B===void 0&&(B=x),w===void 0&&(w=x));let S=new z;if(o.drawSVG){let T=this.getSvgImage(l);if(T){let Y=new z;return Y._image={image:T.image,x:t+T.leftSideBearing*x,y:n-T.baseline*x,width:T.image.width*x,height:T.image.height*x},S._layers=[Y],S}}if(o.drawLayers){let T=this.getLayers(l);if(T&&T.length){S._layers=[];for(let Y=0;Y<T.length;Y+=1){let U=T[Y],L=Na(l,U.paletteIndex,o.usePalette);L==="currentColor"?L=o.fill||"black":L=Mi(L,o.colorFormat||"rgba"),o=Object.assign({},o,{fill:L}),S._layers.push(this.getPath.call(U.glyph,t,n,s,o,l))}return S}}S.fill=o.fill||this.path.fill,S.stroke=this.path.stroke,S.strokeWidth=this.path.strokeWidth*x;for(let T=0;T<h.length;T+=1){let Y=h[T];Y.type==="M"?S.moveTo(t+Y.x*B,n+-Y.y*w):Y.type==="L"?S.lineTo(t+Y.x*B,n+-Y.y*w):Y.type==="Q"?S.quadraticCurveTo(t+Y.x1*B,n+-Y.y1*w,t+Y.x*B,n+-Y.y*w):Y.type==="C"?S.curveTo(t+Y.x1*B,n+-Y.y1*w,t+Y.x2*B,n+-Y.y2*w,t+Y.x*B,n+-Y.y*w):Y.type==="Z"&&S.stroke&&S.strokeWidth&&S.closePath()}return S},Qt.prototype.getLayers=function(t){if(!t)throw new Error("The font object is required to read the colr/cpal tables in order to get the layers.");return t.layers.get(this.index)},Qt.prototype.getSvgImage=function(t){if(!t)throw new Error("The font object is required to read the svg table in order to get the image.");return t.svgImages.get(this.index)},Qt.prototype.getContours=function(t=null){if(this.points===void 0&&!t)return[];let n=[],s=[],o=t||this.points;for(let l=0;l<o.length;l+=1){let h=o[l];s.push(h),h.lastPointOfContour&&(n.push(s),s=[])}return G.argument(s.length===0,"There are still points left in the current contour."),n},Qt.prototype.getMetrics=function(){let t=this.path.commands,n=[],s=[];for(let l=0;l<t.length;l+=1){let h=t[l];h.type!=="Z"&&(n.push(h.x),s.push(h.y)),(h.type==="Q"||h.type==="C")&&(n.push(h.x1),s.push(h.y1)),h.type==="C"&&(n.push(h.x2),s.push(h.y2))}let o={xMin:Math.min.apply(null,n),yMin:Math.min.apply(null,s),xMax:Math.max.apply(null,n),yMax:Math.max.apply(null,s),leftSideBearing:this.leftSideBearing};return isFinite(o.xMin)||(o.xMin=0),isFinite(o.xMax)||(o.xMax=this.advanceWidth),isFinite(o.yMin)||(o.yMin=0),isFinite(o.yMax)||(o.yMax=0),o.rightSideBearing=this.advanceWidth-o.leftSideBearing-(o.xMax-o.xMin),o},Qt.prototype.draw=function(t,n,s,o,l,h){l=Object.assign({},h&&h.defaultRenderOptions,l),this.getPath(n,s,o,l,h).draw(t)},Qt.prototype.drawPoints=function(t,n,s,o,l,h){if(l=Object.assign({},h&&h.defaultRenderOptions,l),l.drawLayers){let T=this.getLayers(h);if(T&&T.length){for(let Y=0;Y<T.length;Y+=1)T[Y].glyph.index!==this.index&&this.drawPoints.call(T[Y].glyph,t,n,s,o);return}}function d(T,Y,U,L){t.beginPath();for(let ee=0;ee<T.length;ee+=1)t.moveTo(Y+T[ee].x*L,U+T[ee].y*L),t.arc(Y+T[ee].x*L,U+T[ee].y*L,2,0,Math.PI*2,!1);t.fill()}n=n!==void 0?n:0,s=s!==void 0?s:0,o=o!==void 0?o:24;let B=1/this.path.unitsPerEm*o,w=[],x=[],S=this.path.commands;h&&h.variation&&(S=h.variation.getTransform(this,l.variation).path.commands);for(let T=0;T<S.length;T+=1){let Y=S[T];Y.x!==void 0&&w.push({x:Y.x,y:-Y.y}),Y.x1!==void 0&&x.push({x:Y.x1,y:-Y.y1}),Y.x2!==void 0&&x.push({x:Y.x2,y:-Y.y2})}t.fillStyle="blue",d(w,n,s,B),t.fillStyle="red",d(x,n,s,B)},Qt.prototype.drawMetrics=function(t,n,s,o){let l;n=n!==void 0?n:0,s=s!==void 0?s:0,o=o!==void 0?o:24,l=1/this.path.unitsPerEm*o,t.lineWidth=1,t.strokeStyle="black",fi.line(t,n,-1e4,n,1e4),fi.line(t,-1e4,s,1e4,s);let h=this.xMin||0,d=this.yMin||0,B=this.xMax||0,w=this.yMax||0,x=this.advanceWidth||0;t.strokeStyle="blue",fi.line(t,n+h*l,-1e4,n+h*l,1e4),fi.line(t,n+B*l,-1e4,n+B*l,1e4),fi.line(t,-1e4,s+-d*l,1e4,s+-d*l),fi.line(t,-1e4,s+-w*l,1e4,s+-w*l),t.strokeStyle="green",fi.line(t,n+x*l,-1e4,n+x*l,1e4)},Qt.prototype.toPathData=function(t,n){t=Object.assign({},{variation:n&&n.defaultRenderOptions.variation},t);let s=this;n&&n.variation&&(s=n.variation.getTransform(this,t.variation));let o=s.points&&t.pointsTransform?t.pointsTransform(s.points):s.path;return t.pathTransform&&(o=t.pathTransform(o)),o.toPathData(t)},Qt.prototype.fromSVG=function(t,n={}){return this.path.fromSVG(t,n)},Qt.prototype.toSVG=function(t,n){let s=this.toPathData.apply(this,[t,n]);return this.path.toSVG(t,s)},Qt.prototype.toDOMElement=function(t,n){t=Object.assign({},{variation:n&&n.defaultRenderOptions.variation},t);let s=this.path;return n&&n.variation&&(s=n.variation.getTransform(this,t.variation).path),s.toDOMElement(t)};var Ui=Qt;function ki(t,n,s){Object.defineProperty(t,n,{get:function(){return typeof t[s]>"u"&&t.path,t[s]},set:function(o){t[s]=o},enumerable:!0,configurable:!0})}function ps(t,n){if(this.font=t,this.glyphs={},Array.isArray(n))for(let s=0;s<n.length;s++){let o=n[s];o.path.unitsPerEm=t.unitsPerEm,this.glyphs[s]=o}this.length=n&&n.length||0}typeof Symbol<"u"&&Symbol.iterator&&(ps.prototype[Symbol.iterator]=function(){let t=-1;return{next:function(){t++;let n=t>=this.length-1;return{value:this.get(t),done:n}}.bind(this)}}),ps.prototype.get=function(t){if(this.font._push&&this.glyphs[t]===void 0){this.font._push(t),typeof this.glyphs[t]=="function"&&(this.glyphs[t]=this.glyphs[t]());let n=this.glyphs[t],s=this.font._IndexToUnicodeMap[t];if(s)for(let o=0;o<s.unicodes.length;o++)n.addUnicode(s.unicodes[o]);this.font.cffEncoding?n.name=this.font.cffEncoding.charset[t]:this.font.glyphNames.names&&(n.name=this.font.glyphNames.glyphIndexToName(t)),this.glyphs[t].advanceWidth=this.font._hmtxTableData[t].advanceWidth,this.glyphs[t].leftSideBearing=this.font._hmtxTableData[t].leftSideBearing}else typeof this.glyphs[t]=="function"&&(this.glyphs[t]=this.glyphs[t]());return this.glyphs[t]},ps.prototype.push=function(t,n){this.glyphs[t]=n,this.length++};function z0(t,n){return new Ui({index:n,font:t})}function q0(t,n,s,o,l,h){return function(){let d=new Ui({index:n,font:t});return d.path=function(){s(d,o,l);let B=h(t.glyphs,d);return B.unitsPerEm=t.unitsPerEm,B},ki(d,"numberOfContours","_numberOfContours"),ki(d,"xMin","_xMin"),ki(d,"xMax","_xMax"),ki(d,"yMin","_yMin"),ki(d,"yMax","_yMax"),ki(d,"points","_points"),d}}function K0(t,n,s,o,l){return function(){let h=new Ui({index:n,font:t});return h.path=function(){let d=s(t,h,o,l);return d.unitsPerEm=t.unitsPerEm,d},h}}var dr={GlyphSet:ps,glyphLoader:z0,ttfGlyphLoader:q0,cffGlyphLoader:K0};function zl(t,n){if(t===n)return!0;if(Array.isArray(t)&&Array.isArray(n)){if(t.length!==n.length)return!1;for(let s=0;s<t.length;s+=1)if(!zl(t[s],n[s]))return!1;return!0}else return!1}var ql=10;function ds(t){let n;return t.length<1240?n=107:t.length<33900?n=1131:n=32768,n}function gr(t,n,s,o){let l=[],h=[],d=o>1?he.getULong(t,n):he.getCard16(t,n),B=o>1?4:2,w,x;if(d!==0){let C=he.getByte(t,n+B);w=n+(d+1)*C+B;let S=n+B+1;for(let T=0;T<d+1;T+=1)l.push(he.getOffset(t,S,C)),S+=C;x=w+l[d]}else x=n+B;for(let C=0;C<l.length-1;C+=1){let S=he.getBytes(t,w+l[C],w+l[C+1]);s&&(S=s(S,t,n,o)),h.push(S)}return{objects:h,startOffset:n,endOffset:x}}function $0(t,n,s){let o=[],l=s>1?he.getULong(t,n):he.getCard16(t,n),h=s>1?4:2,d,B;if(l!==0){let w=he.getByte(t,n+h);d=n+(l+1)*w+h;let x=n+h+1;for(let C=0;C<l+1;C+=1)o.push(he.getOffset(t,x,w)),x+=w;B=d+o[l]}else B=n+h;return{offsets:o,startOffset:n,endOffset:B}}function eB(t,n,s,o,l,h){let d=h>1?he.getULong(s,o):he.getCard16(s,o),B=h>1?4:2,w=0;if(d!==0){let C=he.getByte(s,o+B);w=o+(d+1)*C+B}let x=he.getBytes(s,w+n[t],w+n[t+1]);return l&&(x=l(x)),x}function tB(t){let n="",o=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"];for(;;){let l=t.parseByte(),h=l>>4,d=l&15;if(h===15||(n+=o[h],d===15))break;n+=o[d]}return parseFloat(n)}function rB(t,n){let s,o,l,h;if(n===28)return s=t.parseByte(),o=t.parseByte(),s<<8|o;if(n===29)return s=t.parseByte(),o=t.parseByte(),l=t.parseByte(),h=t.parseByte(),s<<24|o<<16|l<<8|h;if(n===30)return tB(t);if(n>=32&&n<=246)return n-139;if(n>=247&&n<=250)return s=t.parseByte(),(n-247)*256+s+108;if(n>=251&&n<=254)return s=t.parseByte(),-(n-251)*256-s-108;throw new Error("Invalid b0 "+n)}function iB(t){let n={};for(let s=0;s<t.length;s+=1){let o=t[s][0],l=t[s][1],h;if(l.length===1?h=l[0]:h=l,Object.prototype.hasOwnProperty.call(n,o)&&!isNaN(n[o]))throw new Error("Object "+n+" already has key "+o);n[o]=h}return n}function Ra(t,n,s,o){n=n!==void 0?n:0;let l=new he.Parser(t,n),h=[],d=[];s=s!==void 0?s:t.byteLength;let B=o<2?22:28;for(;l.relativeOffset<s;){let w=l.parseByte();if(w<B){if(w===12&&(w=1200+l.parseByte()),o>1&&w===23){uB(d);continue}h.push([w,d]),d=[]}else d.push(rB(l,w,o))}return iB(h)}function dn(t,n){return n<=390?n=hs[n]:t?n=t[n-391]:n=void 0,n}function Ga(t,n,s){let o={},l;for(let h=0;h<n.length;h+=1){let d=n[h];if(Array.isArray(d.type)){let B=[];B.length=d.type.length;for(let w=0;w<d.type.length;w++)l=t[d.op]!==void 0?t[d.op][w]:void 0,l===void 0&&(l=d.value!==void 0&&d.value[w]!==void 0?d.value[w]:null),d.type[w]==="SID"&&(l=dn(s,l)),B[w]=l;o[d.name]=B}else l=t[d.op],l===void 0&&(l=d.value!==void 0?d.value:null),d.type==="SID"&&(l=dn(s,l)),o[d.name]=l}return o}function nB(t,n){let s={};if(s.formatMajor=he.getCard8(t,n),s.formatMinor=he.getCard8(t,n+1),s.formatMajor>2)throw new Error(`Unsupported CFF table version ${s.formatMajor}.${s.formatMinor}`);return s.size=he.getCard8(t,n+2),s.formatMajor<2?(s.offsetSize=he.getCard8(t,n+3),s.startOffset=n,s.endOffset=n+4):(s.topDictLength=he.getCard16(t,n+3),s.endOffset=n+8),s}var Kl=[{name:"version",op:0,type:"SID"},{name:"notice",op:1,type:"SID"},{name:"copyright",op:1200,type:"SID"},{name:"fullName",op:2,type:"SID"},{name:"familyName",op:3,type:"SID"},{name:"weight",op:4,type:"SID"},{name:"isFixedPitch",op:1201,type:"number",value:0},{name:"italicAngle",op:1202,type:"number",value:0},{name:"underlinePosition",op:1203,type:"number",value:-100},{name:"underlineThickness",op:1204,type:"number",value:50},{name:"paintType",op:1205,type:"number",value:0},{name:"charstringType",op:1206,type:"number",value:2},{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"uniqueId",op:13,type:"number"},{name:"fontBBox",op:5,type:["number","number","number","number"],value:[0,0,0,0]},{name:"strokeWidth",op:1208,type:"number",value:0},{name:"xuid",op:14,type:[],value:null},{name:"charset",op:15,type:"offset",value:0},{name:"encoding",op:16,type:"offset",value:0},{name:"charStrings",op:17,type:"offset",value:0},{name:"private",op:18,type:["number","offset"],value:[0,0]},{name:"ros",op:1230,type:["SID","SID","number"]},{name:"cidFontVersion",op:1231,type:"number",value:0},{name:"cidFontRevision",op:1232,type:"number",value:0},{name:"cidFontType",op:1233,type:"number",value:0},{name:"cidCount",op:1234,type:"number",value:8720},{name:"uidBase",op:1235,type:"number"},{name:"fdArray",op:1236,type:"offset"},{name:"fdSelect",op:1237,type:"offset"},{name:"fontName",op:1238,type:"SID"}],$l=[{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"charStrings",op:17,type:"offset"},{name:"fdArray",op:1236,type:"offset"},{name:"fdSelect",op:1237,type:"offset"},{name:"vstore",op:24,type:"offset"}],ec=[{name:"subrs",op:19,type:"offset",value:0},{name:"defaultWidthX",op:20,type:"number",value:0},{name:"nominalWidthX",op:21,type:"number",value:0}],tc=[{name:"blueValues",op:6,type:"delta"},{name:"otherBlues",op:7,type:"delta"},{name:"familyBlues",op:7,type:"delta"},{name:"familyBlues",op:8,type:"delta"},{name:"familyOtherBlues",op:9,type:"delta"},{name:"blueScale",op:1209,type:"number",value:.039625},{name:"blueShift",op:1210,type:"number",value:7},{name:"blueFuzz",op:1211,type:"number",value:1},{name:"stdHW",op:10,type:"number"},{name:"stdVW",op:11,type:"number"},{name:"stemSnapH",op:1212,type:"number"},{name:"stemSnapV",op:1213,type:"number"},{name:"languageGroup",op:1217,type:"number",value:0},{name:"expansionFactor",op:1218,type:"number",value:.06},{name:"vsindex",op:22,type:"number",value:0},{name:"subrs",op:19,type:"offset"}],sB=[{name:"private",op:18,type:["number","offset"],value:[0,0]}];function aB(t,n,s,o){let l=Ra(t,n,t.byteLength,o);return Ga(l,o>1?$l:Kl,s)}function La(t,n,s,o,l){let h=Ra(t,n,s,l);return Ga(h,l>1?tc:ec,o)}function oB(t,n,s){let o=Ra(t,n,void 0,s);return Ga(o,sB)}function AB(t,n,s){let o=[];for(let l=0;l<s.length;l++){let h=new DataView(new Uint8Array(s[l]).buffer),d=oB(h,0,2),B=d.private[0],w=d.private[1];if(B!==0&&w!==0){let x=La(t,w+n,B,[],2);if(x.subrs){let C=w+x.subrs,S=gr(t,C+n,void 0,2);d._subrs=S.objects,d._subrsBias=ds(d._subrs)}d._privateDict=x}o.push(d)}return o}function Pa(t,n,s,o,l){let h=[];for(let d=0;d<s.length;d+=1){let B=new DataView(new Uint8Array(s[d]).buffer),w=aB(B,0,o,l);w._subrs=[],w._subrsBias=0,w._defaultWidthX=0,w._nominalWidthX=0;let x=l<2?w.private[0]:0,C=l<2?w.private[1]:0;if(x!==0&&C!==0){let S=La(t,C+n,x,o,l);if(w._defaultWidthX=S.defaultWidthX,w._nominalWidthX=S.nominalWidthX,S.subrs!==0){let T=C+S.subrs,Y=gr(t,T+n,void 0,l);w._subrs=Y.objects,w._subrsBias=ds(w._subrs)}w._privateDict=S}h.push(w)}return h}function lB(t,n,s,o,l){let h,d,B=new he.Parser(t,n);s-=1;let w=[".notdef"],x=B.parseCard8();if(x===0)for(let C=0;C<s;C+=1)h=B.parseSID(),l?w.push(h):w.push(dn(o,h)||h);else if(x===1)for(;w.length<=s;){h=B.parseSID(),d=B.parseCard8();for(let C=0;C<=d;C+=1)l?w.push("cid"+("00000"+h).slice(-5)):w.push(dn(o,h)||h),h+=1}else if(x===2)for(;w.length<=s;){h=B.parseSID(),d=B.parseCard16();for(let C=0;C<=d;C+=1)l?w.push("cid"+("00000"+h).slice(-5)):w.push(dn(o,h)||h),h+=1}else throw new Error("Unknown charset format "+x);return w}function cB(t,n){let s,o={},l=new he.Parser(t,n),h=l.parseCard8();if(h===0){let d=l.parseCard8();for(let B=0;B<d;B+=1)s=l.parseCard8(),o[s]=B}else if(h===1){let d=l.parseCard8();s=1;for(let B=0;B<d;B+=1){let w=l.parseCard8(),x=l.parseCard8();for(let C=w;C<=w+x;C+=1)o[C]=s,s+=1}}else throw new Error("Unknown encoding format "+h);return o}function uB(t){let n=t.pop();for(;t.length>n;)t.pop()}function rc(t,n){let s=t.tables.cff&&t.tables.cff.topDict&&t.tables.cff.topDict.paintType||0;return s===2&&(n.fill=null,n.stroke="black",n.strokeWidth=t.tables.cff.topDict.strokeWidth||0),s}function Ha(t,n,s,o,l){let h,d,B,w,x=new z,C=[],S=0,T=!1,Y=!1,U=0,L=0,ee,Te,xe,Re,Je=0,$e=[],nt,st=0,Bt=t.tables.cff2||t.tables.cff;if(xe=Bt.topDict._defaultWidthX,Re=Bt.topDict._nominalWidthX,l=l||t.variation&&t.variation.get(),n.getBlendPath||(n.getBlendPath=function(we){return Ha(t,n,s,o,we)}),t.isCIDFont||o>1){let we=Bt.topDict._fdSelect?Bt.topDict._fdSelect[n.index]:0,Ce=Bt.topDict._fdArray[we];ee=Ce._subrs,Te=Ce._subrsBias,o>1?($e=Bt.topDict._vstore.itemVariationStore,Je=Ce._privateDict.vsindex):(xe=Ce._defaultWidthX,Re=Ce._nominalWidthX)}else ee=Bt.topDict._subrs,Te=Bt.topDict._subrsBias;let sr=rc(t,x),Ve=xe;function Vt(we,Ce){Y&&sr!==2&&x.closePath(),x.moveTo(we,Ce),Y=!0}function Dt(){let we;we=(C.length&1)!==0,we&&!T&&(Ve=C.shift()+Re),S+=C.length>>1,C.length=0,T=!0}function Se(we){let Ce,vt,$r,Qs,mi,ar,Mt,Xt,It,jt,Ut,kt,gt=0;for(;gt<we.length;){let qt=we[gt];switch(gt+=1,qt){case 1:Dt();break;case 3:Dt();break;case 4:C.length>1&&!T&&(Ve=C.shift()+Re,T=!0),L+=C.pop(),Vt(U,L);break;case 5:for(;C.length>0;)U+=C.shift(),L+=C.shift(),x.lineTo(U,L);break;case 6:for(;C.length>0&&(U+=C.shift(),x.lineTo(U,L),C.length!==0);)L+=C.shift(),x.lineTo(U,L);break;case 7:for(;C.length>0&&(L+=C.shift(),x.lineTo(U,L),C.length!==0);)U+=C.shift(),x.lineTo(U,L);break;case 8:for(;C.length>0;)h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+C.shift(),x.curveTo(h,d,B,w,U,L);break;case 10:if(mi=C.pop()+Te,ar=ee[mi],ar){if(st>=ql){console.warn("CFF charstring subroutine call depth exceeded, skipping callsubr");break}st++,Se(ar),st--}break;case 11:if(o>1){console.error("CFF CharString operator return (11) is not supported in CFF2");break}return;case 12:switch(qt=we[gt],gt+=1,qt){case 35:h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),Mt=B+C.shift(),Xt=w+C.shift(),It=Mt+C.shift(),jt=Xt+C.shift(),Ut=It+C.shift(),kt=jt+C.shift(),U=Ut+C.shift(),L=kt+C.shift(),C.shift(),x.curveTo(h,d,B,w,Mt,Xt),x.curveTo(It,jt,Ut,kt,U,L);break;case 34:h=U+C.shift(),d=L,B=h+C.shift(),w=d+C.shift(),Mt=B+C.shift(),Xt=w,It=Mt+C.shift(),jt=w,Ut=It+C.shift(),kt=L,U=Ut+C.shift(),x.curveTo(h,d,B,w,Mt,Xt),x.curveTo(It,jt,Ut,kt,U,L);break;case 36:h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),Mt=B+C.shift(),Xt=w,It=Mt+C.shift(),jt=w,Ut=It+C.shift(),kt=jt+C.shift(),U=Ut+C.shift(),x.curveTo(h,d,B,w,Mt,Xt),x.curveTo(It,jt,Ut,kt,U,L);break;case 37:h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),Mt=B+C.shift(),Xt=w+C.shift(),It=Mt+C.shift(),jt=Xt+C.shift(),Ut=It+C.shift(),kt=jt+C.shift(),Math.abs(Ut-U)>Math.abs(kt-L)?U=Ut+C.shift():L=kt+C.shift(),x.curveTo(h,d,B,w,Mt,Xt),x.curveTo(It,jt,Ut,kt,U,L);break;default:console.log("Glyph "+n.index+": unknown operator 1200"+qt),C.length=0}break;case 14:if(o>1){console.error("CFF CharString operator endchar (14) is not supported in CFF2");break}if(C.length>=4){let Bi=Ya[C.pop()],Ri=Ya[C.pop()],vs=C.pop(),Is=C.pop();if(Bi&&Ri){n.isComposite=!0,n.components=[];let mu=t.cffEncoding.charset.indexOf(Bi),Bu=t.cffEncoding.charset.indexOf(Ri);n.components.push({glyphIndex:Bu,dx:0,dy:0}),n.components.push({glyphIndex:mu,dx:Is,dy:vs}),x.extend(t.glyphs.get(Bu).path);let Zy=t.glyphs.get(mu),ao=JSON.parse(JSON.stringify(Zy.path.commands));for(let oo=0;oo<ao.length;oo+=1){let Br=ao[oo];Br.type!=="Z"&&(Br.x+=Is,Br.y+=vs),(Br.type==="Q"||Br.type==="C")&&(Br.x1+=Is,Br.y1+=vs),Br.type==="C"&&(Br.x2+=Is,Br.y2+=vs)}x.extend(ao)}}else C.length>0&&!T&&(Ve=C.shift()+Re,T=!0);Y&&sr!==2&&(x.closePath(),Y=!1);break;case 15:if(o<2){console.error("CFF2 CharString operator vsindex (15) is not supported in CFF");break}Je=C.pop();break;case 16:if(o<2){console.error("CFF2 CharString operator blend (16) is not supported in CFF");break}nt||(nt=t.variation&&l&&t.variation.process.getBlendVector($e,Je,l));var at=C.pop(),Nt=nt?nt.length:$e.itemVariationSubtables[Je].regionIndexes.length,zt=at*Nt,or=C.length-zt,Mr=or-at;if(nt)for(let Bi=0;Bi<at;Bi++){var gu=C[Mr+Bi];for(let Ri=0;Ri<Nt;Ri++)gu+=nt[Ri]*C[or++];C[Mr+Bi]=gu}for(;zt--;)C.pop();break;case 18:Dt();break;case 19:case 20:Dt(),gt+=S+7>>3;break;case 21:C.length>2&&!T&&(Ve=C.shift()+Re,T=!0),L+=C.pop(),U+=C.pop(),Vt(U,L);break;case 22:C.length>1&&!T&&(Ve=C.shift()+Re,T=!0),U+=C.pop(),Vt(U,L);break;case 23:Dt();break;case 24:for(;C.length>2;)h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+C.shift(),x.curveTo(h,d,B,w,U,L);U+=C.shift(),L+=C.shift(),x.lineTo(U,L);break;case 25:for(;C.length>6;)U+=C.shift(),L+=C.shift(),x.lineTo(U,L);h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+C.shift(),x.curveTo(h,d,B,w,U,L);break;case 26:for(C.length&1&&(U+=C.shift());C.length>0;)h=U,d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B,L=w+C.shift(),x.curveTo(h,d,B,w,U,L);break;case 27:for(C.length&1&&(L+=C.shift());C.length>0;)h=U+C.shift(),d=L,B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w,x.curveTo(h,d,B,w,U,L);break;case 28:Ce=we[gt],vt=we[gt+1],C.push((Ce<<24|vt<<16)>>16),gt+=2;break;case 29:if(mi=C.pop()+t.gsubrsBias,ar=t.gsubrs[mi],ar){if(st>=ql){console.warn("CFF charstring subroutine call depth exceeded, skipping callgsubr");break}st++,Se(ar),st--}break;case 30:for(;C.length>0&&(h=U,d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+(C.length===1?C.shift():0),x.curveTo(h,d,B,w,U,L),C.length!==0);)h=U+C.shift(),d=L,B=h+C.shift(),w=d+C.shift(),L=w+C.shift(),U=B+(C.length===1?C.shift():0),x.curveTo(h,d,B,w,U,L);break;case 31:for(;C.length>0&&(h=U+C.shift(),d=L,B=h+C.shift(),w=d+C.shift(),L=w+C.shift(),U=B+(C.length===1?C.shift():0),x.curveTo(h,d,B,w,U,L),C.length!==0);)h=U,d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+(C.length===1?C.shift():0),x.curveTo(h,d,B,w,U,L);break;default:qt<32?console.log("Glyph "+n.index+": unknown operator "+qt):qt<247?C.push(qt-139):qt<251?(Ce=we[gt],gt+=1,C.push((qt-247)*256+Ce+108)):qt<255?(Ce=we[gt],gt+=1,C.push(-(qt-251)*256-Ce-108)):(Ce=we[gt],vt=we[gt+1],$r=we[gt+2],Qs=we[gt+3],gt+=4,C.push((Ce<<24|vt<<16|$r<<8|Qs)/65536))}}}return Se(s),t.variation&&l&&(x.commands=x.commands.map(we=>{let Ce=Object.keys(we);for(let vt=0;vt<Ce.length;vt++){let $r=Ce[vt];$r!=="type"&&(we[$r]=Math.round(we[$r]))}return we})),T&&(n.advanceWidth=Ve),x}function ic(t,n,s,o,l){let h=[],d,B=new he.Parser(t,n),w=B.parseCard8();if(w===0)for(let x=0;x<s;x++){if(d=B.parseCard8(),d>=o)throw new Error("CFF table CID Font FDSelect has bad FD index value "+d+" (FD count "+o+")");h.push(d)}else if(w===3||l>1&&w===4){let x=w===4?B.parseULong():B.parseCard16(),C=w===4?B.parseULong():B.parseCard16();if(C!==0)throw new Error(`CFF Table CID Font FDSelect format ${w} range has bad initial GID ${C}`);let S;for(let T=0;T<x;T++){if(d=w===4?B.parseUShort():B.parseCard8(),S=w===4?B.parseULong():B.parseCard16(),d>=o)throw new Error("CFF table CID Font FDSelect has bad FD index value "+d+" (FD count "+o+")");if(S>s)throw new Error(`CFF Table CID Font FDSelect format ${l} range has bad GID ${S}`);for(;C<S;C++)h.push(d);C=S}if(S!==s)throw new Error("CFF Table CID Font FDSelect format 3 range has bad final (Sentinal) GID "+S)}else throw new Error("CFF Table CID Font FDSelect table has unsupported format "+w);return h}function hB(t,n,s,o){let l,h=nB(t,n);h.formatMajor===2?l=s.tables.cff2={}:l=s.tables.cff={};let d=h.formatMajor>1?null:gr(t,h.endOffset,he.bytesToString),B=h.formatMajor>1?null:gr(t,d.endOffset),w=h.formatMajor>1?null:gr(t,B.endOffset,he.bytesToString),x=gr(t,h.formatMajor>1?n+h.size+h.topDictLength:w.endOffset,void 0,h.formatMajor);s.gsubrs=x.objects,s.gsubrsBias=ds(s.gsubrs);let C;if(h.formatMajor>1){let T=n+h.size,Y=he.getBytes(t,T,T+h.topDictLength);C=Pa(t,0,[Y],void 0,h.formatMajor)[0]}else{let T=Pa(t,n,B.objects,w.objects,h.formatMajor);if(T.length!==1)throw new Error("CFF table has too many fonts in 'FontSet' - count of fonts NameIndex.length = "+T.length);C=T[0]}if(l.topDict=C,C._privateDict&&(s.defaultWidthX=C._privateDict.defaultWidthX,s.nominalWidthX=C._privateDict.nominalWidthX),h.formatMajor<2&&C.ros[0]!==void 0&&C.ros[1]!==void 0&&(s.isCIDFont=!0),h.formatMajor>1){let T=C.fdArray,Y=C.fdSelect;if(!T)throw new Error("This is a CFF2 font, but FDArray information is missing");let U=gr(t,n+T,null,h.formatMajor),L=AB(t,n,U.objects);C._fdArray=L,Y&&(C._fdSelect=ic(t,n+Y,s.numGlyphs,L.length,h.formatMajor))}else if(s.isCIDFont){let T=C.fdArray,Y=C.fdSelect;if(T===0||Y===0)throw new Error("Font is marked as a CID font, but FDArray and/or FDSelect information is missing");T+=n;let U=gr(t,T),L=Pa(t,n,U.objects,w.objects,h.formatMajor);C._fdArray=L,Y+=n,C._fdSelect=ic(t,Y,s.numGlyphs,L.length,h.formatMajor)}if(h.formatMajor<2){let T=n+C.private[1],Y=La(t,T,C.private[0],w.objects,h.formatMajor);if(s.defaultWidthX=Y.defaultWidthX,s.nominalWidthX=Y.nominalWidthX,Y.subrs!==0){let U=T+Y.subrs,L=gr(t,U);s.subrs=L.objects,s.subrsBias=ds(s.subrs)}else s.subrs=[],s.subrsBias=0}let S;if(o.lowMemory?(S=$0(t,n+C.charStrings,h.formatMajor),s.nGlyphs=S.offsets.length-(h.formatMajor>1?1:0)):(S=gr(t,n+C.charStrings,null,h.formatMajor),s.nGlyphs=S.objects.length),h.formatMajor>1&&s.tables.maxp&&s.nGlyphs!==s.tables.maxp.numGlyphs&&console.error(`Glyph count in the CFF2 table (${s.nGlyphs}) must correspond to the glyph count in the maxp table (${s.tables.maxp.numGlyphs})`),h.formatMajor<2){let T=[],Y=[];C.charset===0?T=N0:C.charset===1?T=R0:C.charset===2?T=G0:T=lB(t,n+C.charset,s.nGlyphs,w.objects,s.isCIDFont),C.encoding===0?Y=Ya:C.encoding===1?Y=L0:Y=cB(t,n+C.encoding),s.cffEncoding=new jl(Y,T),s.encoding=s.encoding||s.cffEncoding}if(s.glyphs=new dr.GlyphSet(s),o.lowMemory)s._push=function(T){let Y=eB(T,S.offsets,t,n+C.charStrings,void 0,h.formatMajor);s.glyphs.push(T,dr.cffGlyphLoader(s,T,Ha,Y,h.formatMajor))};else for(let T=0;T<s.nGlyphs;T+=1){let Y=S.objects[T];s.glyphs.push(T,dr.cffGlyphLoader(s,T,Ha,Y,h.formatMajor))}if(C.vstore){let T=new he.Parser(t,n+C.vstore);C._vstore=T.parseVariationStore()}}function nc(t,n){let s,o=hs.indexOf(t);return o>=0&&(s=o),o=n.indexOf(t),o>=0?s=o+hs.length:(s=hs.length+n.length,n.push(t)),s}function fB(){return new $.Record("Header",[{name:"major",type:"Card8",value:1},{name:"minor",type:"Card8",value:0},{name:"hdrSize",type:"Card8",value:4},{name:"major",type:"Card8",value:1}])}function pB(t){let n=new $.Record("Name INDEX",[{name:"names",type:"INDEX",value:[]}]);n.names=[];for(let s=0;s<t.length;s+=1)n.names.push({name:"name_"+s,type:"NAME",value:t[s]});return n}function sc(t,n,s){let o={};for(let l=0;l<t.length;l+=1){let h=t[l],d=n[h.name];d!==void 0&&!zl(d,h.value)&&(h.type==="SID"&&(d=nc(d,s)),o[h.op]={name:h.name,type:h.type,value:d})}return o}function ac(t,n,s){let o=new $.Record("Top DICT",[{name:"dict",type:"DICT",value:{}}]);return o.dict=sc(s>1?$l:Kl,t,n),o}function oc(t){let n=new $.Record("Top DICT INDEX",[{name:"topDicts",type:"INDEX",value:[]}]);return n.topDicts=[{name:"topDict_0",type:"TABLE",value:t}],n}function dB(t){let n=new $.Record("String INDEX",[{name:"strings",type:"INDEX",value:[]}]);n.strings=[];for(let s=0;s<t.length;s+=1)n.strings.push({name:"string_"+s,type:"STRING",value:t[s]});return n}function gB(){return new $.Record("Global Subr INDEX",[{name:"subrs",type:"INDEX",value:[]}])}function mB(t,n){let s=new $.Record("Charsets",[{name:"format",type:"Card8",value:0}]);for(let o=0;o<t.length;o+=1){let l=t[o],h=nc(l,n);s.fields.push({name:"glyph_"+o,type:"SID",value:h})}return s}function BB(t,n){let s=[],o=t.path;n<2&&s.push({name:"width",type:"NUMBER",value:t.advanceWidth});let l=0,h=0;for(let d=0;d<o.commands.length;d+=1){let B,w,x=o.commands[d];if(x.type==="Q"){let C=.3333333333333333,S=2/3;x={type:"C",x:x.x,y:x.y,x1:Math.round(C*l+S*x.x1),y1:Math.round(C*h+S*x.y1),x2:Math.round(C*x.x+S*x.x1),y2:Math.round(C*x.y+S*x.y1)}}if(x.type==="M")B=Math.round(x.x-l),w=Math.round(x.y-h),s.push({name:"dx",type:"NUMBER",value:B}),s.push({name:"dy",type:"NUMBER",value:w}),s.push({name:"rmoveto",type:"OP",value:21}),l=Math.round(x.x),h=Math.round(x.y);else if(x.type==="L")B=Math.round(x.x-l),w=Math.round(x.y-h),s.push({name:"dx",type:"NUMBER",value:B}),s.push({name:"dy",type:"NUMBER",value:w}),s.push({name:"rlineto",type:"OP",value:5}),l=Math.round(x.x),h=Math.round(x.y);else if(x.type==="C"){let C=Math.round(x.x1-l),S=Math.round(x.y1-h),T=Math.round(x.x2-x.x1),Y=Math.round(x.y2-x.y1);B=Math.round(x.x-x.x2),w=Math.round(x.y-x.y2),s.push({name:"dx1",type:"NUMBER",value:C}),s.push({name:"dy1",type:"NUMBER",value:S}),s.push({name:"dx2",type:"NUMBER",value:T}),s.push({name:"dy2",type:"NUMBER",value:Y}),s.push({name:"dx",type:"NUMBER",value:B}),s.push({name:"dy",type:"NUMBER",value:w}),s.push({name:"rrcurveto",type:"OP",value:8}),l=Math.round(x.x),h=Math.round(x.y)}}return n<2&&s.push({name:"endchar",type:"OP",value:14}),s}function EB(t,n){let s=new $.Record("CharStrings INDEX",[{name:"charStrings",type:"INDEX",value:[]}]);for(let o=0;o<t.length;o+=1){let l=t.get(o),h=BB(l,n);s.charStrings.push({name:l.name,type:"CHARSTRING",value:h})}return s}function wB(t,n,s){let o=new $.Record("Private DICT",[{name:"dict",type:"DICT",value:{}}]);return o.dict=sc(s>1?tc:ec,t,n),o}function yB(t,n){let o=new $.Table("CFF ",[{name:"header",type:"RECORD"},{name:"nameIndex",type:"RECORD"},{name:"topDictIndex",type:"RECORD"},{name:"stringIndex",type:"RECORD"},{name:"globalSubrIndex",type:"RECORD"},{name:"charsets",type:"RECORD"},{name:"charStringsIndex",type:"RECORD"},{name:"privateDict",type:"RECORD"}]),l=1/n.unitsPerEm,h={version:n.version,fullName:n.fullName,familyName:n.familyName,weight:n.weightName,fontBBox:n.fontBBox||[0,0,0,0],fontMatrix:[l,0,0,l,0,0],charset:999,encoding:0,charStrings:999,private:[0,999]},d=n&&n.topDict||{};d.paintType&&(h.paintType=d.paintType,h.strokeWidth=d.strokeWidth||0);let B={},w=[],x;for(let Y=1;Y<t.length;Y+=1)x=t.get(Y),w.push(x.name);let C=[];o.header=fB(),o.nameIndex=pB([n.postScriptName]);let S=ac(h,C);o.topDictIndex=oc(S),o.globalSubrIndex=gB(),o.charsets=mB(w,C),o.charStringsIndex=EB(t,1),o.privateDict=wB(B,C),o.stringIndex=dB(C);let T=o.header.sizeOf()+o.nameIndex.sizeOf()+o.topDictIndex.sizeOf()+o.stringIndex.sizeOf()+o.globalSubrIndex.sizeOf();return h.charset=T,h.encoding=0,h.charStrings=h.charset+o.charsets.sizeOf(),h.private[1]=h.charStrings+o.charStringsIndex.sizeOf(),S=ac(h,C),o.topDictIndex=oc(S),o}var Wa={parse:hB,make:yB};function CB(t,n){let s={},o=new he.Parser(t,n);return s.version=o.parseVersion(),s.fontRevision=Math.round(o.parseFixed()*1e3)/1e3,s.checkSumAdjustment=o.parseULong(),s.magicNumber=o.parseULong(),G.argument(s.magicNumber===1594834165,"Font header has wrong magic number."),s.flags=o.parseUShort(),s.unitsPerEm=o.parseUShort(),s.created=o.parseLongDateTime(),s.modified=o.parseLongDateTime(),s.xMin=o.parseShort(),s.yMin=o.parseShort(),s.xMax=o.parseShort(),s.yMax=o.parseShort(),s.macStyle=o.parseUShort(),s.lowestRecPPEM=o.parseUShort(),s.fontDirectionHint=o.parseShort(),s.indexToLocFormat=o.parseShort(),s.glyphDataFormat=o.parseShort(),s}function bB(t){let n=Math.round(new Date().getTime()/1e3)+2082844800,s=n,o=t.macStyle||0;return t.createdTimestamp&&(s=t.createdTimestamp+2082844800),new $.Table("head",[{name:"version",type:"FIXED",value:65536},{name:"fontRevision",type:"FIXED",value:65536},{name:"checkSumAdjustment",type:"ULONG",value:0},{name:"magicNumber",type:"ULONG",value:1594834165},{name:"flags",type:"USHORT",value:0},{name:"unitsPerEm",type:"USHORT",value:1e3},{name:"created",type:"LONGDATETIME",value:s},{name:"modified",type:"LONGDATETIME",value:n},{name:"xMin",type:"SHORT",value:0},{name:"yMin",type:"SHORT",value:0},{name:"xMax",type:"SHORT",value:0},{name:"yMax",type:"SHORT",value:0},{name:"macStyle",type:"USHORT",value:o},{name:"lowestRecPPEM",type:"USHORT",value:0},{name:"fontDirectionHint",type:"SHORT",value:2},{name:"indexToLocFormat",type:"SHORT",value:0},{name:"glyphDataFormat",type:"SHORT",value:0}],t)}var Ac={parse:CB,make:bB};function xB(t,n){let s={},o=new he.Parser(t,n);return s.version=o.parseVersion(),s.ascender=o.parseShort(),s.descender=o.parseShort(),s.lineGap=o.parseShort(),s.advanceWidthMax=o.parseUShort(),s.minLeftSideBearing=o.parseShort(),s.minRightSideBearing=o.parseShort(),s.xMaxExtent=o.parseShort(),s.caretSlopeRise=o.parseShort(),s.caretSlopeRun=o.parseShort(),s.caretOffset=o.parseShort(),o.relativeOffset+=8,s.metricDataFormat=o.parseShort(),s.numberOfHMetrics=o.parseUShort(),s}function QB(t){return new $.Table("hhea",[{name:"version",type:"FIXED",value:65536},{name:"ascender",type:"FWORD",value:0},{name:"descender",type:"FWORD",value:0},{name:"lineGap",type:"FWORD",value:0},{name:"advanceWidthMax",type:"UFWORD",value:0},{name:"minLeftSideBearing",type:"FWORD",value:0},{name:"minRightSideBearing",type:"FWORD",value:0},{name:"xMaxExtent",type:"FWORD",value:0},{name:"caretSlopeRise",type:"SHORT",value:1},{name:"caretSlopeRun",type:"SHORT",value:0},{name:"caretOffset",type:"SHORT",value:0},{name:"reserved1",type:"SHORT",value:0},{name:"reserved2",type:"SHORT",value:0},{name:"reserved3",type:"SHORT",value:0},{name:"reserved4",type:"SHORT",value:0},{name:"metricDataFormat",type:"SHORT",value:0},{name:"numberOfHMetrics",type:"USHORT",value:0}],t)}var lc={parse:xB,make:QB};function vB(t,n,s,o,l){let h,d,B=new he.Parser(t,n);for(let w=0;w<o;w+=1){w<s&&(h=B.parseUShort(),d=B.parseShort());let x=l.get(w);x.advanceWidth=h,x.leftSideBearing=d}}function IB(t,n,s,o,l){t._hmtxTableData={};let h,d,B=new he.Parser(n,s);for(let w=0;w<l;w+=1)w<o&&(h=B.parseUShort(),d=B.parseShort()),t._hmtxTableData[w]={advanceWidth:h,leftSideBearing:d}}function FB(t,n,s,o,l,h,d){d.lowMemory?IB(t,n,s,o,l):vB(n,s,o,l,h)}function TB(t){let n=new $.Table("hmtx",[]);for(let s=0;s<t.length;s+=1){let o=t.get(s),l=o.advanceWidth||0,h=o.leftSideBearing||0;n.fields.push({name:"advanceWidth_"+s,type:"USHORT",value:l}),n.fields.push({name:"leftSideBearing_"+s,type:"SHORT",value:h})}return n}var cc={parse:FB,make:TB};function SB(t){let n=new $.Table("ltag",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"numTags",type:"ULONG",value:t.length}]),s="",o=12+t.length*4;for(let l=0;l<t.length;++l){let h=s.indexOf(t[l]);h<0&&(h=s.length,s+=t[l]),n.fields.push({name:"offset "+l,type:"USHORT",value:o+h}),n.fields.push({name:"length "+l,type:"USHORT",value:t[l].length})}return n.fields.push({name:"stringPool",type:"CHARARRAY",value:s}),n}function DB(t,n){let s=new he.Parser(t,n),o=s.parseULong();G.argument(o===1,"Unsupported ltag table version."),s.skip("uLong",1);let l=s.parseULong(),h=[];for(let d=0;d<l;d++){let B="",w=n+s.parseUShort(),x=s.parseUShort();for(let C=w;C<w+x;++C)B+=String.fromCharCode(t.getInt8(C));h.push(B)}return h}var uc={make:SB,parse:DB};function MB(t,n){let s={},o=new he.Parser(t,n);return s.version=o.parseVersion(),s.numGlyphs=o.parseUShort(),s.version===1&&(s.maxPoints=o.parseUShort(),s.maxContours=o.parseUShort(),s.maxCompositePoints=o.parseUShort(),s.maxCompositeContours=o.parseUShort(),s.maxZones=o.parseUShort(),s.maxTwilightPoints=o.parseUShort(),s.maxStorage=o.parseUShort(),s.maxFunctionDefs=o.parseUShort(),s.maxInstructionDefs=o.parseUShort(),s.maxStackElements=o.parseUShort(),s.maxSizeOfInstructions=o.parseUShort(),s.maxComponentElements=o.parseUShort(),s.maxComponentDepth=o.parseUShort()),s}function UB(t){return new $.Table("maxp",[{name:"version",type:"FIXED",value:20480},{name:"numGlyphs",type:"USHORT",value:t}])}var hc={parse:MB,make:UB},Ja=[{begin:0,end:127},{begin:128,end:255},{begin:256,end:383},{begin:384,end:591},{begin:592,end:687},{begin:688,end:767},{begin:768,end:879},{begin:880,end:1023},{begin:11392,end:11519},{begin:1024,end:1279},{begin:1328,end:1423},{begin:1424,end:1535},{begin:42240,end:42559},{begin:1536,end:1791},{begin:1984,end:2047},{begin:2304,end:2431},{begin:2432,end:2559},{begin:2560,end:2687},{begin:2688,end:2815},{begin:2816,end:2943},{begin:2944,end:3071},{begin:3072,end:3199},{begin:3200,end:3327},{begin:3328,end:3455},{begin:3584,end:3711},{begin:3712,end:3839},{begin:4256,end:4351},{begin:6912,end:7039},{begin:4352,end:4607},{begin:7680,end:7935},{begin:7936,end:8191},{begin:8192,end:8303},{begin:8304,end:8351},{begin:8352,end:8399},{begin:8400,end:8447},{begin:8448,end:8527},{begin:8528,end:8591},{begin:8592,end:8703},{begin:8704,end:8959},{begin:8960,end:9215},{begin:9216,end:9279},{begin:9280,end:9311},{begin:9312,end:9471},{begin:9472,end:9599},{begin:9600,end:9631},{begin:9632,end:9727},{begin:9728,end:9983},{begin:9984,end:10175},{begin:12288,end:12351},{begin:12352,end:12447},{begin:12448,end:12543},{begin:12544,end:12591},{begin:12592,end:12687},{begin:43072,end:43135},{begin:12800,end:13055},{begin:13056,end:13311},{begin:44032,end:55215},{begin:55296,end:57343},{begin:67840,end:67871},{begin:19968,end:40959},{begin:57344,end:63743},{begin:12736,end:12783},{begin:64256,end:64335},{begin:64336,end:65023},{begin:65056,end:65071},{begin:65040,end:65055},{begin:65104,end:65135},{begin:65136,end:65279},{begin:65280,end:65519},{begin:65520,end:65535},{begin:3840,end:4095},{begin:1792,end:1871},{begin:1920,end:1983},{begin:3456,end:3583},{begin:4096,end:4255},{begin:4608,end:4991},{begin:5024,end:5119},{begin:5120,end:5759},{begin:5760,end:5791},{begin:5792,end:5887},{begin:6016,end:6143},{begin:6144,end:6319},{begin:10240,end:10495},{begin:40960,end:42127},{begin:5888,end:5919},{begin:66304,end:66351},{begin:66352,end:66383},{begin:66560,end:66639},{begin:118784,end:119039},{begin:119808,end:120831},{begin:1044480,end:1048573},{begin:65024,end:65039},{begin:917504,end:917631},{begin:6400,end:6479},{begin:6480,end:6527},{begin:6528,end:6623},{begin:6656,end:6687},{begin:11264,end:11359},{begin:11568,end:11647},{begin:19904,end:19967},{begin:43008,end:43055},{begin:65536,end:65663},{begin:65856,end:65935},{begin:66432,end:66463},{begin:66464,end:66527},{begin:66640,end:66687},{begin:66688,end:66735},{begin:67584,end:67647},{begin:68096,end:68191},{begin:119552,end:119647},{begin:73728,end:74751},{begin:119648,end:119679},{begin:7040,end:7103},{begin:7168,end:7247},{begin:7248,end:7295},{begin:43136,end:43231},{begin:43264,end:43311},{begin:43312,end:43359},{begin:43520,end:43615},{begin:65936,end:65999},{begin:66e3,end:66047},{begin:66208,end:66271},{begin:127024,end:127135}];function kB(t){for(let n=0;n<Ja.length;n+=1){let s=Ja[n];if(t>=s.begin&&t<s.end)return n}return-1}function YB(t,n){let s={},o=new he.Parser(t,n);s.version=o.parseUShort(),s.xAvgCharWidth=o.parseShort(),s.usWeightClass=o.parseUShort(),s.usWidthClass=o.parseUShort(),s.fsType=o.parseUShort(),s.ySubscriptXSize=o.parseShort(),s.ySubscriptYSize=o.parseShort(),s.ySubscriptXOffset=o.parseShort(),s.ySubscriptYOffset=o.parseShort(),s.ySuperscriptXSize=o.parseShort(),s.ySuperscriptYSize=o.parseShort(),s.ySuperscriptXOffset=o.parseShort(),s.ySuperscriptYOffset=o.parseShort(),s.yStrikeoutSize=o.parseShort(),s.yStrikeoutPosition=o.parseShort(),s.sFamilyClass=o.parseShort(),s.panose=[];for(let l=0;l<10;l++)s.panose[l]=o.parseByte();return s.ulUnicodeRange1=o.parseULong(),s.ulUnicodeRange2=o.parseULong(),s.ulUnicodeRange3=o.parseULong(),s.ulUnicodeRange4=o.parseULong(),s.achVendID=String.fromCharCode(o.parseByte(),o.parseByte(),o.parseByte(),o.parseByte()),s.fsSelection=o.parseUShort(),s.usFirstCharIndex=o.parseUShort(),s.usLastCharIndex=o.parseUShort(),s.sTypoAscender=o.parseShort(),s.sTypoDescender=o.parseShort(),s.sTypoLineGap=o.parseShort(),s.usWinAscent=o.parseUShort(),s.usWinDescent=o.parseUShort(),s.version>=1&&(s.ulCodePageRange1=o.parseULong(),s.ulCodePageRange2=o.parseULong()),s.version>=2&&(s.sxHeight=o.parseShort(),s.sCapHeight=o.parseShort(),s.usDefaultChar=o.parseUShort(),s.usBreakChar=o.parseUShort(),s.usMaxContent=o.parseUShort()),s}function OB(t){return new $.Table("OS/2",[{name:"version",type:"USHORT",value:3},{name:"xAvgCharWidth",type:"SHORT",value:0},{name:"usWeightClass",type:"USHORT",value:0},{name:"usWidthClass",type:"USHORT",value:0},{name:"fsType",type:"USHORT",value:0},{name:"ySubscriptXSize",type:"SHORT",value:650},{name:"ySubscriptYSize",type:"SHORT",value:699},{name:"ySubscriptXOffset",type:"SHORT",value:0},{name:"ySubscriptYOffset",type:"SHORT",value:140},{name:"ySuperscriptXSize",type:"SHORT",value:650},{name:"ySuperscriptYSize",type:"SHORT",value:699},{name:"ySuperscriptXOffset",type:"SHORT",value:0},{name:"ySuperscriptYOffset",type:"SHORT",value:479},{name:"yStrikeoutSize",type:"SHORT",value:49},{name:"yStrikeoutPosition",type:"SHORT",value:258},{name:"sFamilyClass",type:"SHORT",value:0},{name:"bFamilyType",type:"BYTE",value:0},{name:"bSerifStyle",type:"BYTE",value:0},{name:"bWeight",type:"BYTE",value:0},{name:"bProportion",type:"BYTE",value:0},{name:"bContrast",type:"BYTE",value:0},{name:"bStrokeVariation",type:"BYTE",value:0},{name:"bArmStyle",type:"BYTE",value:0},{name:"bLetterform",type:"BYTE",value:0},{name:"bMidline",type:"BYTE",value:0},{name:"bXHeight",type:"BYTE",value:0},{name:"ulUnicodeRange1",type:"ULONG",value:0},{name:"ulUnicodeRange2",type:"ULONG",value:0},{name:"ulUnicodeRange3",type:"ULONG",value:0},{name:"ulUnicodeRange4",type:"ULONG",value:0},{name:"achVendID",type:"CHARARRAY",value:"XXXX"},{name:"fsSelection",type:"USHORT",value:0},{name:"usFirstCharIndex",type:"USHORT",value:0},{name:"usLastCharIndex",type:"USHORT",value:0},{name:"sTypoAscender",type:"SHORT",value:0},{name:"sTypoDescender",type:"SHORT",value:0},{name:"sTypoLineGap",type:"SHORT",value:0},{name:"usWinAscent",type:"USHORT",value:0},{name:"usWinDescent",type:"USHORT",value:0},{name:"ulCodePageRange1",type:"ULONG",value:0},{name:"ulCodePageRange2",type:"ULONG",value:0},{name:"sxHeight",type:"SHORT",value:0},{name:"sCapHeight",type:"SHORT",value:0},{name:"usDefaultChar",type:"USHORT",value:0},{name:"usBreakChar",type:"USHORT",value:0},{name:"usMaxContext",type:"USHORT",value:0}],t)}var Va={parse:YB,make:OB,unicodeRanges:Ja,getUnicodeRange:kB};function NB(t,n){let s={},o=new he.Parser(t,n);switch(s.version=o.parseVersion(),s.italicAngle=o.parseFixed(),s.underlinePosition=o.parseShort(),s.underlineThickness=o.parseShort(),s.isFixedPitch=o.parseULong(),s.minMemType42=o.parseULong(),s.maxMemType42=o.parseULong(),s.minMemType1=o.parseULong(),s.maxMemType1=o.parseULong(),s.version){case 1:s.names=hi.slice();break;case 2:s.numberOfGlyphs=o.parseUShort(),s.glyphNameIndex=new Array(s.numberOfGlyphs);for(let l=0;l<s.numberOfGlyphs;l++)s.glyphNameIndex[l]=o.parseUShort();s.names=[];for(let l=0;l<s.numberOfGlyphs;l++)if(s.glyphNameIndex[l]>=hi.length){let h=o.parseChar();s.names.push(o.parseString(h))}break;case 2.5:s.numberOfGlyphs=o.parseUShort(),s.offset=new Array(s.numberOfGlyphs);for(let l=0;l<s.numberOfGlyphs;l++)s.offset[l]=o.parseChar();break}return s}function RB(t){let{italicAngle:n=Math.round((t.italicAngle||0)*65536),underlinePosition:s=0,underlineThickness:o=0,isFixedPitch:l=0,minMemType42:h=0,maxMemType42:d=0,minMemType1:B=0,maxMemType1:w=0}=t.tables.post||{};return new $.Table("post",[{name:"version",type:"FIXED",value:196608},{name:"italicAngle",type:"FIXED",value:n},{name:"underlinePosition",type:"FWORD",value:s},{name:"underlineThickness",type:"FWORD",value:o},{name:"isFixedPitch",type:"ULONG",value:l},{name:"minMemType42",type:"ULONG",value:h},{name:"maxMemType42",type:"ULONG",value:d},{name:"minMemType1",type:"ULONG",value:B},{name:"maxMemType1",type:"ULONG",value:w}])}var fc={parse:NB,make:RB},ir=new Array(9);ir[1]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();if(s===1)return{substFormat:1,coverage:this.parsePointer(V.coverage),deltaGlyphId:this.parseShort()};if(s===2)return{substFormat:2,coverage:this.parsePointer(V.coverage),substitute:this.parseOffset16List()};G.assert(!1,"0x"+n.toString(16)+": lookup type 1 format must be 1 or 2.")},ir[2]=function(){let n=this.parseUShort();return G.argument(n===1,"GSUB Multiple Substitution Subtable identifier-format must be 1"),{substFormat:n,coverage:this.parsePointer(V.coverage),sequences:this.parseListOfLists()}},ir[3]=function(){let n=this.parseUShort();return G.argument(n===1,"GSUB Alternate Substitution Subtable identifier-format must be 1"),{substFormat:n,coverage:this.parsePointer(V.coverage),alternateSets:this.parseListOfLists()}},ir[4]=function(){let n=this.parseUShort();return G.argument(n===1,"GSUB ligature table identifier-format must be 1"),{substFormat:n,coverage:this.parsePointer(V.coverage),ligatureSets:this.parseListOfLists(function(){return{ligGlyph:this.parseUShort(),components:this.parseUShortList(this.parseUShort()-1)}})}};var Yi={sequenceIndex:V.uShort,lookupListIndex:V.uShort};ir[5]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();if(s===1)return{substFormat:s,coverage:this.parsePointer(V.coverage),ruleSets:this.parseListOfLists(function(){let o=this.parseUShort(),l=this.parseUShort();return{input:this.parseUShortList(o-1),lookupRecords:this.parseRecordList(l,Yi)}})};if(s===2)return{substFormat:s,coverage:this.parsePointer(V.coverage),classDef:this.parsePointer(V.classDef),classSets:this.parseListOfLists(function(){let o=this.parseUShort(),l=this.parseUShort();return{classes:this.parseUShortList(o-1),lookupRecords:this.parseRecordList(l,Yi)}})};if(s===3){let o=this.parseUShort(),l=this.parseUShort();return{substFormat:s,coverages:this.parseList(o,V.pointer(V.coverage)),lookupRecords:this.parseRecordList(l,Yi)}}G.assert(!1,"0x"+n.toString(16)+": lookup type 5 format must be 1, 2 or 3.")},ir[6]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();if(s===1)return{substFormat:1,coverage:this.parsePointer(V.coverage),chainRuleSets:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Yi)}})};if(s===2)return{substFormat:2,coverage:this.parsePointer(V.coverage),backtrackClassDef:this.parsePointer(V.classDef),inputClassDef:this.parsePointer(V.classDef),lookaheadClassDef:this.parsePointer(V.classDef),chainClassSet:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Yi)}})};if(s===3)return{substFormat:3,backtrackCoverage:this.parseList(V.pointer(V.coverage)),inputCoverage:this.parseList(V.pointer(V.coverage)),lookaheadCoverage:this.parseList(V.pointer(V.coverage)),lookupRecords:this.parseRecordList(Yi)};G.assert(!1,"0x"+n.toString(16)+": lookup type 6 format must be 1, 2 or 3.")},ir[7]=function(){let n=this.parseUShort();G.argument(n===1,"GSUB Extension Substitution subtable identifier-format must be 1");let s=this.parseUShort(),o=new V(this.data,this.offset+this.parseULong());return{substFormat:1,lookupType:s,extension:ir[s].call(o)}},ir[8]=function(){let n=this.parseUShort();return G.argument(n===1,"GSUB Reverse Chaining Contextual Single Substitution Subtable identifier-format must be 1"),{substFormat:n,coverage:this.parsePointer(V.coverage),backtrackCoverage:this.parseList(V.pointer(V.coverage)),lookaheadCoverage:this.parseList(V.pointer(V.coverage)),substitutes:this.parseUShortList()}};function GB(t,n){n=n||0;let s=new V(t,n),o=s.parseVersion(1);return G.argument(o===1||o===1.1,"Unsupported GSUB table version."),o===1?{version:o,scripts:s.parseScriptList(),features:s.parseFeatureList(),lookups:s.parseLookupList(ir)}:{version:o,scripts:s.parseScriptList(),features:s.parseFeatureList(),lookups:s.parseLookupList(ir),variations:s.parseFeatureVariationsList()}}var pi=new Array(9);pi[1]=function(n){if(n.substFormat===1)return new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)},{name:"deltaGlyphID",type:"SHORT",value:n.deltaGlyphId}]);if(n.substFormat===2)return new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:2},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.ushortList("substitute",n.substitute)));G.fail("Lookup type 1 substFormat must be 1 or 2.")},pi[2]=function(n){return G.assert(n.substFormat===1,"Lookup type 2 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("seqSet",n.sequences,function(s){return new $.Table("sequenceSetTable",$.ushortList("sequence",s))})))},pi[3]=function(n){return G.assert(n.substFormat===1,"Lookup type 3 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("altSet",n.alternateSets,function(s){return new $.Table("alternateSetTable",$.ushortList("alternate",s))})))},pi[4]=function(n){return G.assert(n.substFormat===1,"Lookup type 4 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("ligSet",n.ligatureSets,function(s){return new $.Table("ligatureSetTable",$.tableList("ligature",s,function(o){return new $.Table("ligatureTable",[{name:"ligGlyph",type:"USHORT",value:o.ligGlyph}].concat($.ushortList("component",o.components,o.components.length+1)))}))})))},pi[5]=function(n){if(n.substFormat===1)return new $.Table("contextualSubstitutionTable",[{name:"substFormat",type:"USHORT",value:n.substFormat},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("sequenceRuleSet",n.ruleSets,function(s){return s?new $.Table("sequenceRuleSetTable",$.tableList("sequenceRule",s,function(o){let l=$.ushortList("seqLookup",[],o.lookupRecords.length).concat($.ushortList("inputSequence",o.input,o.input.length+1));[l[0],l[1]]=[l[1],l[0]];for(let h=0;h<o.lookupRecords.length;h++){let d=o.lookupRecords[h];l=l.concat({name:"sequenceIndex"+h,type:"USHORT",value:d.sequenceIndex}).concat({name:"lookupListIndex"+h,type:"USHORT",value:d.lookupListIndex})}return new $.Table("sequenceRuleTable",l)})):new $.Table("NULL",null)})));if(n.substFormat===2)return new $.Table("contextualSubstitutionTable",[{name:"substFormat",type:"USHORT",value:n.substFormat},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)},{name:"classDef",type:"TABLE",value:new $.ClassDef(n.classDef)}].concat($.tableList("classSeqRuleSet",n.classSets,function(s){return s?new $.Table("classSeqRuleSetTable",$.tableList("classSeqRule",s,function(o){let l=$.ushortList("classes",o.classes,o.classes.length+1).concat($.ushortList("seqLookupCount",[],o.lookupRecords.length));for(let h=0;h<o.lookupRecords.length;h++){let d=o.lookupRecords[h];l=l.concat({name:"sequenceIndex"+h,type:"USHORT",value:d.sequenceIndex}).concat({name:"lookupListIndex"+h,type:"USHORT",value:d.lookupListIndex})}return new $.Table("classSeqRuleTable",l)})):new $.Table("NULL",null)})));if(n.substFormat===3){let s=[{name:"substFormat",type:"USHORT",value:n.substFormat}];s.push({name:"inputGlyphCount",type:"USHORT",value:n.coverages.length}),s.push({name:"substitutionCount",type:"USHORT",value:n.lookupRecords.length});for(let l=0;l<n.coverages.length;l++){let h=n.coverages[l];s.push({name:"inputCoverage"+l,type:"TABLE",value:new $.Coverage(h)})}for(let l=0;l<n.lookupRecords.length;l++){let h=n.lookupRecords[l];s=s.concat({name:"sequenceIndex"+l,type:"USHORT",value:h.sequenceIndex}).concat({name:"lookupListIndex"+l,type:"USHORT",value:h.lookupListIndex})}return new $.Table("contextualSubstitutionTable",s)}G.assert(!1,"lookup type 5 format must be 1, 2 or 3.")},pi[6]=function(n){if(n.substFormat===1)return new $.Table("chainContextTable",[{name:"substFormat",type:"USHORT",value:n.substFormat},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("chainRuleSet",n.chainRuleSets,function(o){return new $.Table("chainRuleSetTable",$.tableList("chainRule",o,function(l){let h=$.ushortList("backtrackGlyph",l.backtrack,l.backtrack.length).concat($.ushortList("inputGlyph",l.input,l.input.length+1)).concat($.ushortList("lookaheadGlyph",l.lookahead,l.lookahead.length)).concat($.ushortList("substitution",[],l.lookupRecords.length));for(let d=0;d<l.lookupRecords.length;d++){let B=l.lookupRecords[d];h=h.concat({name:"sequenceIndex"+d,type:"USHORT",value:B.sequenceIndex}).concat({name:"lookupListIndex"+d,type:"USHORT",value:B.lookupListIndex})}return new $.Table("chainRuleTable",h)}))})));if(n.substFormat===2)G.assert(!1,"lookup type 6 format 2 is not yet supported.");else if(n.substFormat===3){let s=[{name:"substFormat",type:"USHORT",value:n.substFormat}];s.push({name:"backtrackGlyphCount",type:"USHORT",value:n.backtrackCoverage.length});for(let l=0;l<n.backtrackCoverage.length;l++){let h=n.backtrackCoverage[l];s.push({name:"backtrackCoverage"+l,type:"TABLE",value:new $.Coverage(h)})}s.push({name:"inputGlyphCount",type:"USHORT",value:n.inputCoverage.length});for(let l=0;l<n.inputCoverage.length;l++){let h=n.inputCoverage[l];s.push({name:"inputCoverage"+l,type:"TABLE",value:new $.Coverage(h)})}s.push({name:"lookaheadGlyphCount",type:"USHORT",value:n.lookaheadCoverage.length});for(let l=0;l<n.lookaheadCoverage.length;l++){let h=n.lookaheadCoverage[l];s.push({name:"lookaheadCoverage"+l,type:"TABLE",value:new $.Coverage(h)})}s.push({name:"substitutionCount",type:"USHORT",value:n.lookupRecords.length});for(let l=0;l<n.lookupRecords.length;l++){let h=n.lookupRecords[l];s=s.concat({name:"sequenceIndex"+l,type:"USHORT",value:h.sequenceIndex}).concat({name:"lookupListIndex"+l,type:"USHORT",value:h.lookupListIndex})}return new $.Table("chainContextTable",s)}G.assert(!1,"lookup type 6 format must be 1, 2 or 3.")};function LB(t){return new $.Table("GSUB",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new $.ScriptList(t.scripts)},{name:"features",type:"TABLE",value:new $.FeatureList(t.features)},{name:"lookups",type:"TABLE",value:new $.LookupList(t.lookups,pi)}])}var pc={parse:GB,make:LB};function PB(t,n){let s=new he.Parser(t,n),o=s.parseULong();G.argument(o===1,"Unsupported META table version."),s.parseULong(),s.parseULong();let l=s.parseULong(),h={};for(let d=0;d<l;d++){let B=s.parseTag(),w=s.parseULong(),x=s.parseULong();if(B==="appl"||B==="bild")continue;let C=Qe.UTF8(t,n+w,x);h[B]=C}return h}function HB(t){let n=Object.keys(t).length,s="",o=16+n*12,l=new $.Table("meta",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"offset",type:"ULONG",value:o},{name:"numTags",type:"ULONG",value:n}]);for(let h in t){let d=s.length;s+=t[h],l.fields.push({name:"tag "+h,type:"TAG",value:h}),l.fields.push({name:"offset "+h,type:"ULONG",value:o+d}),l.fields.push({name:"length "+h,type:"ULONG",value:t[h].length})}return l.fields.push({name:"stringPool",type:"CHARARRAY",value:s}),l}var dc={parse:PB,make:HB};function WB(t,n){let s=new V(t,n),o=s.parseUShort();o!==0&&console.warn("Only COLRv0 is currently fully supported. A subset of color glyphs might be available in this font if provided in the v0 format.");let l=s.parseUShort(),h=s.parseOffset32(),d=s.parseOffset32(),B=s.parseUShort();s.relativeOffset=h;let w=s.parseRecordList(l,{glyphID:V.uShort,firstLayerIndex:V.uShort,numLayers:V.uShort});s.relativeOffset=d;let x=s.parseRecordList(B,{glyphID:V.uShort,paletteIndex:V.uShort});return{version:o,baseGlyphRecords:w,layerRecords:x}}function JB({version:t=0,baseGlyphRecords:n=[],layerRecords:s=[]}){G.argument(t===0,"Only COLRv0 supported.");let o=14,l=o+n.length*6;return new $.Table("COLR",[{name:"version",type:"USHORT",value:t},{name:"numBaseGlyphRecords",type:"USHORT",value:n.length},{name:"baseGlyphRecordsOffset",type:"ULONG",value:o},{name:"layerRecordsOffset",type:"ULONG",value:l},{name:"numLayerRecords",type:"USHORT",value:s.length},...n.map((h,d)=>[{name:"glyphID_"+d,type:"USHORT",value:h.glyphID},{name:"firstLayerIndex_"+d,type:"USHORT",value:h.firstLayerIndex},{name:"numLayers_"+d,type:"USHORT",value:h.numLayers}]).flat(),...s.map((h,d)=>[{name:"LayerGlyphID_"+d,type:"USHORT",value:h.glyphID},{name:"paletteIndex_"+d,type:"USHORT",value:h.paletteIndex}]).flat()])}var gc={parse:WB,make:JB};function VB(t,n){return[{name:"tag_"+t,type:"TAG",value:n.tag},{name:"minValue_"+t,type:"FIXED",value:n.minValue<<16},{name:"defaultValue_"+t,type:"FIXED",value:n.defaultValue<<16},{name:"maxValue_"+t,type:"FIXED",value:n.maxValue<<16},{name:"flags_"+t,type:"USHORT",value:0},{name:"nameID_"+t,type:"USHORT",value:n.axisNameID}]}function jB(t,n,s){let o={},l=new he.Parser(t,n);o.tag=l.parseTag(),o.minValue=l.parseFixed(),o.defaultValue=l.parseFixed(),o.maxValue=l.parseFixed(),l.skip("uShort",1);let h=l.parseUShort();return o.axisNameID=h,o.name=ui(s,h),o}function _B(t,n,s,o={}){let l=[{name:"nameID_"+t,type:"USHORT",value:n.subfamilyNameID},{name:"flags_"+t,type:"USHORT",value:0}];for(let h=0;h<s.length;++h){let d=s[h].tag;l.push({name:"axis_"+t+" "+d,type:"FIXED",value:n.coordinates[d]<<16})}return o&&o.postScriptNameID&&l.push({name:"postScriptNameID_",type:"USHORT",value:n.postScriptNameID!==void 0?n.postScriptNameID:65535}),l}function ZB(t,n,s,o,l){let h={},d=new he.Parser(t,n),B=d.parseUShort();h.subfamilyNameID=B,h.name=ui(o,B,[2,17]),d.skip("uShort",1),h.coordinates={};for(let x=0;x<s.length;++x)h.coordinates[s[x].tag]=d.parseFixed();if(d.relativeOffset===l)return h.postScriptNameID=void 0,h.postScriptName=void 0,h;let w=d.parseUShort();return h.postScriptNameID=w==65535?void 0:w,h.postScriptName=h.postScriptNameID!==void 0?ui(o,w,[6]):"",h}function XB(t,n){let s=new $.Table("fvar",[{name:"version",type:"ULONG",value:65536},{name:"offsetToData",type:"USHORT",value:0},{name:"countSizePairs",type:"USHORT",value:2},{name:"axisCount",type:"USHORT",value:t.axes.length},{name:"axisSize",type:"USHORT",value:20},{name:"instanceCount",type:"USHORT",value:t.instances.length},{name:"instanceSize",type:"USHORT",value:4+t.axes.length*4}]);s.offsetToData=s.sizeOf();for(let l=0;l<t.axes.length;l++)s.fields=s.fields.concat(VB(l,t.axes[l],n));let o={};for(let l=0;l<t.instances.length;l++)if(t.instances[l].postScriptNameID!==void 0){s.instanceSize+=2,o.postScriptNameID=!0;break}for(let l=0;l<t.instances.length;l++)s.fields=s.fields.concat(_B(l,t.instances[l],t.axes,o));return s}function zB(t,n,s){let o=new he.Parser(t,n),l=o.parseULong();G.argument(l===65536,"Unsupported fvar table version.");let h=o.parseOffset16();o.skip("uShort",1);let d=o.parseUShort(),B=o.parseUShort(),w=o.parseUShort(),x=o.parseUShort(),C=[];for(let Y=0;Y<d;Y++)C.push(jB(t,n+h+Y*B,s));let S=[],T=n+h+d*B;for(let Y=0;Y<w;Y++)S.push(ZB(t,T+Y*x,C,s,x));return{axes:C,instances:S}}var mc={make:XB,parse:zB},qB={tag:V.tag,nameID:V.uShort,ordering:V.uShort},gn=new Array(5);gn[1]=function(){return{axisIndex:this.parseUShort(),flags:this.parseUShort(),valueNameID:this.parseUShort(),value:this.parseFixed()}},gn[2]=function(){return{axisIndex:this.parseUShort(),flags:this.parseUShort(),valueNameID:this.parseUShort(),nominalValue:this.parseFixed(),rangeMinValue:this.parseFixed(),rangeMaxValue:this.parseFixed()}},gn[3]=function(){return{axisIndex:this.parseUShort(),flags:this.parseUShort(),valueNameID:this.parseUShort(),value:this.parseFixed(),linkedValue:this.parseFixed()}},gn[4]=function(){let n=this.parseUShort();return{flags:this.parseUShort(),valueNameID:this.parseUShort(),axisValues:this.parseList(n,function(){return{axisIndex:this.parseUShort(),value:this.parseFixed()}})}};function KB(){let t=this.parseUShort(),n=gn[t],s={format:t};return n===void 0?(console.warn(`Unknown axis value table format ${t}`),s):Object.assign(s,this.parseStruct(n.bind(this)))}function $B(t,n,s){n||(n=0);let o=new he.Parser(t,n),l=o.parseUShort(),h=o.parseUShort();l!==1&&console.warn(`Unsupported STAT table version ${l}.${h}`);let d=[l,h],B=o.parseUShort(),w=o.parseUShort(),x=o.parseOffset32(),C=o.parseUShort(),S=o.parseOffset32(),T=l>1||h>0?o.parseUShort():void 0;s!==void 0&&G.argument(w>=s.axes.length,"STAT axis count must be greater than or equal to fvar axis count"),C>0&&G.argument(w>=0,"STAT axis count must be greater than 0 if STAT axis value count is greater than 0");let Y=[];for(let ee=0;ee<w;ee++)o.offset=n+x,o.relativeOffset=ee*B,Y.push(o.parseStruct(qB));o.offset=n,o.relativeOffset=S;let U=o.parseUShortList(C),L=[];for(let ee=0;ee<C;ee++)o.offset=n+S,o.relativeOffset=U[ee],L.push(KB.apply(o));return{version:d,axes:Y,values:L,elidedFallbackNameID:T}}var mn=new Array(5);mn[1]=function(n,s){return[{name:`format${n}`,type:"USHORT",value:1},{name:`axisIndex${n}`,type:"USHORT",value:s.axisIndex},{name:`flags${n}`,type:"USHORT",value:s.flags},{name:`valueNameID${n}`,type:"USHORT",value:s.valueNameID},{name:`value${n}`,type:"FLOAT",value:s.value}]},mn[2]=function(n,s){return[{name:`format${n}`,type:"USHORT",value:2},{name:`axisIndex${n}`,type:"USHORT",value:s.axisIndex},{name:`flags${n}`,type:"USHORT",value:s.flags},{name:`valueNameID${n}`,type:"USHORT",value:s.valueNameID},{name:`nominalValue${n}`,type:"FLOAT",value:s.nominalValue},{name:`rangeMinValue${n}`,type:"FLOAT",value:s.rangeMinValue},{name:`rangeMaxValue${n}`,type:"FLOAT",value:s.rangeMaxValue}]},mn[3]=function(n,s){return[{name:`format${n}`,type:"USHORT",value:3},{name:`axisIndex${n}`,type:"USHORT",value:s.axisIndex},{name:`flags${n}`,type:"USHORT",value:s.flags},{name:`valueNameID${n}`,type:"USHORT",value:s.valueNameID},{name:`value${n}`,type:"FLOAT",value:s.value},{name:`linkedValue${n}`,type:"FLOAT",value:s.linkedValue}]},mn[4]=function(n,s){let o=[{name:`format${n}`,type:"USHORT",value:4},{name:`axisCount${n}`,type:"USHORT",value:s.axisValues.length},{name:`flags${n}`,type:"USHORT",value:s.flags},{name:`valueNameID${n}`,type:"USHORT",value:s.valueNameID}];for(let l=0;l<s.axisValues.length;l++)o=o.concat([{name:`format${n}axisIndex${l}`,type:"USHORT",value:s.axisValues[l].axisIndex},{name:`format${n}value${l}`,type:"FLOAT",value:s.axisValues[l].value}]);return o};function eE(t,n){return new $.Record("axisRecord_"+t,[{name:"axisTag_"+t,type:"TAG",value:n.tag},{name:"axisNameID_"+t,type:"USHORT",value:n.nameID},{name:"axisOrdering_"+t,type:"USHORT",value:n.ordering}])}function tE(t,n){let s=n.format,o=mn[s];G.argument(o!==void 0,`Unknown axis value table format ${s}`);let l=o(t,n);return new $.Table("axisValueTable_"+t,l)}function rE(t){let n=new $.Table("STAT",[{name:"majorVersion",type:"USHORT",value:1},{name:"minorVersion",type:"USHORT",value:2},{name:"designAxisSize",type:"USHORT",value:8},{name:"designAxisCount",type:"USHORT",value:t.axes.length},{name:"designAxesOffset",type:"ULONG",value:0},{name:"axisValueCount",type:"USHORT",value:t.values.length},{name:"offsetToAxisValueOffsets",type:"ULONG",value:0},{name:"elidedFallbackNameID",type:"USHORT",value:t.elidedFallbackNameID}]);n.designAxesOffset=n.offsetToAxisValueOffsets=n.sizeOf();for(let h=0;h<t.axes.length;h++){let d=eE(h,t.axes[h]);n.offsetToAxisValueOffsets+=d.sizeOf(),n.fields=n.fields.concat(d.fields)}let s=[],o=[],l=t.values.length*2;for(let h=0;h<t.values.length;h++){let d=tE(h,t.values[h]);s.push({name:"offset_"+h,type:"USHORT",value:l}),l+=d.sizeOf(),o=o.concat(d.fields)}return n.fields=n.fields.concat(s),n.fields=n.fields.concat(o),n}var Bc={make:rE,parse:$B};function iE(t,n){return new $.Record("axisValueMap_"+t,[{name:"fromCoordinate_"+t,type:"F2DOT14",value:n.fromCoordinate},{name:"toCoordinate_"+t,type:"F2DOT14",value:n.toCoordinate}])}function nE(t,n){let s=new $.Record("segmentMap_"+t,[{name:"positionMapCount_"+t,type:"USHORT",value:n.axisValueMaps.length}]),o=[];for(let l=0;l<n.axisValueMaps.length;l++){let h=iE(`${t}_${l}`,n.axisValueMaps[l]);o=o.concat(h.fields)}return s.fields=s.fields.concat(o),s}function sE(t,n){G.argument(t.axisSegmentMaps.length===n.axes.length,"avar axis count must correspond to fvar axis count");let s=new $.Table("avar",[{name:"majorVersion",type:"USHORT",value:1},{name:"minorVersion",type:"USHORT",value:0},{name:"reserved",type:"USHORT",value:0},{name:"axisCount",type:"USHORT",value:t.axisSegmentMaps.length}]);for(let o=0;o<t.axisSegmentMaps.length;o++){let l=nE(o,t.axisSegmentMaps[o]);s.fields=s.fields.concat(l.fields)}return s}function aE(t,n,s){n||(n=0);let o=new V(t,n),l=o.parseUShort(),h=o.parseUShort();l!==1&&console.warn(`Unsupported avar table version ${l}.${h}`),o.skip("uShort",1);let d=o.parseUShort();G.argument(d===s.axes.length,"avar axis count must correspond to fvar axis count");let B=[];for(let w=0;w<d;w++){let x=[],C=o.parseUShort();for(let S=0;S<C;S++){let T=o.parseF2Dot14(),Y=o.parseF2Dot14();x.push({fromCoordinate:T,toCoordinate:Y})}B.push({axisValueMaps:x})}return{version:[l,h],axisSegmentMaps:B}}var Ec={make:sE,parse:aE};function oE(t,n,s,o){let l=new he.Parser(t,n),h=l.parseTupleVariationStore(l.relativeOffset,s.axes.length,"cvar",o),d=l.parseUShort(),B=l.parseUShort();return d!==1&&console.warn(`Unsupported cvar table version ${d}.${B}`),{version:[d,B],...h}}function AE(){console.warn("Writing of cvar tables is not yet supported.")}var wc={make:AE,parse:oE};function lE(t,n,s,o){let l=new he.Parser(t,n),h=l.parseUShort(),d=l.parseUShort();h!==1&&console.warn(`Unsupported gvar table version ${h}.${d}`);let B=l.parseUShort();B!==s.axes.length&&console.warn(`axisCount ${B} in gvar table does not match the number of axes ${s.axes.length} in the fvar table!`);let w=l.parseUShort(),x=l.parsePointer32(function(){return this.parseTupleRecords(w,B)}),C=l.parseTupleVariationStoreList(B,"gvar",o);return{version:[h,d],sharedTuples:x,glyphVariations:C}}function cE(){console.warn("Writing of gvar tables is not yet supported.")}var yc={make:cE,parse:lE};function uE(t,n){let s={},o=new he.Parser(t,n);s.version=o.parseUShort(),G.argument(s.version<=1,"Unsupported gasp table version."),s.numRanges=o.parseUShort(),s.gaspRanges=[];for(let l=0;l<s.numRanges;l++)s.gaspRanges[l]={rangeMaxPPEM:o.parseUShort(),rangeGaspBehavior:o.parseUShort()};return s}function hE(t){let n=new $.Table("gasp",[{name:"version",type:"USHORT",value:1},{name:"numRanges",type:"USHORT",value:t.numRanges}]);for(let s in t.gaspRanges)n.fields.push({name:"rangeMaxPPEM",type:"USHORT",value:t.gaspRanges[s].rangeMaxPPEM}),n.fields.push({name:"rangeGaspBehavior",type:"USHORT",value:t.gaspRanges[s].rangeGaspBehavior});return n}var Cc={parse:uE,make:hE};function fE(t,n){let s=new Map,o=t.buffer,l=new V(t,n);if(l.parseUShort()!==0)return s;l.relativeOffset=l.parseOffset32();let d=t.byteOffset+n+l.relativeOffset,B=l.parseUShort(),w=new Map;for(let x=0;x<B;x++){let C=l.parseUShort(),S=l.parseUShort(),T=d+l.parseOffset32(),Y=l.parseULong(),U=w.get(T);U===void 0&&(U=new Uint8Array(o,T,Y),w.set(T,U));for(let L=C;L<=S;L++)s.set(L,U)}return s}function pE(t){let n=Array.from(t.keys()).sort(),s=[],o=[],l=new Map,h=0,d={endGlyphID:null};for(let T=0,Y=n.length;T<Y;T++){let U=n[T],L=t.get(U),ee=l.get(L);ee===void 0&&(ee=h,o.push(L),l.set(L,ee),h+=L.byteLength),U-1===d.endGlyphID&&ee===d.svgDocOffset?d.endGlyphID=U:(d={startGlyphID:U,endGlyphID:U,svgDocOffset:ee,svgDocLength:L.byteLength},s.push(d))}let B=s.length,w=o.length,x=2+B*12,C=new Array(4+B*4+w),S=0;C[S++]={name:"version",type:"USHORT",value:0},C[S++]={name:"svgDocumentListOffset",type:"ULONG",value:10},C[S++]={name:"reserved",type:"ULONG",value:0},C[S++]={name:"numEntries",type:"USHORT",value:B};for(let T=0;T<B;T++){let Y="documentRecord_"+T,{startGlyphID:U,endGlyphID:L,svgDocOffset:ee,svgDocLength:Te}=s[T];C[S++]={name:Y+"_startGlyphID",type:"USHORT",value:U},C[S++]={name:Y+"_endGlyphID",type:"USHORT",value:L},C[S++]={name:Y+"_svgDocOffset",type:"ULONG",value:x+ee},C[S++]={name:Y+"_svgDocLength",type:"ULONG",value:Te}}for(let T=0;T<w;T++)C[S++]={name:"svgDoc_"+T,type:"LITERAL",value:o[T]};return new $.Table("SVG ",C)}var bc={make:pE,parse:fE};function xc(t){return Math.log(t)/Math.log(2)|0}function ja(t){for(;t.length%4!==0;)t.push(0);let n=0;for(let s=0;s<t.length;s+=4)n+=(t[s]<<24)+(t[s+1]<<16)+(t[s+2]<<8)+t[s+3];return n%=Math.pow(2,32),n}function Qc(t,n,s,o){return new $.Record("Table Record",[{name:"tag",type:"TAG",value:t!==void 0?t:""},{name:"checkSum",type:"ULONG",value:n!==void 0?n:0},{name:"offset",type:"ULONG",value:s!==void 0?s:0},{name:"length",type:"ULONG",value:o!==void 0?o:0}])}function vc(t){let n=new $.Table("sfnt",[{name:"version",type:"TAG",value:"OTTO"},{name:"numTables",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);n.tables=t,n.numTables=t.length;let s=Math.pow(2,xc(n.numTables));n.searchRange=16*s,n.entrySelector=xc(s),n.rangeShift=n.numTables*16-n.searchRange;let o=[],l=[],h=n.sizeOf()+Qc().sizeOf()*n.numTables;for(;h%4!==0;)h+=1,l.push({name:"padding",type:"BYTE",value:0});for(let d=0;d<t.length;d+=1){let B=t[d];G.argument(B.tableName.length===4,"Table name"+B.tableName+" is invalid.");let w=B.sizeOf(),x=Qc(B.tableName,ja(B.encode()),h,w);for(o.push({name:x.tag+" Table Record",type:"RECORD",value:x}),l.push({name:B.tableName+" table",type:"RECORD",value:B}),h+=w,G.argument(!isNaN(h),"Something went wrong calculating the offset.");h%4!==0;)h+=1,l.push({name:"padding",type:"BYTE",value:0})}return o.sort(function(d,B){return d.value.tag>B.value.tag?1:-1}),n.fields=n.fields.concat(o),n.fields=n.fields.concat(l),n}function Ic(t,n,s){for(let o=0;o<n.length;o+=1){let l=t.charToGlyphIndex(n[o]);if(l>0)return t.glyphs.get(l).getMetrics()}return s}function dE(t){let n=0;for(let s=0;s<t.length;s+=1)n+=t[s];return n/t.length}function gE(t){let n=[],s=[],o=[],l=[],h=[],d=[],B=[],w,x=0,C=0,S=0,T=0,Y=0;for(let at=0;at<t.glyphs.length;at+=1){let Nt=t.glyphs.get(at),zt=Nt.unicode|0;if(isNaN(Nt.advanceWidth))throw new Error("Glyph "+Nt.name+" ("+at+"): advanceWidth is not a number.");(w>zt||w===void 0)&&zt>0&&(w=zt),x<zt&&(x=zt);let or=Va.getUnicodeRange(zt);if(or<32)C|=1<<or;else if(or<64)S|=1<<or-32;else if(or<96)T|=1<<or-64;else if(or<123)Y|=1<<or-96;else throw new Error("Unicode ranges bits > 123 are reserved for internal usage");if(Nt.name===".notdef")continue;let Mr=Nt.getMetrics();n.push(Mr.xMin),s.push(Mr.yMin),o.push(Mr.xMax),l.push(Mr.yMax),d.push(Mr.leftSideBearing),B.push(Mr.rightSideBearing),h.push(Nt.advanceWidth)}let U={xMin:Math.min.apply(null,n),yMin:Math.min.apply(null,s),xMax:Math.max.apply(null,o),yMax:Math.max.apply(null,l),advanceWidthMax:Math.max.apply(null,h),advanceWidthAvg:dE(h),minLeftSideBearing:Math.min.apply(null,d),maxLeftSideBearing:Math.max.apply(null,d),minRightSideBearing:Math.min.apply(null,B)};U.ascender=t.ascender,U.descender=t.descender;let L=0;t.weightClass>=600&&(L|=t.macStyleValues.BOLD),t.italicAngle<0&&(L|=t.macStyleValues.ITALIC);let ee=Ac.make({flags:3,unitsPerEm:t.unitsPerEm,xMin:U.xMin,yMin:U.yMin,xMax:U.xMax,yMax:U.yMax,lowestRecPPEM:3,macStyle:L,createdTimestamp:t.createdTimestamp}),Te=lc.make({ascender:U.ascender,descender:U.descender,advanceWidthMax:U.advanceWidthMax,minLeftSideBearing:U.minLeftSideBearing,minRightSideBearing:U.minRightSideBearing,xMaxExtent:U.maxLeftSideBearing+(U.xMax-U.xMin),numberOfHMetrics:t.glyphs.length}),xe=hc.make(t.glyphs.length),Re=Va.make(Object.assign({xAvgCharWidth:Math.round(U.advanceWidthAvg),usFirstCharIndex:w,usLastCharIndex:x,ulUnicodeRange1:C,ulUnicodeRange2:S,ulUnicodeRange3:T,ulUnicodeRange4:Y,sTypoAscender:U.ascender,sTypoDescender:U.descender,sTypoLineGap:0,usWinAscent:U.yMax,usWinDescent:Math.abs(U.yMin),ulCodePageRange1:1,sxHeight:Ic(t,"xyvw",{yMax:Math.round(U.ascender/2)}).yMax,sCapHeight:Ic(t,"HIKLEFJMNTZBDPRAGOQSUVWXY",U).yMax,usDefaultChar:t.hasChar(" ")?32:0,usBreakChar:t.hasChar(" ")?32:0},t.tables.os2)),Je=cc.make(t.glyphs),$e=Wl.make(t.glyphs),nt=t.getEnglishName("fontFamily"),st=t.getEnglishName("fontSubfamily"),Bt=nt+" "+st,sr=t.getEnglishName("postScriptName");sr||(sr=nt.replace(/\s/g,"")+"-"+st);let Ve={};for(let at in t.names)Ve[at]=t.names[at];Ve.unicode=Ve.unicode||{},Ve.macintosh=Ve.macintosh||{},Ve.windows=Ve.windows||{};let Vt=t.names.unicode||{},Dt=t.names.macintosh||{},Se=t.names.windows||{};for(let at in Ve){if(Ve[at]=Ve[at]||{},!Ve[at].uniqueID){let Nt=t.getEnglishName("manufacturer")||"";Ve[at].uniqueID={en:`${Nt}: ${Bt}`}}Ve[at].postScriptName||(Ve[at].postScriptName={en:sr})}Ve.unicode.preferredFamily||(Ve.unicode.preferredFamily=Vt.fontFamily||Dt.fontFamily||Se.fontFamily),Ve.macintosh.preferredFamily||(Ve.macintosh.preferredFamily=Dt.fontFamily||Vt.fontFamily||Se.fontFamily),Ve.windows.preferredFamily||(Ve.windows.preferredFamily=Se.fontFamily||Vt.fontFamily||Dt.fontFamily),Ve.unicode.preferredSubfamily||(Ve.unicode.preferredSubfamily=Vt.fontSubfamily||Dt.fontSubfamily||Se.fontSubfamily),Ve.macintosh.preferredSubfamily||(Ve.macintosh.preferredSubfamily=Dt.fontSubfamily||Vt.fontSubfamily||Se.fontSubfamily),Ve.windows.preferredSubfamily||(Ve.windows.preferredSubfamily=Se.fontSubfamily||Vt.fontSubfamily||Dt.fontSubfamily);let we=[],Ce=pn.make(Ve,we),vt=we.length>0?uc.make(we):void 0,$r=fc.make(t),Qs=Wa.make(t.glyphs,{version:t.getEnglishName("version"),fullName:Bt,familyName:nt,weightName:st,postScriptName:sr,unitsPerEm:t.unitsPerEm,fontBBox:[0,U.yMin,U.ascender,U.advanceWidthMax],topDict:t.tables.cff&&t.tables.cff.topDict||{}}),mi=t.metas&&Object.keys(t.metas).length>0?dc.make(t.metas):void 0,ar=[ee,Te,xe,Re,Ce,$e,$r,Qs,Je];vt&&ar.push(vt);let Mt={gsub:pc,cpal:Xl,colr:gc,stat:Bc,avar:Ec,cvar:wc,fvar:mc,gvar:yc,gasp:Cc,svg:bc},Xt={avar:[t.tables.fvar],fvar:[t.names]};for(let at in Mt){let Nt=t.tables[at];if(Nt){let zt=Mt[at].make.call(t,Nt,...Xt[at]||[]);zt&&ar.push(zt)}}mi&&ar.push(mi);let It=vc(ar),jt=It.encode(),Ut=ja(jt),kt=It.fields,gt=!1;for(let at=0;at<kt.length;at+=1)if(kt[at].name==="head table"){kt[at].value.checkSumAdjustment=2981146554-Ut,gt=!0;break}if(!gt)throw new Error("Could not find head table with checkSum to adjust.");return It}var mE={make:vc,fontToTable:gE,computeCheckSum:ja};function _a(t,n){let s=0,o=t.length-1;for(;s<=o;){let l=s+o>>>1,h=t[l].tag;if(h===n)return l;h<n?s=l+1:o=l-1}return-s-1}function Fc(t,n){let s=0,o=t.length-1;for(;s<=o;){let l=s+o>>>1,h=t[l];if(h===n)return l;h<n?s=l+1:o=l-1}return-s-1}function Tc(t,n){let s,o=0,l=t.length-1;for(;o<=l;){let h=o+l>>>1;s=t[h];let d=s.start;if(d===n)return s;d<n?o=h+1:l=h-1}if(o>0)return s=t[o-1],n>s.end?0:s}function Sc(t,n){this.font=t,this.tableName=n}Sc.prototype={searchTag:_a,binSearch:Fc,getTable:function(t){let n=this.font.tables[this.tableName];return!n&&t&&(n=this.font.tables[this.tableName]=this.createDefaultTable()),n},getScriptNames:function(){let t=this.getTable();return t?t.scripts.map(function(n){return n.tag}):[]},getDefaultScriptName:function(){let t=this.getTable();if(!t)return;let n=!1;for(let s=0;s<t.scripts.length;s++){let o=t.scripts[s].tag;if(o==="DFLT")return o;o==="latn"&&(n=!0)}if(n)return"latn"},getScriptTable:function(t,n){let s=this.getTable(n);if(s){t=t||"DFLT";let o=s.scripts,l=_a(s.scripts,t);if(l>=0)return o[l].script;if(n){let h={tag:t,script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}};return o.splice(-1-l,0,h),h.script}}},getLangSysTable:function(t,n,s){let o=this.getScriptTable(t,s);if(o){if(!n||n==="dflt"||n==="DFLT")return o.defaultLangSys;let l=_a(o.langSysRecords,n);if(l>=0)return o.langSysRecords[l].langSys;if(s){let h={tag:n,langSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]}};return o.langSysRecords.splice(-1-l,0,h),h.langSys}}},getFeatureTable:function(t,n,s,o){let l=this.getLangSysTable(t,n,o);if(l){let h,d=l.featureIndexes,B=this.font.tables[this.tableName].features;for(let w=0;w<d.length;w++)if(h=B[d[w]],h.tag===s)return h.feature;if(o){let w=B.length;return G.assert(w===0||s>=B[w-1].tag,"Features must be added in alphabetical order."),h={tag:s,feature:{params:0,lookupListIndexes:[]}},B.push(h),d.push(w),h.feature}}},getLookupTables:function(t,n,s,o,l){let h=this.getFeatureTable(t,n,s,l),d=[];if(h){let B,w=h.lookupListIndexes,x=this.font.tables[this.tableName].lookups;for(let C=0;C<w.length;C++)B=x[w[C]],B.lookupType===o&&d.push(B);if(d.length===0&&l){B={lookupType:o,lookupFlag:0,subtables:[],markFilteringSet:void 0};let C=x.length;return x.push(B),w.push(C),[B]}}return d},getGlyphClass:function(t,n){switch(t.format){case 1:return t.startGlyph<=n&&n<t.startGlyph+t.classes.length?t.classes[n-t.startGlyph]:0;case 2:{let s=Tc(t.ranges,n);return s?s.classId:0}}},getCoverageIndex:function(t,n){switch(t.format){case 1:{let s=Fc(t.glyphs,n);return s>=0?s:-1}case 2:{let s=Tc(t.ranges,n);return s?s.index+n-s.start:-1}}},expandCoverage:function(t){if(t.format===1)return t.glyphs;{let n=[],s=t.ranges;for(let o=0;o<s.length;o++){let l=s[o],h=l.start,d=l.end;for(let B=h;B<=d;B++)n.push(B)}return n}}};var gs=Sc;function Bn(t){gs.call(this,t,"gpos")}Bn.prototype=gs.prototype,Bn.prototype.init=function(){let t=this.getDefaultScriptName();this.defaultKerningTables=this.getKerningTables(t)},Bn.prototype.getKerningValue=function(t,n,s){for(let o=0;o<t.length;o++){let l=t[o].subtables;for(let h=0;h<l.length;h++){let d=l[h],B=this.getCoverageIndex(d.coverage,n);if(!(B<0))switch(d.posFormat){case 1:{let w=d.pairSets[B];for(let x=0;x<w.length;x++){let C=w[x];if(C.secondGlyph===s)return C.value1&&C.value1.xAdvance||0}break}case 2:{let w=this.getGlyphClass(d.classDef1,n),x=this.getGlyphClass(d.classDef2,s),C=d.classRecords[w][x];return C.value1&&C.value1.xAdvance||0}}}}return 0},Bn.prototype.getKerningTables=function(t,n){if(this.font.tables.gpos)return this.getLookupTables(t,n,"kern",2)};var BE=Bn;function EE(t,n){let s=t.length;if(s!==n.length)return!1;for(let o=0;o<s;o++)if(t[o]!==n[o])return!1;return!0}function wE(t,n,s){let o=0,l=t.length-1,h=null;for(;o<=l;){let d=Math.floor((o+l)/2),B=t[d],w=B[n];if(w<s)o=d+1;else if(w>s)l=d-1;else{h=B;break}}return h}function yE(t,n,s){let o=0,l=t.length-1;for(;o<=l;){let h=Math.floor((o+l)/2),d=t[h];if(d[n]<s)o=h+1;else if(d[n]>s)l=h-1;else return h}return-1}function CE(t,n,s){let o=0,l=t.length,h=(d,B)=>d[n]-B[n];for(;o<l;){let d=o+l>>>1;h(t[d],s)<0?o=d+1:l=d}return t.splice(o,0,s),o}function Dc(t){return t[0]===31&&t[1]===139&&t[2]===8}function bE(t){let n=new DataView(t.buffer,t.byteOffset,t.byteLength),s=10,o=t.byteLength-8,l=n.getInt8(3);if(l&4&&(s+=2+n.getUint16(s,!0)),l&8)for(;s<o&&t[s++]!==0;);if(l&16)for(;s<o&&t[s++]!==0;);if(l&2&&(s+=2),s>=o)throw new Error("Can't find compressed blocks");let h=n.getUint32(n.byteLength-4,!0);return fe(t.subarray(s,o),new Uint8Array(h))}function Mc(t){return{x:t.x,y:t.y,onCurve:t.onCurve,lastPointOfContour:t.lastPointOfContour}}function xE(t){return{glyphIndex:t.glyphIndex,xScale:t.xScale,scale01:t.scale01,scale10:t.scale10,yScale:t.yScale,dx:t.dx,dy:t.dy}}function Wt(t){gs.call(this,t,"gsub")}function Za(t,n,s){let o=t.subtables;for(let l=0;l<o.length;l++){let h=o[l];if(h.substFormat===n)return h}if(s)return o.push(s),s}Wt.prototype=gs.prototype,Wt.prototype.createDefaultTable=function(){return{version:1,scripts:[{tag:"DFLT",script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}}],features:[],lookups:[]}},Wt.prototype.getSingle=function(t,n,s){let o=[],l=this.getLookupTables(n,s,t,1);for(let h=0;h<l.length;h++){let d=l[h].subtables;for(let B=0;B<d.length;B++){let w=d[B],x=this.expandCoverage(w.coverage),C;if(w.substFormat===1){let S=w.deltaGlyphId;for(C=0;C<x.length;C++){let T=x[C];o.push({sub:T,by:T+S})}}else{let S=w.substitute;for(C=0;C<x.length;C++)o.push({sub:x[C],by:S[C]})}}}return o},Wt.prototype.getMultiple=function(t,n,s){let o=[],l=this.getLookupTables(n,s,t,2);for(let h=0;h<l.length;h++){let d=l[h].subtables;for(let B=0;B<d.length;B++){let w=d[B],x=this.expandCoverage(w.coverage),C;for(C=0;C<x.length;C++){let S=x[C],T=w.sequences[C];o.push({sub:S,by:T})}}}return o},Wt.prototype.getAlternates=function(t,n,s){let o=[],l=this.getLookupTables(n,s,t,3);for(let h=0;h<l.length;h++){let d=l[h].subtables;for(let B=0;B<d.length;B++){let w=d[B],x=this.expandCoverage(w.coverage),C=w.alternateSets;for(let S=0;S<x.length;S++)o.push({sub:x[S],by:C[S]})}}return o},Wt.prototype.getLigatures=function(t,n,s){let o=[],l=this.getLookupTables(n,s,t,4);for(let h=0;h<l.length;h++){let d=l[h].subtables;for(let B=0;B<d.length;B++){let w=d[B],x=this.expandCoverage(w.coverage),C=w.ligatureSets;for(let S=0;S<x.length;S++){let T=x[S],Y=C[S];for(let U=0;U<Y.length;U++){let L=Y[U];o.push({sub:[T].concat(L.components),by:L.ligGlyph})}}}}return o},Wt.prototype.addSingle=function(t,n,s,o){let l=this.getLookupTables(s,o,t,1,!0)[0],h=Za(l,2,{substFormat:2,coverage:{format:1,glyphs:[]},substitute:[]});G.assert(h.coverage.format===1,"Single: unable to modify coverage table format "+h.coverage.format);let d=n.sub,B=this.binSearch(h.coverage.glyphs,d);B<0&&(B=-1-B,h.coverage.glyphs.splice(B,0,d),h.substitute.splice(B,0,0)),h.substitute[B]=n.by},Wt.prototype.addMultiple=function(t,n,s,o){G.assert(n.by instanceof Array&&n.by.length>1,'Multiple: "by" must be an array of two or more ids');let l=this.getLookupTables(s,o,t,2,!0)[0],h=Za(l,1,{substFormat:1,coverage:{format:1,glyphs:[]},sequences:[]});G.assert(h.coverage.format===1,"Multiple: unable to modify coverage table format "+h.coverage.format);let d=n.sub,B=this.binSearch(h.coverage.glyphs,d);B<0&&(B=-1-B,h.coverage.glyphs.splice(B,0,d),h.sequences.splice(B,0,0)),h.sequences[B]=n.by},Wt.prototype.addAlternate=function(t,n,s,o){let l=this.getLookupTables(s,o,t,3,!0)[0],h=Za(l,1,{substFormat:1,coverage:{format:1,glyphs:[]},alternateSets:[]});G.assert(h.coverage.format===1,"Alternate: unable to modify coverage table format "+h.coverage.format);let d=n.sub,B=this.binSearch(h.coverage.glyphs,d);B<0&&(B=-1-B,h.coverage.glyphs.splice(B,0,d),h.alternateSets.splice(B,0,0)),h.alternateSets[B]=n.by},Wt.prototype.addLigature=function(t,n,s,o){let l=this.getLookupTables(s,o,t,4,!0)[0],h=l.subtables[0];h||(h={substFormat:1,coverage:{format:1,glyphs:[]},ligatureSets:[]},l.subtables[0]=h),G.assert(h.coverage.format===1,"Ligature: unable to modify coverage table format "+h.coverage.format);let d=n.sub[0],B=n.sub.slice(1),w={ligGlyph:n.by,components:B},x=this.binSearch(h.coverage.glyphs,d);if(x>=0){let C=h.ligatureSets[x];for(let S=0;S<C.length;S++)if(EE(C[S].components,B))return;C.push(w)}else x=-1-x,h.coverage.glyphs.splice(x,0,d),h.ligatureSets.splice(x,0,[w])},Wt.prototype.getFeature=function(t,n,s){if(/ss\d\d/.test(t))return this.getSingle(t,n,s);switch(t){case"aalt":case"salt":return this.getSingle(t,n,s).concat(this.getAlternates(t,n,s));case"dlig":case"liga":case"rlig":return this.getLigatures(t,n,s);case"ccmp":return this.getMultiple(t,n,s).concat(this.getLigatures(t,n,s));case"stch":return this.getMultiple(t,n,s)}},Wt.prototype.add=function(t,n,s,o){if(/ss\d\d/.test(t))return this.addSingle(t,n,s,o);switch(t){case"aalt":case"salt":return typeof n.by=="number"?this.addSingle(t,n,s,o):this.addAlternate(t,n,s,o);case"dlig":case"liga":case"rlig":return this.addLigature(t,n,s,o);case"ccmp":return n.by instanceof Array?this.addMultiple(t,n,s,o):this.addLigature(t,n,s,o)}};var QE=Wt,Uc=class{constructor(t){this.defaultValue=255,this.font=t}cpal(){return this.font.tables&&this.font.tables.cpal?this.font.tables.cpal:!1}getAll(t){let n=[],s=this.cpal();if(!s)return n;for(let o=0;o<s.colorRecordIndices.length;o++){let l=s.colorRecordIndices[o],h=[];for(let d=l;d<l+s.numPaletteEntries;d++)h.push(Mi(s.colorRecords[d],t||"hexa"));n.push(h)}return n}toCPALcolor(t){return Array.isArray(t)?t.map(n=>fs(n,"raw")):fs(t,"raw")}fillPalette(t,n=[],s=this.cpal().numPaletteEntries){return t=Number.isInteger(t)?this.get(t,"raw"):t,Object.assign(Array(s).fill(this.defaultValue),this.toCPALcolor(t).concat(this.toCPALcolor(n)))}extend(t){if(this.ensureCPAL(Array(t).fill(this.defaultValue)))return;let n=this.cpal(),s=n.numPaletteEntries+t,o=this.getAll().map(l=>this.fillPalette(l,[],s));n.numPaletteEntries=s,n.colorRecords=this.toCPALcolor(o.flat()),this.updateIndices()}get(t,n="hexa"){return this.getAll(n)[t]||null}getColor(t,n=0,s="hexa"){return Na(this.font,t,n,s)}setColor(t,n,s=0){t=parseInt(t),s=parseInt(s);let o=this.getAll("raw"),l=o[s];if(!l)throw Error(`paletteIndex ${s} out of range`);let h=this.cpal(),d=h.numPaletteEntries;Array.isArray(n)||(n=[n]),n.length+t>d&&(this.extend(n.length+t-d),o=this.getAll("raw"),l=o[s]);for(let B=0;B<n.length;B++)l[B+t]=this.toCPALcolor(n[B]);h.colorRecords=o.flat(),this.updateIndices()}add(t){if(this.ensureCPAL(t))return;let n=this.cpal(),s=n.numPaletteEntries;t&&t.length?(t=this.toCPALcolor(t),t.length>s?this.extend(t.length-s):t.length<s&&(t=this.fillPalette(t)),n.colorRecordIndices.push(n.colorRecords.length),n.colorRecords.push(...t)):(n.colorRecordIndices.push(n.colorRecords.length),n.colorRecords.push(...Array(s).fill(this.defaultValue)))}delete(t){let n=this.getAll("raw");delete n[t];let s=this.cpal();s.colorRecordIndices.pop(),s.colorRecords=n.flat()}deleteColor(t,n){if(t===n)throw Error("replacementIndex cannot be the same as colorIndex");let s=this.cpal(),o=this.getAll("raw"),l=[];if(n>s.numPaletteEntries-1)throw Error(`Replacement index out of range: numPaletteEntries after deletion: ${s.numPaletteEntries-1}, replacementIndex: ${n})`);for(let B=0;B<o.length;B++){let x=o[B].filter((C,S)=>S!==t);l.push(x)}let h=this.font.tables.colr;if(h){let B=h.layerRecords;for(let w=0;w<B.length;w++){let x=B[w].paletteIndex;if(x>t)B[w].paletteIndex-=1;else if(x===t){let C=0;for(let S=0;S<o.length;S++)if(n>t&&n<=t+o[S].length){C++;break}B[w].paletteIndex=n-C}}this.font.tables.colr={...h,layerRecords:B}}let d=l.flat();for(let B=0;B<o.length;B++)s.colorRecordIndices[B]-=B;s.numPaletteEntries=Math.max(0,s.numPaletteEntries-1),s.colorRecords=this.toCPALcolor(d)}ensureCPAL(t){return this.cpal()?!1:(!t||!t.length?t=[this.defaultValue]:t=this.toCPALcolor(t),this.font.tables.cpal={version:0,numPaletteEntries:t.length,colorRecords:t,colorRecordIndices:[0]},!0)}updateIndices(){let t=this.cpal(),n=Math.ceil(t.colorRecords.length/t.numPaletteEntries);t.colorRecordIndices=[];for(let s=0;s<n;s++)t.colorRecordIndices.push(s*t.numPaletteEntries)}},vE=class{constructor(t){this.font=t}ensureCOLR(){return this.font.tables.colr||(this.font.tables.colr={version:0,baseGlyphRecords:[],layerRecords:[]}),this.font}get(t){let n=this.font,s=[],o=n.tables.colr,l=n.tables.cpal;if(!o||!l)return s;let h=wE(o.baseGlyphRecords,"glyphID",t);if(!h)return s;let d=h.firstLayerIndex,B=h.numLayers;for(let w=0;w<B;w++){let x=o.layerRecords[d+w];s.push({glyph:n.glyphs.get(x.glyphID),paletteIndex:x.paletteIndex})}return s}add(t,n,s){let o=this.get(t);n=Array.isArray(n)?n:[n],s===void 0||s===1/0||s>o.length?s=o.length:s<0&&(s=o.length+1+s%(o.length+1),s>=o.length+1&&(s-=o.length+1));let l=[];for(let h=0;h<s;h++){let d=Number.isInteger(o[h].glyph)?o[h].glyph:o[h].glyph.index;l.push({glyphID:d,paletteIndex:o[h].paletteIndex})}for(let h of n){let d=Number.isInteger(h.glyph)?h.glyph:h.glyph.index;l.push({glyphID:d,paletteIndex:h.paletteIndex})}for(let h=s;h<o.length;h++){let d=Number.isInteger(o[h].glyph)?o[h].glyph:o[h].glyph.index;l.push({glyphID:d,paletteIndex:o[h].paletteIndex})}this.updateColrTable(t,l)}setPaletteIndex(t,n,s){let o=this.get(t);o[n]?(o=o.map((l,h)=>({glyphID:l.glyph.index,paletteIndex:h===n?s:l.paletteIndex})),this.updateColrTable(t,o)):console.error("Invalid layer index")}remove(t,n,s=n){let o=this.get(t);o=o.map(l=>({glyphID:l.glyph.index,paletteIndex:l.paletteIndex})),o.splice(n,s-n+1),this.updateColrTable(t,o)}updateColrTable(t,n){this.ensureCOLR();let o=this.font.tables.colr,l=yE(o.baseGlyphRecords,"glyphID",t);if(l===-1){let C={glyphID:t,firstLayerIndex:o.layerRecords.length,numLayers:0};l=CE(o.baseGlyphRecords,"glyphID",C)}let d=o.baseGlyphRecords[l],B=d.numLayers,w=n.length,x=w-B;if(x>0){let C=n.slice(B).map(S=>({glyphID:S.glyphID,paletteIndex:S.paletteIndex}));o.layerRecords.splice(d.firstLayerIndex+B,0,...C)}else x<0&&o.layerRecords.splice(d.firstLayerIndex+w,-x);for(let C=0;C<Math.min(B,w);C++)o.layerRecords[d.firstLayerIndex+C]={glyphID:n[C].glyphID,paletteIndex:n[C].paletteIndex};if(d.numLayers=w,x!==0)for(let C=0;C<o.baseGlyphRecords.length;C++){let S=o.baseGlyphRecords[C];C===l||S.firstLayerIndex<d.firstLayerIndex||(o.baseGlyphRecords[C].firstLayerIndex+=x)}}},IE=class{constructor(t){this.font=t,this.cache=new WeakMap}get(t){let n=this.getOrCreateSvgImageCacheEntry(t);return n&&n.image}getAsync(t){let n=this.getOrCreateSvgImageCacheEntry(t);return n&&n.promise}getOrCreateSvgImageCacheEntry(t){let n=this.font.tables.svg;if(n===void 0)return;let s=n.get(t);if(s===void 0)return;let o=this.cache.get(s);o===void 0&&(o=FE(s),this.cache.set(s,o));let l=o.images.get(t);return l===void 0&&(l=TE(this.font,o.template,t),l.promise.then(h=>{if(l.image=h,typeof this.font.onGlyphUpdated=="function")try{this.font.onGlyphUpdated(t)}catch(d){console.error("font.onGlyphUpdated",t,d)}}),o.images.set(t,l)),l}};function FE(t){return{template:SE(t).then(UE),images:new Map}}function TE(t,n,s){return{promise:n.then(o=>{let l;typeof o=="string"?l=o:(o[4]=s,l=o.join(""));let h=kE(l,t.unitsPerEm);return h.image.decode().then(()=>h)}),image:void 0}}var SE=typeof DecompressionStream=="function"?ME:DE;function DE(t){try{return Promise.resolve(new TextDecoder().decode(Dc(t)?bE(t):t))}catch(n){return Promise.reject(n)}}function ME(t){if(Dc(t))return new Response(new Response(t).body.pipeThrough(new DecompressionStream("gzip"))).text();try{return Promise.resolve(new TextDecoder().decode(t))}catch(n){return Promise.reject(n)}}function UE(t){let n=t.indexOf("<svg"),s=t.indexOf(">",n+4)+1;if(/ id=['"]glyph\d+['"]/.test(t.substring(n,s)))return t;let o=t.lastIndexOf("</svg>");return[t.substring(0,s),"<defs>",t.substring(s,o),'</defs><use href="#glyph',"",'"/>',t.substring(o)]}function kE(t,n){let o=new DOMParser().parseFromString(t,"image/svg+xml").documentElement,l=o.viewBox.baseVal,h=o.width.baseVal,d=o.height.baseVal,B=1,w=1;l.width>0&&l.height>0&&(h.unitType===1?(B=h.valueInSpecifiedUnits/l.width,w=d.unitType===1?d.valueInSpecifiedUnits/l.height:B):d.unitType===1?(w=d.valueInSpecifiedUnits/l.height,B=w):n&&(B=n/l.width,w=n/l.height));let x=document.createElement("div");x.style.position="fixed",x.style.visibility="hidden",x.appendChild(o),document.body.appendChild(x);let C=o.getBBox();document.body.removeChild(x);let S=(C.x-l.x)*B,T=(l.y-C.y)*w,Y=C.width*B,U=C.height*w;o.setAttribute("viewBox",[C.x,C.y,C.width,C.height].join(" ")),B!==1&&o.setAttribute("width",Y),w!==1&&o.setAttribute("height",U);let L=new Image(Y,U);return L.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(o.outerHTML),{leftSideBearing:S,baseline:T,image:L}}var Xa=new WeakMap;function kc(t,n,s,o,l){let h;return(n&o)>0?(h=t.parseByte(),(n&l)===0&&(h=-h),h=s+h):(n&l)>0?h=s:h=s+t.parseShort(),h}function Yc(t,n,s){let o=new he.Parser(n,s);t._numberOfContours=o.parseShort(),t._xMin=o.parseShort(),t._yMin=o.parseShort(),t._xMax=o.parseShort(),t._yMax=o.parseShort();let l,h;if(t._numberOfContours>0){let d=t.endPointIndices=[];for(let w=0;w<t._numberOfContours;w+=1)d.push(o.parseUShort());t.instructionLength=o.parseUShort(),t.instructions=[];for(let w=0;w<t.instructionLength;w+=1)t.instructions.push(o.parseByte());let B=d[d.length-1]+1;l=[];for(let w=0;w<B;w+=1)if(h=o.parseByte(),l.push(h),(h&8)>0){let x=o.parseByte();for(let C=0;C<x;C+=1)l.push(h),w+=1}if(G.argument(l.length===B,"Bad flags."),d.length>0){let w=[],x;if(B>0){for(let T=0;T<B;T+=1)h=l[T],x={},x.onCurve=!!(h&1),x.lastPointOfContour=d.indexOf(T)>=0,w.push(x);let C=0;for(let T=0;T<B;T+=1)h=l[T],x=w[T],x.x=kc(o,h,C,2,16),C=x.x;let S=0;for(let T=0;T<B;T+=1)h=l[T],x=w[T],x.y=kc(o,h,S,4,32),S=x.y}t.points=w}else t.points=[]}else if(t._numberOfContours===0)t.points=[];else{t.isComposite=!0,t.points=[],t.components=[];let d=!0;for(;d;){l=o.parseUShort();let B={glyphIndex:o.parseUShort(),xScale:1,scale01:0,scale10:0,yScale:1,dx:0,dy:0};(l&1)>0?(l&2)>0?(B.dx=o.parseShort(),B.dy=o.parseShort()):B.matchedPoints=[o.parseUShort(),o.parseUShort()]:(l&2)>0?(B.dx=o.parseChar(),B.dy=o.parseChar()):B.matchedPoints=[o.parseByte(),o.parseByte()],(l&8)>0?B.xScale=B.yScale=o.parseF2Dot14():(l&64)>0?(B.xScale=o.parseF2Dot14(),B.yScale=o.parseF2Dot14()):(l&128)>0&&(B.xScale=o.parseF2Dot14(),B.scale01=o.parseF2Dot14(),B.scale10=o.parseF2Dot14(),B.yScale=o.parseF2Dot14()),t.components.push(B),d=!!(l&32)}if(l&256){t.instructionLength=o.parseUShort(),t.instructions=[];for(let B=0;B<t.instructionLength;B+=1)t.instructions.push(o.parseByte())}}}function ms(t,n){let s=[];for(let o=0;o<t.length;o+=1){let l=t[o],h={x:n.xScale*l.x+n.scale10*l.y+n.dx,y:n.scale01*l.x+n.yScale*l.y+n.dy,onCurve:l.onCurve,lastPointOfContour:l.lastPointOfContour};s.push(h)}return s}function YE(t){let n=[],s=[];for(let o=0;o<t.length;o+=1){let l=t[o];s.push(l),l.lastPointOfContour&&(n.push(s),s=[])}return G.argument(s.length===0,"There are still points left in the current contour."),n}function za(t){let n=new z;if(!t)return n;let s=YE(t);for(let o=0;o<s.length;++o){let l=s[o],h=l[l.length-1],d=l[0];if(h.onCurve)n.moveTo(h.x,h.y);else if(d.onCurve)n.moveTo(d.x,d.y);else{let B={x:(h.x+d.x)*.5,y:(h.y+d.y)*.5};n.moveTo(B.x,B.y)}for(let B=0;B<l.length;++B)if(h=d,d=l[(B+1)%l.length],h.onCurve)n.lineTo(h.x,h.y);else{let w=d;d.onCurve||(w={x:(h.x+d.x)*.5,y:(h.y+d.y)*.5}),n.quadraticCurveTo(h.x,h.y,w.x,w.y)}n.closePath()}return n}function Oc(t,n){if(n.isComposite){Xa.has(t)||Xa.set(t,new Set);let s=Xa.get(t);s.add(n.index);try{for(let o=0;o<n.components.length;o+=1){let l=n.components[o];if(s.has(l.glyphIndex))continue;let h=t.get(l.glyphIndex);if(h.getPath(),h.points){let d;if(l.matchedPoints===void 0)d=ms(h.points,l);else{if(l.matchedPoints[0]>n.points.length-1||l.matchedPoints[1]>h.points.length-1)throw Error("Matched points out of range in "+n.name);let B=n.points[l.matchedPoints[0]],w=h.points[l.matchedPoints[1]],x={xScale:l.xScale,scale01:l.scale01,scale10:l.scale10,yScale:l.yScale,dx:0,dy:0};w=ms([w],x)[0],x.dx=B.x-w.x,x.dy=B.y-w.y,d=ms(h.points,x)}n.points=n.points.concat(d)}}}finally{s.delete(n.index)}}return za(n.points)}function OE(t,n,s,o){let l=new dr.GlyphSet(o);for(let h=0;h<s.length-1;h+=1){let d=s[h],B=s[h+1];d!==B?l.push(h,dr.ttfGlyphLoader(o,h,Yc,t,n+d,Oc)):l.push(h,dr.glyphLoader(o,h))}return l}function NE(t,n,s,o){let l=new dr.GlyphSet(o);return o._push=function(h){let d=s[h],B=s[h+1];d!==B?l.push(h,dr.ttfGlyphLoader(o,h,Yc,t,n+d,Oc)):l.push(h,dr.glyphLoader(o,h))},l}function RE(t,n,s,o,l){return l.lowMemory?NE(t,n,s,o):OE(t,n,s,o)}var Nc={getPath:za,parse:RE},GE=class{constructor(t){this.font=t}normalizeCoordTags(t){for(let n in t)if(n.length<4){let s=n.padEnd(4," ");t[s]===void 0&&(t[s]=t[n]),delete t[n]}}getNormalizedCoords(t){t||(t=this.font.variation.get());let n=[];this.normalizeCoordTags(t);for(let s=0;s<this.fvar().axes.length;s++){let o=this.fvar().axes[s],l=t[o.tag];l===void 0&&(l=o.defaultValue),l<o.defaultValue?n.push((l-o.defaultValue+Number.EPSILON)/(o.defaultValue-o.minValue+Number.EPSILON)):n.push((l-o.defaultValue+Number.EPSILON)/(o.maxValue-o.defaultValue+Number.EPSILON))}if(this.avar())for(let s=0;s<this.avar().axisSegmentMaps.length;s++){let o=this.avar().axisSegmentMaps[s];for(let l=0;l<o.axisValueMaps.length;l++){let h=o.axisValueMaps[l];if(l>=1&&n[s]<h.fromCoordinate){let d=o.axisValueMaps[l-1];n[s]=((n[s]-d.fromCoordinate)*(h.toCoordinate-d.toCoordinate)+Number.EPSILON)/(h.fromCoordinate-d.fromCoordinate+Number.EPSILON)+d.toCoordinate;break}}}return n}interpolatePoints(t,n,s){if(t.length===0)return;let o=0;for(;o<t.length;){let l=o,h=o,d=t[h];for(;!d.lastPointOfContour;)d=t[++h];for(;o<=h&&!s[o];)o++;if(o>h)continue;let B=o,w=o;for(o++;o<=h;)s[o]&&(this.deltaInterpolate(w+1,o-1,w,o,n,t),w=o),o++;w===B?this.deltaShift(l,h,w,n,t):(this.deltaInterpolate(w+1,h,w,B,n,t),B>0&&this.deltaInterpolate(l,B-1,w,B,n,t)),o=h+1}}deltaInterpolate(t,n,s,o,l,h){if(t>n)return;let d=["x","y"];for(let w=0;w<d.length;w++){let x=d[w];if(l[s][x]>l[o][x]){var B=s;s=o,o=B}let C=l[s][x],S=l[o][x],T=h[s][x],Y=h[o][x];if(C!==S||T===Y){let U=C===S?0:(Y-T)/(S-C);for(let L=t;L<=n;L++){let ee=l[L][x];ee<=C?ee+=T-C:ee>=S?ee+=Y-S:ee=T+(ee-C)*U,h[L][x]=ee}}}}deltaShift(t,n,s,o,l){let h=l[s].x-o[s].x,d=l[s].y-o[s].y;if(!(h===0&&d===0))for(let B=t;B<=n;B++)B!==s&&(l[B].x+=h,l[B].y+=d)}transformComponents(t,n,s,o,l,h){let d=0;for(let B=0;B<t.components.length;B++){let w=t.components[B],x=this.font.glyphs.get(w.glyphIndex),C=xE(w),S=o.indexOf(B);S>-1&&(C.dx+=Math.round(l.deltas[S]*h),C.dy+=Math.round(l.deltasY[S]*h));let T=ms(this.getTransform(x,s).points,C);n.splice(d,T.length,...T),d+=x.points.length}}applyTupleVariationStore(t,n,s,o="gvar",l={}){s||(s=this.font.variation.get());let h=this.getNormalizedCoords(s),{headers:d,sharedPoints:B}=t,w=this.fvar().axes.length,x;o==="gvar"?x=n.map(Mc):o==="cvar"&&(x=[...n]);for(let C=0;C<d.length;C++){let S=d[C],T=1;for(let U=0;U<w;U++){let L=[0];switch(o){case"gvar":L=S.peakTuple?S.peakTuple:this.gvar().sharedTuples[S.sharedTupleRecordsIndex];break;case"cvar":L=S.peakTuple;break}if(L[U]!==0){if(h[U]===0){T=0;break}if(S.intermediateStartTuple)if(h[U]<S.intermediateStartTuple[U]||h[U]>S.intermediateEndTuple[U]){T=0;break}else h[U]<L[U]?T=T*(h[U]-S.intermediateStartTuple[U]+Number.EPSILON)/(L[U]-S.intermediateStartTuple[U]+Number.EPSILON):T=T*(S.intermediateEndTuple[U]-h[U]+Number.EPSILON)/(S.intermediateEndTuple[U]-L[U]+Number.EPSILON);else{if(h[U]<Math.min(0,L[U])||h[U]>Math.max(0,L[U])){T=0;break}T=(T*h[U]+Number.EPSILON)/(L[U]+Number.EPSILON)}}}if(T===0)continue;let Y=S.privatePoints.length?S.privatePoints:B;if(o==="gvar"&&l.glyph&&l.glyph.isComposite)this.transformComponents(l.glyph,x,s,Y,S,T);else if(Y.length===0)for(let U=0;U<x.length;U++){let L=x[U];o==="gvar"?x[U]={x:Math.round(L.x+S.deltas[U]*T),y:Math.round(L.y+S.deltasY[U]*T),onCurve:L.onCurve,lastPointOfContour:L.lastPointOfContour}:o==="cvar"&&(x[U]=Math.round(L+S.deltas[U]*T))}else{let U;o==="gvar"?U=x.map(Mc):o==="cvar"&&(U=x);let L=Array(n.length).fill(!1);for(let ee=0;ee<Y.length;ee++){let Te=Y[ee];if(Te<n.length){let xe=U[Te];o==="gvar"?(L[Te]=!0,xe.x+=S.deltas[ee]*T,xe.y+=S.deltasY[ee]*T):o==="cvar"&&(x[Te]=Math.round(xe+S.deltas[ee]*T))}}if(o==="gvar"){this.interpolatePoints(U,x,L);for(let ee=0;ee<n.length;ee++){let Te=U[ee].x-x[ee].x,xe=U[ee].y-x[ee].y;x[ee].x=Math.round(x[ee].x+Te),x[ee].y=Math.round(x[ee].y+xe)}}}}return x}getTransform(t,n){Number.isInteger(t)&&(t=this.font.glyphs.get(t));let s=t.getBlendPath,o=!!(t.points&&t.points.length),l=t;if(s||o){if(n||(n=this.font.variation.get()),o){let h=this.gvar()&&this.gvar().glyphVariations[t.index];if(h){let d=t.points,B=this.applyTupleVariationStore(h,d,n,"gvar",{glyph:t});l=new Ui(Object.assign({},t,{points:B,path:za(B)}))}}else if(s){let h=t.getBlendPath(n);l=new Ui(Object.assign({},t,{path:h}))}}return this.font.tables.hvar&&(t._advanceWidth=typeof t._advanceWidth<"u"?t._advanceWidth:t.advanceWidth,t.advanceWidth=l.advanceWidth=Math.round(t._advanceWidth+this.getVariableAdjustment(l.index,"hvar","advanceWidth",n)),t._leftSideBearing=typeof t._leftSideBearing<"u"?t._leftSideBearing:t.leftSideBearing,t.leftSideBearing=l.leftSideBearing=Math.round(t._leftSideBearing+this.getVariableAdjustment(l.index,"hvar","lsb",n))),l}getCvarTransform(t){let n=this.font.tables.cvt,s=this.cvar();return!n||!n.length||!s||!s.headers.length?n:this.applyTupleVariationStore(s,n,t,"cvar")}getVariableAdjustment(t,n,s,o){o=o||this.font.variation.get();let l,h,d=this.font.tables[n];if(!d)throw Error(`trying to get variation adjustment from non-existent table "${d}"`);if(!d.itemVariationStore)throw Error(`trying to get variation adjustment from table "${d}" which does not have an itemVariationStore`);let B=d[s]&&d[s].map.length;if(B){let w=t;w>=B&&(w=B-1),{outerIndex:l,innerIndex:h}=d[s].map[w]}else l=0,h=t;return this.getDelta(d.itemVariationStore,l,h,o)}getDelta(t,n,s,o){if(n>=t.itemVariationSubtables.length)return 0;let l=t.itemVariationSubtables[n];if(s>=l.deltaSets.length)return 0;let h=l.deltaSets[s],d=this.getBlendVector(t,n,o),B=0;for(let w=0;w<l.regionIndexes.length;w++)B+=h[w]*d[w];return B}getBlendVector(t,n,s){s||(s=this.font.variation.get());let o=t.itemVariationSubtables[n],l=this.getNormalizedCoords(s),h=[];for(let d=0;d<o.regionIndexes.length;d++){let B=1,w=o.regionIndexes[d],x=t.variationRegions[w].regionAxes;for(let C=0;C<x.length;C++){let S=x[C],T;S.startCoord>S.peakCoord||S.peakCoord>S.endCoord||S.startCoord<0&&S.endCoord>0&&S.peakCoord!==0||S.peakCoord===0?T=1:l[C]<S.startCoord||l[C]>S.endCoord?T=0:l[C]===S.peakCoord?T=1:l[C]<S.peakCoord?T=(l[C]-S.startCoord+Number.EPSILON)/(S.peakCoord-S.startCoord+Number.EPSILON):T=(S.endCoord-l[C]+Number.EPSILON)/(S.endCoord-S.peakCoord+Number.EPSILON),B*=T}h[d]=B}return h}avar(){return this.font.tables.avar}cvar(){return this.font.tables.cvar}fvar(){return this.font.tables.fvar}gvar(){return this.font.tables.gvar}hvar(){return this.font.tables.hvar}},LE=class{constructor(t){this.font=t,this.process=new GE(this.font),this.activateDefaultVariation(),this.getTransform=this.process.getTransform.bind(this.process)}activateDefaultVariation(){let t=this.getDefaultInstanceIndex();t>-1?this.set(t):this.set(this.getDefaultCoordinates())}getDefaultCoordinates(){return this.fvar().axes.reduce((t,n)=>(t[n.tag]=n.defaultValue,t),{})}getDefaultInstanceIndex(){let t=this.getDefaultCoordinates(),n=this.getInstanceIndex(t);return n<0&&(n=this.fvar().instances.findIndex(s=>s.name&&s.name.en==="Regular")),n}getInstanceIndex(t){return this.fvar().instances.findIndex(n=>Object.keys(t).every(s=>n.coordinates[s]===t[s]))}getInstance(t){return this.fvar().instances&&this.fvar().instances[t]}set(t){let n;if(Number.isInteger(t)){let s=this.getInstance(t);if(!s)throw Error(`Invalid instance index ${t}`);n={...s.coordinates}}else n=t,this.process.normalizeCoordTags(n);n=Object.assign({},this.font.defaultRenderOptions.variation,n),this.font.defaultRenderOptions=Object.assign({},this.font.defaultRenderOptions,{variation:n})}get(){return Object.assign({},this.font.defaultRenderOptions.variation)}avar(){return this.font.tables.avar}cvar(){return this.font.tables.cvar}fvar(){return this.font.tables.fvar}gvar(){return this.font.tables.gvar}hvar(){return this.font.tables.hvar}},Rc=1e6,Bs=64,Es=1e4,Gc,di,Lc,qa;function Pc(t){this.font=t,this.getCommands=function(n){return Nc.getPath(n).commands},this._fpgmState=this._prepState=void 0,this._errorState=0}function PE(t){return t}function Hc(t){return Math.sign(t)*Math.round(Math.abs(t))}function HE(t){return Math.sign(t)*Math.round(Math.abs(t*2))/2}function WE(t){return Math.sign(t)*(Math.round(Math.abs(t)+.5)-.5)}function JE(t){return Math.sign(t)*Math.ceil(Math.abs(t))}function VE(t){return Math.sign(t)*Math.floor(Math.abs(t))}var Wc=function(t){let n=this.srPeriod,s=this.srPhase,o=this.srThreshold,l=1;return t<0&&(t=-t,l=-1),t+=o-s,t=Math.trunc(t/n)*n,t+=s,t<0?s*l:t*l},mr={x:1,y:0,axis:"x",distance:function(t,n,s,o){return(s?t.xo:t.x)-(o?n.xo:n.x)},interpolate:function(t,n,s,o){let l,h,d,B,w,x,C;if(!o||o===this){if(l=t.xo-n.xo,h=t.xo-s.xo,w=n.x-n.xo,x=s.x-s.xo,d=Math.abs(l),B=Math.abs(h),C=d+B,C===0){t.x=t.xo+(w+x)/2;return}t.x=t.xo+(w*B+x*d)/C;return}if(l=o.distance(t,n,!0,!0),h=o.distance(t,s,!0,!0),w=o.distance(n,n,!1,!0),x=o.distance(s,s,!1,!0),d=Math.abs(l),B=Math.abs(h),C=d+B,C===0){mr.setRelative(t,t,(w+x)/2,o,!0);return}mr.setRelative(t,t,(w*B+x*d)/C,o,!0)},normalSlope:Number.NEGATIVE_INFINITY,setRelative:function(t,n,s,o,l){if(!o||o===this){t.x=(l?n.xo:n.x)+s;return}let h=l?n.xo:n.x,d=l?n.yo:n.y,B=h+s*o.x,w=d+s*o.y;t.x=B+(t.y-w)/o.normalSlope},slope:0,touch:function(t){t.xTouched=!0},touched:function(t){return t.xTouched},untouch:function(t){t.xTouched=!1}},Sr={x:0,y:1,axis:"y",distance:function(t,n,s,o){return(s?t.yo:t.y)-(o?n.yo:n.y)},interpolate:function(t,n,s,o){let l,h,d,B,w,x,C;if(!o||o===this){if(l=t.yo-n.yo,h=t.yo-s.yo,w=n.y-n.yo,x=s.y-s.yo,d=Math.abs(l),B=Math.abs(h),C=d+B,C===0){t.y=t.yo+(w+x)/2;return}t.y=t.yo+(w*B+x*d)/C;return}if(l=o.distance(t,n,!0,!0),h=o.distance(t,s,!0,!0),w=o.distance(n,n,!1,!0),x=o.distance(s,s,!1,!0),d=Math.abs(l),B=Math.abs(h),C=d+B,C===0){Sr.setRelative(t,t,(w+x)/2,o,!0);return}Sr.setRelative(t,t,(w*B+x*d)/C,o,!0)},normalSlope:0,setRelative:function(t,n,s,o,l){if(!o||o===this){t.y=(l?n.yo:n.y)+s;return}let h=l?n.xo:n.x,d=l?n.yo:n.y,B=h+s*o.x,w=d+s*o.y;t.y=w+o.normalSlope*(t.x-B)},slope:Number.POSITIVE_INFINITY,touch:function(t){t.yTouched=!0},touched:function(t){return t.yTouched},untouch:function(t){t.yTouched=!1}};Object.freeze(mr),Object.freeze(Sr);function En(t,n){this.x=t,this.y=n,this.axis=void 0,this.slope=n/t,this.normalSlope=-t/n,Object.freeze(this)}En.prototype.distance=function(t,n,s,o){return this.x*mr.distance(t,n,s,o)+this.y*Sr.distance(t,n,s,o)},En.prototype.interpolate=function(t,n,s,o){let l,h,d,B,w,x,C;if(d=o.distance(t,n,!0,!0),B=o.distance(t,s,!0,!0),l=o.distance(n,n,!1,!0),h=o.distance(s,s,!1,!0),w=Math.abs(d),x=Math.abs(B),C=w+x,C===0){this.setRelative(t,t,(l+h)/2,o,!0);return}this.setRelative(t,t,(l*x+h*w)/C,o,!0)},En.prototype.setRelative=function(t,n,s,o,l){o=o||this;let h=l?n.xo:n.x,d=l?n.yo:n.y,B=h+s*o.x,w=d+s*o.y,x=o.normalSlope,C=this.slope,S=t.x,T=t.y;t.x=(C*S-x*B+w-T)/(C-x),t.y=C*(t.x-S)+T},En.prototype.touch=function(t){t.xTouched=!0,t.yTouched=!0};function wn(t,n){let s=Math.sqrt(t*t+n*n);return t/=s,n/=s,t===1&&n===0?mr:t===0&&n===1?Sr:new En(t,n)}function Dr(t,n,s,o){this.x=this.xo=Math.round(t*64)/64,this.y=this.yo=Math.round(n*64)/64,this.lastPointOfContour=s,this.onCurve=o,this.prevPointOnContour=void 0,this.nextPointOnContour=void 0,this.xTouched=!1,this.yTouched=!1,Object.preventExtensions(this)}Dr.prototype.nextTouched=function(t){let n=this.nextPointOnContour;for(;!t.touched(n)&&n!==this;)n=n.nextPointOnContour;return n},Dr.prototype.prevTouched=function(t){let n=this.prevPointOnContour;for(;!t.touched(n)&&n!==this;)n=n.prevPointOnContour;return n};var yn=Object.freeze(new Dr(0,0)),jE={cvCutIn:17/16,deltaBase:9,deltaShift:.125,loop:1,minDis:1,autoFlip:!0};function jr(t,n){switch(this.env=t,this.stack=[],this.prog=n,t){case"glyf":this.zp0=this.zp1=this.zp2=1,this.rp0=this.rp1=this.rp2=0;case"prep":this.fv=this.pv=this.dpv=mr,this.round=Hc}}Pc.prototype.exec=function(t,n){if(typeof n!="number")throw new Error("Point size is not a number!");if(this._errorState>2)return;let s=this.font,o=this._prepState;if(!o||o.ppem!==n){let l=this._fpgmState;if(!l){jr.prototype=jE,l=this._fpgmState=new jr("fpgm",s.tables.fpgm),l.funcs=[],l.font=s,l.instructionCount=0,l.callDepth=0;try{di(l)}catch(d){console.log("Hinting error in FPGM:"+d),this._errorState=3;return}}jr.prototype=l,o=this._prepState=new jr("prep",s.tables.prep),o.ppem=n,o.instructionCount=0,o.callDepth=0;let h=s.variation&&s.variation.process.getCvarTransform()||s.tables.cvt;if(h){let d=o.cvt=new Array(h.length),B=n/s.unitsPerEm;for(let w=0;w<h.length;w++)d[w]=h[w]*B}else o.cvt=[];try{di(o)}catch(d){this._errorState<2&&console.log("Hinting error in PREP:"+d),this._errorState=2}}if(!(this._errorState>1))try{return Lc(t,o)}catch(l){this._errorState<1&&(console.log("Hinting error:"+l),console.log("Note: further hinting errors are silenced")),this._errorState=1;return}},Lc=function(t,n){let s=n.ppem/n.font.unitsPerEm,o=s,l=t.components,h,d,B;if(jr.prototype=n,!l)B=new jr("glyf",t.instructions),B.instructionCount=0,B.callDepth=0,qa(t,B,s,o),d=B.gZone;else{let w=n.font;d=[],h=[];for(let x=0;x<l.length;x++){let C=l[x],S=w.glyphs.get(C.glyphIndex);B=new jr("glyf",S.instructions),B.instructionCount=0,B.callDepth=0,qa(S,B,s,o);let T=Math.round(C.dx*s),Y=Math.round(C.dy*o),U=B.gZone,L=B.contours;for(let Te=0;Te<U.length;Te++){let xe=U[Te];xe.xTouched=xe.yTouched=!1,xe.xo=xe.x=xe.x+T,xe.yo=xe.y=xe.y+Y}let ee=d.length;d.push.apply(d,U);for(let Te=0;Te<L.length;Te++)h.push(L[Te]+ee)}t.instructions&&!B.inhibitGridFit&&(B=new jr("glyf",t.instructions),B.gZone=B.z0=B.z1=B.z2=d,B.contours=h,d.push(new Dr(0,0),new Dr(Math.round(t.advanceWidth*s),0)),di(B),d.length-=2)}return d},qa=function(t,n,s,o){let l=t.points||[],h=l.length,d=n.gZone=n.z0=n.z1=n.z2=[],B=n.contours=[],w;for(let S=0;S<h;S++)w=l[S],d[S]=new Dr(w.x*s,w.y*o,w.lastPointOfContour,w.onCurve);let x,C;for(let S=0;S<h;S++)w=d[S],x||(x=w,B.push(S)),w.lastPointOfContour?(w.nextPointOnContour=x,x.prevPointOnContour=w,x=void 0):(C=d[S+1],w.nextPointOnContour=C,C.prevPointOnContour=w);n.inhibitGridFit||(d.push(new Dr(0,0),new Dr(Math.round(t.advanceWidth*s),0)),di(n),d.length-=2)},di=function(t){let n=t.prog;if(!n)return;let s=n.length,o;for(t.ip=0;t.ip<s;t.ip++){if(++t.instructionCount>Rc)throw new Error("Hinting instructions exceeded maximum of "+Rc);if(o=Gc[n[t.ip]],!o)throw new Error("unknown instruction: 0x"+Number(n[t.ip]).toString(16));o(t)}};function ws(t){let n=t.tZone=new Array(t.gZone.length);for(let s=0;s<n.length;s++)n[s]=new Dr(0,0)}function Jc(t,n){let s=t.prog,o=t.ip,l=1,h;do if(h=s[++o],h===88)l++;else if(h===89)l--;else if(h===64)o+=s[o+1]+1;else if(h===65)o+=2*s[o+1]+1;else if(h>=176&&h<=183)o+=h-176+1;else if(h>=184&&h<=191)o+=(h-184+1)*2;else if(n&&l===1&&h===27)break;while(l>0);t.ip=o}function Vc(t,n){n.fv=n.pv=n.dpv=t}function jc(t,n){n.pv=n.dpv=t}function _c(t,n){n.fv=t}function Zc(t,n){let s=n.stack,o=s.pop(),l=s.pop(),h=n.z2[o],d=n.z1[l],B,w;t?(B=h.y-d.y,w=d.x-h.x):(B=d.x-h.x,w=d.y-h.y),n.pv=n.dpv=wn(B,w)}function Xc(t,n){let s=n.stack,o=s.pop(),l=s.pop(),h=n.z2[o],d=n.z1[l],B,w;t?(B=h.y-d.y,w=d.x-h.x):(B=d.x-h.x,w=d.y-h.y),n.fv=wn(B,w)}function _E(t){let n=t.stack,s=n.pop(),o=n.pop();t.pv=t.dpv=wn(o,s)}function ZE(t){let n=t.stack,s=n.pop(),o=n.pop();t.fv=wn(o,s)}function XE(t){let n=t.stack,s=t.pv;n.push(s.x*16384),n.push(s.y*16384)}function zE(t){let n=t.stack,s=t.fv;n.push(s.x*16384),n.push(s.y*16384)}function qE(t){t.fv=t.pv}function KE(t){let n=t.stack,s=n.pop(),o=n.pop(),l=n.pop(),h=n.pop(),d=n.pop(),B=t.z0,w=t.z1,x=B[s],C=B[o],S=w[l],T=w[h],Y=t.z2[d],U=x.x,L=x.y,ee=C.x,Te=C.y,xe=S.x,Re=S.y,Je=T.x,$e=T.y,nt=(U-ee)*(Re-$e)-(L-Te)*(xe-Je),st=U*Te-L*ee,Bt=xe*$e-Re*Je;Y.x=(st*(xe-Je)-Bt*(U-ee))/nt,Y.y=(st*(Re-$e)-Bt*(L-Te))/nt}function $E(t){t.rp0=t.stack.pop()}function e1(t){t.rp1=t.stack.pop()}function t1(t){t.rp2=t.stack.pop()}function r1(t){let n=t.stack.pop();switch(t.zp0=n,n){case 0:t.tZone||ws(t),t.z0=t.tZone;break;case 1:t.z0=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function i1(t){let n=t.stack.pop();switch(t.zp1=n,n){case 0:t.tZone||ws(t),t.z1=t.tZone;break;case 1:t.z1=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function n1(t){let n=t.stack.pop();switch(t.zp2=n,n){case 0:t.tZone||ws(t),t.z2=t.tZone;break;case 1:t.z2=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function s1(t){let n=t.stack.pop();switch(t.zp0=t.zp1=t.zp2=n,n){case 0:t.tZone||ws(t),t.z0=t.z1=t.z2=t.tZone;break;case 1:t.z0=t.z1=t.z2=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function a1(t){t.loop=t.stack.pop(),t.loop>Es&&(t.loop=Es)}function o1(t){t.round=Hc}function A1(t){t.round=WE}function l1(t){let n=t.stack.pop();t.minDis=n/64}function c1(t){Jc(t,!1)}function u1(t){let n=t.stack.pop();t.ip+=n-1}function h1(t){let n=t.stack.pop();t.cvCutIn=n/64}function f1(t){let n=t.stack;n.push(n[n.length-1])}function Ka(t){t.stack.pop()}function p1(t){t.stack.length=0}function d1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(s),n.push(o)}function g1(t){let n=t.stack;n.push(n.length)}function m1(t){let n=t.stack,s=n.pop(),o=n.pop();if(o>Es&&(o=Es),++t.callDepth>Bs)throw new Error("Hinting call depth exceeded maximum of "+Bs);let l=t.ip,h=t.prog;t.prog=t.funcs[s];for(let d=0;d<o;d++)di(t);t.ip=l,t.prog=h,t.callDepth--}function B1(t){let n=t.stack.pop();if(++t.callDepth>Bs)throw new Error("Hinting call depth exceeded maximum of "+Bs);let s=t.ip,o=t.prog;t.prog=t.funcs[n],di(t),t.ip=s,t.prog=o,t.callDepth--}function E1(t){let n=t.stack,s=n.pop();n.push(n[n.length-s])}function w1(t){let n=t.stack,s=n.pop();n.push(n.splice(n.length-s,1)[0])}function y1(t){if(t.env!=="fpgm")throw new Error("FDEF not allowed here");let n=t.stack,s=t.prog,o=t.ip,l=n.pop(),h=o;for(;s[++o]!==45;);t.ip=o,t.funcs[l]=s.slice(h+1,o)}function zc(t,n){let s=n.stack.pop(),o=n.z0[s],l=n.fv,h=n.pv,d=h.distance(o,yn);t&&(d=n.round(d)),l.setRelative(o,yn,d,h),l.touch(o),n.rp0=n.rp1=s}function qc(t,n){let s=n.z2,o=s.length-2,l,h,d;for(let B=0;B<o;B++)l=s[B],!t.touched(l)&&(h=l.prevTouched(t),h!==l&&(d=l.nextTouched(t),h===d&&t.setRelative(l,l,t.distance(h,h,!1,!0),t,!0),t.interpolate(l,h,d,t)))}function Kc(t,n){let s=n.stack,o=t?n.rp1:n.rp2,l=(t?n.z0:n.z1)[o],h=n.fv,d=n.pv,B=n.loop,w=n.z2;for(;B--;){let x=s.pop(),C=w[x],S=d.distance(l,l,!1,!0);h.setRelative(C,C,S,d),h.touch(C)}n.loop=1}function $c(t,n){let s=n.stack,o=t?n.rp1:n.rp2,l=(t?n.z0:n.z1)[o],h=n.fv,d=n.pv,B=s.pop(),w=n.z2[n.contours[B]],x=w,C=d.distance(l,l,!1,!0);do x!==l&&h.setRelative(x,x,C,d),x=x.nextPointOnContour;while(x!==w)}function eu(t,n){let s=n.stack,o=t?n.rp1:n.rp2,l=(t?n.z0:n.z1)[o],h=n.fv,d=n.pv,B=s.pop(),w;switch(B){case 0:w=n.tZone;break;case 1:w=n.gZone;break;default:throw new Error("Invalid zone")}let x,C=d.distance(l,l,!1,!0),S=w.length-2;for(let T=0;T<S;T++)x=w[T],h.setRelative(x,x,C,d)}function C1(t){let n=t.stack,s=t.loop,o=t.fv,l=n.pop()/64,h=t.z2;for(;s--;){let d=n.pop(),B=h[d];o.setRelative(B,B,l),o.touch(B)}t.loop=1}function b1(t){let n=t.stack,s=t.rp1,o=t.rp2,l=t.loop,h=t.z0[s],d=t.z1[o],B=t.fv,w=t.dpv,x=t.z2;for(;l--;){let C=n.pop(),S=x[C];B.interpolate(S,h,d,w),B.touch(S)}t.loop=1}function tu(t,n){let s=n.stack,o=s.pop()/64,l=s.pop(),h=n.z1[l],d=n.z0[n.rp0],B=n.fv,w=n.pv;B.setRelative(h,d,o,w),B.touch(h),n.rp1=n.rp0,n.rp2=l,t&&(n.rp0=l)}function x1(t){let n=t.stack,s=t.rp0,o=t.z0[s],l=t.loop,h=t.fv,d=t.pv,B=t.z1;for(;l--;){let w=n.pop(),x=B[w];h.setRelative(x,o,0,d),h.touch(x)}t.loop=1}function Q1(t){t.round=HE}function ru(t,n){let s=n.stack,o=s.pop(),l=s.pop(),h=n.z0[l],d=n.fv,B=n.pv,w=n.cvt[o],x=B.distance(h,yn);t&&(Math.abs(x-w)<n.cvCutIn&&(x=w),x=n.round(x)),d.setRelative(h,yn,x,B),n.zp0===0&&(h.xo=h.x,h.yo=h.y),d.touch(h),n.rp0=n.rp1=l}function v1(t){let n=t.prog,s=t.ip,o=t.stack,l=n[++s];for(let h=0;h<l;h++)o.push(n[++s]);t.ip=s}function I1(t){let n=t.ip,s=t.prog,o=t.stack,l=s[++n];for(let h=0;h<l;h++){let d=s[++n]<<8|s[++n];d&32768&&(d=-((d^65535)+1)),o.push(d)}t.ip=n}function F1(t){let n=t.stack,s=t.store;s||(s=t.store=[]);let o=n.pop(),l=n.pop();s[l]=o}function T1(t){let n=t.stack,s=t.store,o=n.pop(),l=s&&s[o]||0;n.push(l)}function S1(t){let n=t.stack,s=n.pop(),o=n.pop();t.cvt[o]=s/64}function D1(t){let n=t.stack,s=n.pop();n.push(t.cvt[s]*64)}function iu(t,n){let s=n.stack,o=s.pop(),l=n.z2[o];s.push(n.dpv.distance(l,yn,t,!1)*64)}function nu(t,n){let s=n.stack,o=s.pop(),l=s.pop(),h=n.z1[o],d=n.z0[l],B=n.dpv.distance(d,h,t,t);n.stack.push(Math.round(B*64))}function M1(t){t.stack.push(t.ppem)}function U1(t){t.autoFlip=!0}function k1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(o<s?1:0)}function Y1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(o<=s?1:0)}function O1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(o>s?1:0)}function N1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(o>=s?1:0)}function R1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(s===o?1:0)}function G1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(s!==o?1:0)}function L1(t){let n=t.stack,s=n.pop();n.push(Math.trunc(s)&1?1:0)}function P1(t){let n=t.stack,s=n.pop();n.push(Math.trunc(s)&1?0:1)}function H1(t){let n=t.stack.pop(),s;n||Jc(t,!0)}function W1(t){}function J1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(s&&o?1:0)}function V1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(s||o?1:0)}function j1(t){let n=t.stack,s=n.pop();n.push(s?0:1)}function $a(t,n){let s=n.stack,o=s.pop(),l=n.fv,h=n.pv,d=n.ppem,B=n.deltaBase+(t-1)*16,w=n.deltaShift,x=n.z0;for(let C=0;C<o;C++){let S=s.pop(),T=s.pop();if(B+((T&240)>>4)!==d)continue;let U=(T&15)-8;U>=0&&U++;let L=x[S];l.setRelative(L,L,U*w,h)}}function _1(t){let s=t.stack.pop();t.deltaBase=s}function Z1(t){let s=t.stack.pop();t.deltaShift=Math.pow(.5,s)}function X1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(o+s)}function z1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(o-s)}function q1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(o*64/s)}function K1(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(o*s/64)}function $1(t){let n=t.stack,s=n.pop();n.push(Math.abs(s))}function ew(t){let n=t.stack,s=n.pop();n.push(-s)}function tw(t){let n=t.stack,s=n.pop();n.push(Math.floor(s/64)*64)}function rw(t){let n=t.stack,s=n.pop();n.push(Math.ceil(s/64)*64)}function ys(t,n){let s=n.stack,o=s.pop();s.push(n.round(o/64)*64)}function iw(t){let n=t.stack,s=n.pop(),o=n.pop();t.cvt[o]=s*t.ppem/t.font.unitsPerEm}function eo(t,n){let s=n.stack,o=s.pop(),l=n.ppem,h=n.deltaBase+(t-1)*16,d=n.deltaShift;for(let B=0;B<o;B++){let w=s.pop(),x=s.pop();if(h+((x&240)>>4)!==l)continue;let S=(x&15)-8;S>=0&&S++;let T=S*d;n.cvt[w]+=T}}function nw(t){let n=t.stack.pop();t.round=Wc;let s;switch(n&192){case 0:s=.5;break;case 64:s=1;break;case 128:s=2;break;default:throw new Error("invalid SROUND value")}switch(t.srPeriod=s,n&48){case 0:t.srPhase=0;break;case 16:t.srPhase=.25*s;break;case 32:t.srPhase=.5*s;break;case 48:t.srPhase=.75*s;break;default:throw new Error("invalid SROUND value")}n&=15,n===0?t.srThreshold=0:t.srThreshold=(n/8-.5)*s}function sw(t){let n=t.stack.pop();t.round=Wc;let s;switch(n&192){case 0:s=Math.sqrt(2)/2;break;case 64:s=Math.sqrt(2);break;case 128:s=2*Math.sqrt(2);break;default:throw new Error("invalid S45ROUND value")}switch(t.srPeriod=s,n&48){case 0:t.srPhase=0;break;case 16:t.srPhase=.25*s;break;case 32:t.srPhase=.5*s;break;case 48:t.srPhase=.75*s;break;default:throw new Error("invalid S45ROUND value")}n&=15,n===0?t.srThreshold=0:t.srThreshold=(n/8-.5)*s}function aw(t){t.round=PE}function ow(t){t.round=JE}function Aw(t){t.round=VE}function lw(t){let n=t.stack.pop()}function su(t,n){let s=n.stack,o=s.pop(),l=s.pop(),h=n.z2[o],d=n.z1[l],B,w;t?(B=h.y-d.y,w=d.x-h.x):(B=d.x-h.x,w=d.y-h.y),n.dpv=wn(B,w)}function cw(t){let n=t.stack,s=n.pop(),o=0;s&1&&(o=35),s&32&&(o|=4096),n.push(o)}function uw(t){let n=t.stack,s=n.pop(),o=n.pop(),l=n.pop();n.push(o),n.push(s),n.push(l)}function hw(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(Math.max(o,s))}function fw(t){let n=t.stack,s=n.pop(),o=n.pop();n.push(Math.min(o,s))}function pw(t){let n=t.stack.pop()}function dw(t){let n=t.stack.pop(),s=t.stack.pop();switch(n){case 1:t.inhibitGridFit=!!s;return;case 2:t.ignoreCvt=!!s;return;default:throw new Error("invalid INSTCTRL[] selector")}}function _r(t,n){let s=n.stack,o=n.prog,l=n.ip;for(let h=0;h<t;h++)s.push(o[++l]);n.ip=l}function Zr(t,n){let s=n.ip,o=n.prog,l=n.stack;for(let h=0;h<t;h++){let d=o[++s]<<8|o[++s];d&32768&&(d=-((d^65535)+1)),l.push(d)}n.ip=s}function Ie(t,n,s,o,l,h){let d=h.stack,B=t&&d.pop(),w=d.pop(),x=h.rp0,C=h.z0[x],S=h.z1[w],T=h.minDis,Y=h.fv,U=h.dpv,L,ee,Te,xe;ee=L=U.distance(S,C,!0,!0),Te=ee>=0?1:-1,ee=Math.abs(ee),t&&(xe=h.cvt[B],o&&Math.abs(ee-xe)<h.cvCutIn&&(ee=xe)),s&&ee<T&&(ee=T),o&&(ee=h.round(ee)),Y.setRelative(S,C,Te*ee,U),Y.touch(S),h.rp1=h.rp0,h.rp2=w,n&&(h.rp0=w)}Gc=[Vc.bind(void 0,Sr),Vc.bind(void 0,mr),jc.bind(void 0,Sr),jc.bind(void 0,mr),_c.bind(void 0,Sr),_c.bind(void 0,mr),Zc.bind(void 0,0),Zc.bind(void 0,1),Xc.bind(void 0,0),Xc.bind(void 0,1),_E,ZE,XE,zE,qE,KE,$E,e1,t1,r1,i1,n1,s1,a1,o1,A1,l1,c1,u1,h1,void 0,void 0,f1,Ka,p1,d1,g1,E1,w1,void 0,void 0,void 0,m1,B1,y1,void 0,zc.bind(void 0,0),zc.bind(void 0,1),qc.bind(void 0,Sr),qc.bind(void 0,mr),Kc.bind(void 0,0),Kc.bind(void 0,1),$c.bind(void 0,0),$c.bind(void 0,1),eu.bind(void 0,0),eu.bind(void 0,1),C1,b1,tu.bind(void 0,0),tu.bind(void 0,1),x1,Q1,ru.bind(void 0,0),ru.bind(void 0,1),v1,I1,F1,T1,S1,D1,iu.bind(void 0,0),iu.bind(void 0,1),void 0,nu.bind(void 0,0),nu.bind(void 0,1),M1,void 0,U1,void 0,void 0,k1,Y1,O1,N1,R1,G1,L1,P1,H1,W1,J1,V1,j1,$a.bind(void 0,1),_1,Z1,X1,z1,q1,K1,$1,ew,tw,rw,ys.bind(void 0,0),ys.bind(void 0,1),ys.bind(void 0,2),ys.bind(void 0,3),void 0,void 0,void 0,void 0,iw,$a.bind(void 0,2),$a.bind(void 0,3),eo.bind(void 0,1),eo.bind(void 0,2),eo.bind(void 0,3),nw,sw,void 0,void 0,aw,void 0,ow,Aw,Ka,Ka,void 0,void 0,void 0,void 0,void 0,lw,su.bind(void 0,0),su.bind(void 0,1),cw,void 0,uw,hw,fw,pw,dw,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,_r.bind(void 0,1),_r.bind(void 0,2),_r.bind(void 0,3),_r.bind(void 0,4),_r.bind(void 0,5),_r.bind(void 0,6),_r.bind(void 0,7),_r.bind(void 0,8),Zr.bind(void 0,1),Zr.bind(void 0,2),Zr.bind(void 0,3),Zr.bind(void 0,4),Zr.bind(void 0,5),Zr.bind(void 0,6),Zr.bind(void 0,7),Zr.bind(void 0,8),Ie.bind(void 0,0,0,0,0,0),Ie.bind(void 0,0,0,0,0,1),Ie.bind(void 0,0,0,0,0,2),Ie.bind(void 0,0,0,0,0,3),Ie.bind(void 0,0,0,0,1,0),Ie.bind(void 0,0,0,0,1,1),Ie.bind(void 0,0,0,0,1,2),Ie.bind(void 0,0,0,0,1,3),Ie.bind(void 0,0,0,1,0,0),Ie.bind(void 0,0,0,1,0,1),Ie.bind(void 0,0,0,1,0,2),Ie.bind(void 0,0,0,1,0,3),Ie.bind(void 0,0,0,1,1,0),Ie.bind(void 0,0,0,1,1,1),Ie.bind(void 0,0,0,1,1,2),Ie.bind(void 0,0,0,1,1,3),Ie.bind(void 0,0,1,0,0,0),Ie.bind(void 0,0,1,0,0,1),Ie.bind(void 0,0,1,0,0,2),Ie.bind(void 0,0,1,0,0,3),Ie.bind(void 0,0,1,0,1,0),Ie.bind(void 0,0,1,0,1,1),Ie.bind(void 0,0,1,0,1,2),Ie.bind(void 0,0,1,0,1,3),Ie.bind(void 0,0,1,1,0,0),Ie.bind(void 0,0,1,1,0,1),Ie.bind(void 0,0,1,1,0,2),Ie.bind(void 0,0,1,1,0,3),Ie.bind(void 0,0,1,1,1,0),Ie.bind(void 0,0,1,1,1,1),Ie.bind(void 0,0,1,1,1,2),Ie.bind(void 0,0,1,1,1,3),Ie.bind(void 0,1,0,0,0,0),Ie.bind(void 0,1,0,0,0,1),Ie.bind(void 0,1,0,0,0,2),Ie.bind(void 0,1,0,0,0,3),Ie.bind(void 0,1,0,0,1,0),Ie.bind(void 0,1,0,0,1,1),Ie.bind(void 0,1,0,0,1,2),Ie.bind(void 0,1,0,0,1,3),Ie.bind(void 0,1,0,1,0,0),Ie.bind(void 0,1,0,1,0,1),Ie.bind(void 0,1,0,1,0,2),Ie.bind(void 0,1,0,1,0,3),Ie.bind(void 0,1,0,1,1,0),Ie.bind(void 0,1,0,1,1,1),Ie.bind(void 0,1,0,1,1,2),Ie.bind(void 0,1,0,1,1,3),Ie.bind(void 0,1,1,0,0,0),Ie.bind(void 0,1,1,0,0,1),Ie.bind(void 0,1,1,0,0,2),Ie.bind(void 0,1,1,0,0,3),Ie.bind(void 0,1,1,0,1,0),Ie.bind(void 0,1,1,0,1,1),Ie.bind(void 0,1,1,0,1,2),Ie.bind(void 0,1,1,0,1,3),Ie.bind(void 0,1,1,1,0,0),Ie.bind(void 0,1,1,1,0,1),Ie.bind(void 0,1,1,1,0,2),Ie.bind(void 0,1,1,1,0,3),Ie.bind(void 0,1,1,1,1,0),Ie.bind(void 0,1,1,1,1,1),Ie.bind(void 0,1,1,1,1,2),Ie.bind(void 0,1,1,1,1,3)];var gw=Pc;function Oi(t){this.char=t,this.state={},this.activeState=null}function to(t,n,s){this.contextName=s,this.startIndex=t,this.endOffset=n}function mw(t,n,s){this.contextName=t,this.openRange=null,this.ranges=[],this.checkStart=n,this.checkEnd=s}function St(t,n){this.context=t,this.index=n,this.length=t.length,this.current=t[n],this.backtrack=t.slice(0,n),this.lookahead=t.slice(n+1)}function Cs(t){this.eventId=t,this.subscribers=[]}function Bw(t){let n=["start","end","next","newToken","contextStart","contextEnd","insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD","updateContextsRanges"];for(let o=0;o<n.length;o++){let l=n[o];Object.defineProperty(this.events,l,{value:new Cs(l)})}if(t)for(let o=0;o<n.length;o++){let l=n[o],h=t[l];typeof h=="function"&&this.events[l].subscribe(h)}let s=["insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD"];for(let o=0;o<s.length;o++){let l=s[o];this.events[l].subscribe(this.updateContextsRanges)}}function dt(t){this.tokens=[],this.registeredContexts={},this.contextCheckers=[],this.events={},this.registeredModifiers=[],Bw.call(this,t)}Oi.prototype.setState=function(t,n){return this.state[t]=n,this.activeState={key:t,value:this.state[t]},this.activeState},Oi.prototype.getState=function(t){return this.state[t]||null},dt.prototype.inboundIndex=function(t){return t>=0&&t<this.tokens.length},dt.prototype.composeRUD=function(t){let s=t.map(l=>this[l[0]].apply(this,l.slice(1).concat(!0))),o=l=>typeof l=="object"&&Object.prototype.hasOwnProperty.call(l,"FAIL");if(s.every(o))return{FAIL:"composeRUD: one or more operations hasn't completed successfully",report:s.filter(o)};this.dispatch("composeRUD",[s.filter(l=>!o(l))])},dt.prototype.replaceRange=function(t,n,s,o){n=n!==null?n:this.tokens.length;let l=s.every(h=>h instanceof Oi);if(!isNaN(t)&&this.inboundIndex(t)&&l){let h=this.tokens.splice.apply(this.tokens,[t,n].concat(s));return o||this.dispatch("replaceToken",[t,n,s]),[h,s]}else return{FAIL:"replaceRange: invalid tokens or startIndex."}},dt.prototype.replaceToken=function(t,n,s){if(!isNaN(t)&&this.inboundIndex(t)&&n instanceof Oi){let o=this.tokens.splice(t,1,n);return s||this.dispatch("replaceToken",[t,n]),[o[0],n]}else return{FAIL:"replaceToken: invalid token or index."}},dt.prototype.removeRange=function(t,n,s){n=isNaN(n)?this.tokens.length:n;let o=this.tokens.splice(t,n);return s||this.dispatch("removeRange",[o,t,n]),o},dt.prototype.removeToken=function(t,n){if(!isNaN(t)&&this.inboundIndex(t)){let s=this.tokens.splice(t,1);return n||this.dispatch("removeToken",[s,t]),s}else return{FAIL:"removeToken: invalid token index."}},dt.prototype.insertToken=function(t,n,s){return t.every(l=>l instanceof Oi)?(this.tokens.splice.apply(this.tokens,[n,0].concat(t)),s||this.dispatch("insertToken",[t,n]),t):{FAIL:"insertToken: invalid token(s)."}},dt.prototype.registerModifier=function(t,n,s){this.events.newToken.subscribe(function(o,l){let h=[o,l],d=n===null||n.apply(this,h)===!0,B=[o,l];if(d){let w=s.apply(this,B);o.setState(t,w)}}),this.registeredModifiers.push(t)},Cs.prototype.subscribe=function(t){return typeof t=="function"?this.subscribers.push(t)-1:{FAIL:`invalid '${this.eventId}' event handler`}},Cs.prototype.unsubscribe=function(t){this.subscribers.splice(t,1)},St.prototype.setCurrentIndex=function(t){this.index=t,this.current=this.context[t],this.backtrack=this.context.slice(0,t),this.lookahead=this.context.slice(t+1)},St.prototype.get=function(t){switch(!0){case t===0:return this.current;case(t<0&&Math.abs(t)<=this.backtrack.length):return this.backtrack.slice(t)[0];case(t>0&&t<=this.lookahead.length):return this.lookahead[t-1];default:return null}},dt.prototype.rangeToText=function(t){if(t instanceof to)return this.getRangeTokens(t).map(n=>n.char).join("")},dt.prototype.getText=function(){return this.tokens.map(t=>t.char).join("")},dt.prototype.getContext=function(t){let n=this.registeredContexts[t];return n||null},dt.prototype.on=function(t,n){let s=this.events[t];return s?s.subscribe(n):null},dt.prototype.dispatch=function(t,n){let s=this.events[t];if(s instanceof Cs)for(let o=0;o<s.subscribers.length;o++)s.subscribers[o].apply(this,n||[])},dt.prototype.registerContextChecker=function(t,n,s){if(this.getContext(t))return{FAIL:`context name '${t}' is already registered.`};if(typeof n!="function")return{FAIL:"missing context start check."};if(typeof s!="function")return{FAIL:"missing context end check."};let o=new mw(t,n,s);return this.registeredContexts[t]=o,this.contextCheckers.push(o),o},dt.prototype.getRangeTokens=function(t){let n=t.startIndex+t.endOffset;return[].concat(this.tokens.slice(t.startIndex,n))},dt.prototype.getContextRanges=function(t){let n=this.getContext(t);return n?n.ranges:{FAIL:`context checker '${t}' is not registered.`}},dt.prototype.resetContextsRanges=function(){let t=this.registeredContexts;for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)){let s=t[n];s.ranges=[]}},dt.prototype.updateContextsRanges=function(){this.resetContextsRanges();let t=this.tokens.map(n=>n.char);for(let n=0;n<t.length;n++){let s=new St(t,n);this.runContextCheck(s)}this.dispatch("updateContextsRanges",[this.registeredContexts])},dt.prototype.setEndOffset=function(t,n){let s=this.getContext(n).openRange.startIndex,o=new to(s,t,n),l=this.getContext(n).ranges;return o.rangeId=`${n}.${l.length}`,l.push(o),this.getContext(n).openRange=null,o},dt.prototype.runContextCheck=function(t){let n=t.index;for(let s=0;s<this.contextCheckers.length;s++){let o=this.contextCheckers[s],l=o.contextName,h=this.getContext(l).openRange;if(!h&&o.checkStart(t)&&(h=new to(n,null,l),this.getContext(l).openRange=h,this.dispatch("contextStart",[l,n])),h&&o.checkEnd(t)){let d=n-h.startIndex+1,B=this.setEndOffset(d,l);this.dispatch("contextEnd",[l,B])}}},dt.prototype.tokenize=function(t){this.tokens=[],this.resetContextsRanges();let n=Array.from(t);this.dispatch("start");for(let s=0;s<n.length;s++){let o=n[s],l=new St(n,s);this.dispatch("next",[l]),this.runContextCheck(l);let h=new Oi(o);this.tokens.push(h),this.dispatch("newToken",[h,l])}return this.dispatch("end",[this.tokens]),this.tokens};var Ew=dt;function Xr(t){return/[\u0600-\u065F\u066A-\u06D2\u06FA-\u06FF]/.test(t)}function au(t){return/[\u0630\u0690\u0621\u0631\u0661\u0671\u0622\u0632\u0672\u0692\u06C2\u0623\u0673\u0693\u06C3\u0624\u0694\u06C4\u0625\u0675\u0695\u06C5\u06E5\u0676\u0696\u06C6\u0627\u0677\u0697\u06C7\u0648\u0688\u0698\u06C8\u0689\u0699\u06C9\u068A\u06CA\u066B\u068B\u06CB\u068C\u068D\u06CD\u06FD\u068E\u06EE\u06FE\u062F\u068F\u06CF\u06EF]/.test(t)}function zr(t){return/[\u0600-\u0605\u060C-\u060E\u0610-\u061B\u061E\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED]/.test(t)}function bs(t){return/[\u0E00-\u0E7F]/.test(t)}function xs(t){return/[A-z]/.test(t)}function ww(t){return/\s/.test(t)}function Jt(t){this.font=t,this.features={}}function qr(t){this.id=t.id,this.tag=t.tag,this.substitution=t.substitution}function Kr(t,n){if(!t)return-1;switch(n.format){case 1:return n.glyphs.indexOf(t);case 2:{let s=n.ranges;for(let o=0;o<s.length;o++){let l=s[o];if(t>=l.start&&t<=l.end){let h=t-l.start;return l.index+h}}break}default:return-1}return-1}function yw(t,n){return Kr(t,n.coverage)===-1?null:t+n.deltaGlyphId}function Cw(t,n){let s=Kr(t,n.coverage);return s===-1?null:n.substitute[s]}function ro(t,n){let s=[];for(let o=0;o<t.length;o++){let l=t[o],h=n.current;h=Array.isArray(h)?h[0]:h;let d=Kr(h,l);d!==-1&&s.push(d)}return s.length!==t.length?-1:s}function bw(t,n){let s=n.inputCoverage.length+n.lookaheadCoverage.length+n.backtrackCoverage.length;if(t.context.length<s)return[];let o=ro(n.inputCoverage,t);if(o===-1)return[];let l=n.inputCoverage.length-1;if(t.lookahead.length<n.lookaheadCoverage.length)return[];let h=t.lookahead.slice(l);for(;h.length&&zr(h[0].char);)h.shift();let d=new St(h,0),B=ro(n.lookaheadCoverage,d),w=[].concat(t.backtrack);for(w.reverse();w.length&&zr(w[0].char);)w.shift();if(w.length<n.backtrackCoverage.length)return[];let x=new St(w,0),C=ro(n.backtrackCoverage,x),S=o.length===n.inputCoverage.length&&B.length===n.lookaheadCoverage.length&&C.length===n.backtrackCoverage.length,T=[];if(S)for(let Y=0;Y<n.lookupRecords.length;Y++){let U=n.lookupRecords[Y],L=U.lookupListIndex,ee=this.getLookupByIndex(L);for(let Te=0;Te<ee.subtables.length;Te++){let xe=ee.subtables[Te],Re,Je=this.getSubstitutionType(ee,xe);if(Je==="71"?(Je=this.getSubstitutionType(xe,xe.extension),Re=this.getLookupMethod(xe,xe.extension),xe=xe.extension):Re=this.getLookupMethod(ee,xe),Je==="12"){let $e=t.get(U.sequenceIndex),nt=Re($e);nt&&T.push(nt)}else if(Je==="21"){let $e=t.get(U.sequenceIndex),nt=Re($e);nt&&T.push(nt)}else throw new Error(`Substitution type ${Je} is not supported in chaining substitution`)}}return T}function xw(t,n){let s=t.current,o=Kr(s,n.coverage);if(o===-1)return null;let l,h=n.ligatureSets[o];for(let d=0;d<h.length;d++){l=h[d];for(let B=0;B<l.components.length;B++){let w=t.lookahead[B],x=l.components[B];if(w!==x)break;if(B===l.components.length-1)return l}}return null}function Qw(t,n){let s=t.current;if(Kr(s,n.coverage)===-1)return null;for(let l of n.ruleSets)for(let h of l){let d=!0;for(let B=0;B<h.input.length;B++)if(t.lookahead[B]!==h.input[B]){d=!1;break}if(d){let B=[];B.push(s);for(let x=0;x<h.input.length;x++)B.push(h.input[x]);let w=(x,C)=>{let{lookupListIndex:S,sequenceIndex:T}=C,{subtables:Y}=this.getLookupByIndex(S);for(let U of Y)Kr(x[T],U.coverage)!==-1&&(x[T]=U.deltaGlyphId)};for(let x=0;x<h.lookupRecords.length;x++){let C=h.lookupRecords[x];w(B,C)}return B}}return null}function vw(t,n){if(t.context.length<n.coverages.length)return[];for(let o=0;o<n.coverages.length;o++){let l=t.get(o);if(l=Array.isArray(l)?l[0]:l,Kr(l,n.coverages[o])===-1)return[]}let s=[];for(let o=0;o<n.lookupRecords.length;o++){let l=n.lookupRecords[o],h=l.lookupListIndex,d=this.getLookupByIndex(h);for(let B=0;B<d.subtables.length;B++){let w=d.subtables[B],x,C=this.getSubstitutionType(d,w);if(C==="71"?(C=this.getSubstitutionType(w,w.extension),x=this.getLookupMethod(w,w.extension),w=w.extension):x=this.getLookupMethod(d,w),C==="12"){let S=t.get(l.sequenceIndex),T=x(S);T&&s.push(T)}else if(C==="21"){let S=t.get(l.sequenceIndex),T=x(S);T&&s.push(T)}}}return s}function Iw(t,n){let s=Kr(t,n.coverage);return s===-1?null:n.sequences[s]}Jt.prototype.getDefaultScriptFeaturesIndexes=function(){let t=this.font.tables.gsub.scripts;for(let n=0;n<t.length;n++){let s=t[n];if(s.tag==="DFLT")return s.script.defaultLangSys.featureIndexes}return[]},Jt.prototype.getScriptFeaturesIndexes=function(t){if(!this.font.tables.gsub)return[];if(!t)return this.getDefaultScriptFeaturesIndexes();let s=this.font.tables.gsub.scripts;for(let o=0;o<s.length;o++){let l=s[o];if(l.tag===t&&l.script.defaultLangSys)return l.script.defaultLangSys.featureIndexes;{let h=l.langSysRecords;if(h)for(let d=0;d<h.length;d++){let B=h[d];if(B.tag===t)return B.langSys.featureIndexes}}}return this.getDefaultScriptFeaturesIndexes()},Jt.prototype.mapTagsToFeatures=function(t,n){let s={};for(let o=0;o<t.length;o++){let l=t[o].tag,h=t[o].feature;s[l]=h}this.features[n].tags=s},Jt.prototype.getScriptFeatures=function(t){let n=this.features[t];if(Object.prototype.hasOwnProperty.call(this.features,t))return n;let s=this.getScriptFeaturesIndexes(t);if(!s)return null;let o=this.font.tables.gsub;return n=s.map(l=>o.features[l]),this.features[t]=n,this.mapTagsToFeatures(n,t),n},Jt.prototype.getSubstitutionType=function(t,n){let s=t.lookupType.toString(),o=n.substFormat.toString();return s+o},Jt.prototype.getLookupMethod=function(t,n){let s=this.getSubstitutionType(t,n);switch(s){case"11":return o=>yw.apply(this,[o,n]);case"12":return o=>Cw.apply(this,[o,n]);case"63":return o=>bw.apply(this,[o,n]);case"41":return o=>xw.apply(this,[o,n]);case"21":return o=>Iw.apply(this,[o,n]);case"51":return o=>Qw.apply(this,[o,n]);case"53":return o=>vw.apply(this,[o,n]);default:throw new Error(`substitutionType : ${s} lookupType: ${t.lookupType} - substFormat: ${n.substFormat} is not yet supported`)}},Jt.prototype.lookupFeature=function(t){let n=t.contextParams,s=n.index,o=this.getFeature({tag:t.tag,script:t.script});if(!o)return new Error(`font '${(this.font.names.unicode||this.font.names.windows||this.font.names.macintosh).fullName.en}' doesn't support feature '${t.tag}' for script '${t.script}'.`);let l=this.getFeatureLookups(o),h=[].concat(n.context);for(let d=0;d<l.length;d++){let B=l[d],w=this.getLookupSubtables(B);for(let x=0;x<w.length;x++){let C=w[x],S=this.getSubstitutionType(B,C),T;S==="71"?(S=this.getSubstitutionType(C,C.extension),T=this.getLookupMethod(C,C.extension),C=C.extension):T=this.getLookupMethod(B,C);let Y;switch(S){case"11":Y=T(n.current),Y&&h.splice(s,1,new qr({id:11,tag:t.tag,substitution:Y}));break;case"12":Y=T(n.current),Y&&h.splice(s,1,new qr({id:12,tag:t.tag,substitution:Y}));break;case"63":Y=T(n),Array.isArray(Y)&&Y.length&&h.splice(s,1,new qr({id:63,tag:t.tag,substitution:Y}));break;case"41":Y=T(n),Y&&h.splice(s,1,new qr({id:41,tag:t.tag,substitution:Y}));break;case"21":Y=T(n.current),Y&&h.splice(s,1,new qr({id:21,tag:t.tag,substitution:Y}));break;case"51":case"53":Y=T(n),Array.isArray(Y)&&Y.length&&h.splice(s,1,new qr({id:parseInt(S),tag:t.tag,substitution:Y}));break}n=new St(h,s),!(Array.isArray(Y)&&!Y.length)&&(Y=null)}}return h.length?h:null},Jt.prototype.supports=function(t){if(!t.script)return!1;this.getScriptFeatures(t.script);let n=Object.prototype.hasOwnProperty.call(this.features,t.script);if(!t.tag)return n;let s=this.features[t.script].some(o=>o.tag===t.tag);return n&&s},Jt.prototype.getLookupSubtables=function(t){return t.subtables||null},Jt.prototype.getLookupByIndex=function(t){return this.font.tables.gsub.lookups[t]||null},Jt.prototype.getFeatureLookups=function(t){return t.lookupListIndexes.map(this.getLookupByIndex.bind(this))},Jt.prototype.getFeature=function(n){if(!this.font)return{FAIL:"No font was found"};Object.prototype.hasOwnProperty.call(this.features,n.script)||this.getScriptFeatures(n.script);let s=this.features[n.script];return s?s.tags[n.tag]?this.features[n.script].tags[n.tag]:null:{FAIL:`No feature for script ${n.script}`}};var Fw=Jt;function Tw(t){let n=t.current,s=t.get(-1);return s===null&&Xr(n)||!Xr(s)&&Xr(n)}function Sw(t){let n=t.get(1);return n===null||!Xr(n)}var Dw={startCheck:Tw,endCheck:Sw};function Mw(t){let n=t.current,s=t.get(-1);return(Xr(n)||zr(n))&&!Xr(s)}function Uw(t){let n=t.get(1);switch(!0){case n===null:return!0;case(!Xr(n)&&!zr(n)):{let s=ww(n);if(!s)return!0;if(s){let o=!1;if(o=t.lookahead.some(l=>Xr(l)||zr(l)),!o)return!0}break}default:return!1}}var kw={startCheck:Mw,endCheck:Uw};function Yw(t,n,s){n[s].setState(t.tag,t.substitution)}function Ow(t,n,s){n[s].setState(t.tag,t.substitution)}function io(t,n,s){for(let o=0;o<t.substitution.length;o++){let l=t.substitution[o],h=n[s+o];if(Array.isArray(l)){l.length?h.setState(t.tag,l[0]):h.setState("deleted",!0);continue}h.setState(t.tag,l)}}function Nw(t,n,s){let o=n[s];o.setState(t.tag,t.substitution.ligGlyph);let l=t.substitution.components.length;for(let h=0;h<l;h++)o=n[s+h+1],o.setState("deleted",!0)}var ou={11:Yw,12:Ow,63:io,41:Nw,51:io,53:io};function Rw(t,n,s){t instanceof qr&&ou[t.id]&&ou[t.id](t,n,s)}var gi=Rw;function Gw(t){let n=[].concat(t.backtrack);for(let s=n.length-1;s>=0;s--){let o=n[s],l=au(o),h=zr(o);if(!l&&!h)return!0;if(l)return!1}return!1}function Lw(t){if(au(t.current))return!1;for(let n=0;n<t.lookahead.length;n++){let s=t.lookahead[n];if(!zr(s))return!0}return!1}function Pw(t){let n="arab",s=this.featuresTags[n],o=this.tokenizer.getRangeTokens(t);if(o.length===1)return;let l=new St(o.map(d=>d.getState("glyphIndex")),0),h=new St(o.map(d=>d.char),0);for(let d=0;d<o.length;d++){let B=o[d];if(zr(B.char))continue;l.setCurrentIndex(d),h.setCurrentIndex(d);let w=0;Gw(h)&&(w|=1),Lw(h)&&(w|=2);let x;switch(w){case 1:x="fina";break;case 2:x="init";break;case 3:x="medi";break}if(s.indexOf(x)===-1)continue;let C=this.query.lookupFeature({tag:x,script:n,contextParams:l});if(C instanceof Error){console.info(C.message);continue}for(let S=0;S<C.length;S++){let T=C[S];T instanceof qr&&(gi(T,o,S),l.context[S]=T.substitution)}}}var Hw=Pw;function Au(t,n){let s=t.map(o=>o.activeState.value);return new St(s,n||0)}function Ww(t){let n="arab",s=this.tokenizer.getRangeTokens(t),o=Au(s);for(let l=0;l<o.context.length;l++){o.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"rlig",script:n,contextParams:o});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}o=Au(s)}}}var Jw=Ww;function Vw(t){return t.index===0&&t.context.length>1}function jw(t){return t.index===t.context.length-1}var _w={startCheck:Vw,endCheck:jw};function lu(t,n){let s=t.map(o=>o.activeState.value);return new St(s,n||0)}function Zw(t){let n="delf",s="ccmp",o=this.tokenizer.getRangeTokens(t),l=lu(o);for(let h=0;h<l.context.length;h++){if(!this.query.getFeature({tag:s,script:n,contextParams:l}))continue;l.setCurrentIndex(h);let d=this.query.lookupFeature({tag:s,script:n,contextParams:l});if(d.length){for(let B=0;B<d.length;B++){let w=d[B];gi(w,o,h)}l=lu(o)}}}var Xw=Zw;function zw(t){let n=t.current,s=t.get(-1);return s===null&&xs(n)||!xs(s)&&xs(n)}function qw(t){let n=t.get(1);return n===null||!xs(n)}var Kw={startCheck:zw,endCheck:qw};function cu(t,n){let s=t.map(o=>o.activeState.value);return new St(s,n||0)}function $w(t){let n="latn",s=this.tokenizer.getRangeTokens(t),o=cu(s);for(let l=0;l<o.context.length;l++){o.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"liga",script:n,contextParams:o});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}o=cu(s)}}}var ey=$w;function ty(t){let n=t.current,s=t.get(-1);return s===null&&bs(n)||!bs(s)&&bs(n)}function ry(t){let n=t.get(1);return n===null||!bs(n)}var iy={startCheck:ty,endCheck:ry};function uu(t,n){let s=t.map(o=>o.activeState.value);return new St(s,n||0)}function ny(t){let n="thai",s=this.tokenizer.getRangeTokens(t),o=uu(s,0);for(let l=0;l<o.context.length;l++){o.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"ccmp",script:n,contextParams:o});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}o=uu(s,l)}}}var sy=ny;function hu(t,n){let s=t.map(o=>o.activeState.value);return new St(s,n||0)}function ay(t){let n="thai",s=this.tokenizer.getRangeTokens(t),o=hu(s,0);for(let l=0;l<o.context.length;l++){o.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"liga",script:n,contextParams:o});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}o=hu(s,l)}}}var oy=ay;function fu(t,n){let s=t.map(o=>o.activeState.value);return new St(s,n||0)}function Ay(t){let n="thai",s=this.tokenizer.getRangeTokens(t),o=fu(s,0);for(let l=0;l<o.context.length;l++){o.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"rlig",script:n,contextParams:o});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}o=fu(s,l)}}}var ly=Ay;function no(t){if(t===null)return!1;let n=t.codePointAt(0);return n>=6155&&n<=6157||n>=65024&&n<=65039||n>=917760&&n<=917999}function cy(t){let n=t.current,s=t.get(1);return s===null&&no(n)||no(s)}function uy(t){let n=t.get(1);return n===null||!no(n)}var hy={startCheck:cy,endCheck:uy};function fy(t){let n=this.query.font,s=this.tokenizer.getRangeTokens(t);if(s[1].setState("deleted",!0),n.tables.cmap&&n.tables.cmap.varSelectorList){let o=s[0].char.codePointAt(0),l=s[1].char.codePointAt(0),h=n.tables.cmap.varSelectorList[l];if(h!==void 0&&h.nonDefaultUVS){let d=h.nonDefaultUVS.uvsMappings;if(d[o]){let B=d[o].glyphID;n.glyphs.glyphs[B]!==void 0&&s[0].setState("glyphIndex",B)}}}}var py=fy;function Zt(t){this.baseDir=t||"ltr",this.tokenizer=new Ew,this.featuresTags={}}Zt.prototype.setText=function(t){this.text=t},Zt.prototype.contextChecks={ccmpReplacementCheck:_w,latinWordCheck:Kw,arabicWordCheck:Dw,arabicSentenceCheck:kw,thaiWordCheck:iy,unicodeVariationSequenceCheck:hy};function Ni(t){let n=this.contextChecks[`${t}Check`];return this.tokenizer.registerContextChecker(t,n.startCheck,n.endCheck)}function dy(){return Ni.call(this,"ccmpReplacement"),Ni.call(this,"latinWord"),Ni.call(this,"arabicWord"),Ni.call(this,"arabicSentence"),Ni.call(this,"thaiWord"),Ni.call(this,"unicodeVariationSequence"),this.tokenizer.tokenize(this.text)}function gy(){let t=this.tokenizer.getContextRanges("arabicSentence");for(let n=0;n<t.length;n++){let s=t[n],o=this.tokenizer.getRangeTokens(s);this.tokenizer.replaceRange(s.startIndex,s.endOffset,o.reverse())}}Zt.prototype.registerFeatures=function(t,n){let s=n.filter(o=>this.query.supports({script:t,tag:o}));Object.prototype.hasOwnProperty.call(this.featuresTags,t)?this.featuresTags[t]=this.featuresTags[t].concat(s):this.featuresTags[t]=s},Zt.prototype.applyFeatures=function(t,n){if(!t)throw new Error("No valid font was provided to apply features");this.query||(this.query=new Fw(t));for(let s=0;s<n.length;s++){let o=n[s];this.query.supports({script:o.script})&&this.registerFeatures(o.script,o.tags)}},Zt.prototype.registerModifier=function(t,n,s){this.tokenizer.registerModifier(t,n,s)};function Cn(){if(this.tokenizer.registeredModifiers.indexOf("glyphIndex")===-1)throw new Error("glyphIndex modifier is required to apply arabic presentation features.")}function my(){if(!Object.prototype.hasOwnProperty.call(this.featuresTags,"arab"))return;Cn.call(this);let n=this.tokenizer.getContextRanges("arabicWord");for(let s=0;s<n.length;s++){let o=n[s];Hw.call(this,o)}}function By(){Cn.call(this);let t=this.tokenizer.getContextRanges("ccmpReplacement");for(let n=0;n<t.length;n++){let s=t[n];Xw.call(this,s)}}function Ey(){if(!this.hasFeatureEnabled("arab","rlig"))return;Cn.call(this);let t=this.tokenizer.getContextRanges("arabicWord");for(let n=0;n<t.length;n++){let s=t[n];Jw.call(this,s)}}function wy(){if(!this.hasFeatureEnabled("latn","liga"))return;Cn.call(this);let t=this.tokenizer.getContextRanges("latinWord");for(let n=0;n<t.length;n++){let s=t[n];ey.call(this,s)}}function yy(){let t=this.tokenizer.getContextRanges("unicodeVariationSequence");for(let n=0;n<t.length;n++){let s=t[n];py.call(this,s)}}function Cy(){Cn.call(this);let t=this.tokenizer.getContextRanges("thaiWord");for(let n=0;n<t.length;n++){let s=t[n];this.hasFeatureEnabled("thai","liga")&&oy.call(this,s),this.hasFeatureEnabled("thai","rlig")&&ly.call(this,s),this.hasFeatureEnabled("thai","ccmp")&&sy.call(this,s)}}Zt.prototype.checkContextReady=function(t){return!!this.tokenizer.getContext(t)},Zt.prototype.applyFeaturesToContexts=function(){this.checkContextReady("ccmpReplacement")&&By.call(this),this.checkContextReady("arabicWord")&&(my.call(this),Ey.call(this)),this.checkContextReady("latinWord")&&wy.call(this),this.checkContextReady("arabicSentence")&&gy.call(this),this.checkContextReady("thaiWord")&&Cy.call(this),this.checkContextReady("unicodeVariationSequence")&&yy.call(this)},Zt.prototype.hasFeatureEnabled=function(t,n){return(this.featuresTags[t]||[]).indexOf(n)!==-1},Zt.prototype.processText=function(t){(!this.text||this.text!==t)&&(this.setText(t),dy.call(this),this.applyFeaturesToContexts())},Zt.prototype.getBidiText=function(t){return this.processText(t),this.tokenizer.getText()},Zt.prototype.getTextGlyphs=function(t){this.processText(t);let n=[];for(let s=0;s<this.tokenizer.tokens.length;s++){let o=this.tokenizer.tokens[s];if(o.state.deleted)continue;let l=o.activeState.value;n.push(Array.isArray(l)?l[0]:l)}return n};var by=Zt;function so(t){return{fontFamily:{en:t.familyName||" "},fontSubfamily:{en:t.styleName||" "},fullName:{en:t.fullName||t.familyName+" "+t.styleName},postScriptName:{en:t.postScriptName||(t.familyName+t.styleName).replace(/\s/g,"")},designer:{en:t.designer||" "},designerURL:{en:t.designerURL||" "},manufacturer:{en:t.manufacturer||" "},manufacturerURL:{en:t.manufacturerURL||" "},license:{en:t.license||" "},licenseURL:{en:t.licenseURL||" "},version:{en:t.version||"Version 0.1"},description:{en:t.description||" "},copyright:{en:t.copyright||" "},trademark:{en:t.trademark||" "}}}function et(t){if(t=t||{},t.tables=t.tables||{},!t.empty){if(!t.familyName)throw new Error("When creating a new Font object, familyName is required.");if(!t.styleName)throw new Error("When creating a new Font object, styleName is required.");if(!t.unitsPerEm)throw new Error("When creating a new Font object, unitsPerEm is required.");if(!t.ascender)throw new Error("When creating a new Font object, ascender is required.");if(t.descender>0)throw new Error("When creating a new Font object, negative descender value is required.");this.names={},this.names.unicode=so(t),this.names.macintosh=so(t),this.names.windows=so(t),this.unitsPerEm=t.unitsPerEm||1e3,this.ascender=t.ascender,this.descender=t.descender,this.createdTimestamp=t.createdTimestamp,this.italicAngle=t.italicAngle||0,this.weightClass=t.weightClass||0;let n=0;t.fsSelection?n=t.fsSelection:(this.italicAngle<0?n|=this.fsSelectionValues.ITALIC:this.italicAngle>0&&(n|=this.fsSelectionValues.OBLIQUE),this.weightClass>=600&&(n|=this.fsSelectionValues.BOLD),n===0&&(n=this.fsSelectionValues.REGULAR)),(!t.panose||!Array.isArray(t.panose))&&(t.panose=[0,0,0,0,0,0,0,0,0]),this.tables=Object.assign(t.tables,{os2:Object.assign({usWeightClass:t.weightClass||this.usWeightClasses.MEDIUM,usWidthClass:t.widthClass||this.usWidthClasses.MEDIUM,bFamilyType:t.panose[0]||0,bSerifStyle:t.panose[1]||0,bWeight:t.panose[2]||0,bProportion:t.panose[3]||0,bContrast:t.panose[4]||0,bStrokeVariation:t.panose[5]||0,bArmStyle:t.panose[6]||0,bLetterform:t.panose[7]||0,bMidline:t.panose[8]||0,bXHeight:t.panose[9]||0,fsSelection:n},t.tables.os2)})}this.supported=!0,this.glyphs=new dr.GlyphSet(this,t.glyphs||[]),this.encoding=new Jl(this),this.position=new BE(this),this.substitution=new QE(this),this.tables=this.tables||{},this.tables=new Proxy(this.tables,{set:(n,s,o)=>(n[s]=o,n.fvar&&(n.gvar||n.cff2)&&!this.variation&&(this.variation=new LE(this)),!0)}),this.palettes=new Uc(this),this.layers=new vE(this),this.svgImages=new IE(this),this._push=null,this._hmtxTableData={},Object.defineProperty(this,"hinting",{get:function(){return this._hinting?this._hinting:this.outlinesFormat==="truetype"?this._hinting=new gw(this):null}})}et.prototype.hasChar=function(t){return this.encoding.charToGlyphIndex(t)>0},et.prototype.charToGlyphIndex=function(t){return this.encoding.charToGlyphIndex(t)},et.prototype.charToGlyph=function(t){let n=this.charToGlyphIndex(t),s=this.glyphs.get(n);return s||(s=this.glyphs.get(0)),s},et.prototype.updateFeatures=function(t){return this.defaultRenderOptions.features.map(n=>n.script==="latn"?{script:"latn",tags:n.tags.filter(s=>t[s])}:n)},et.prototype.stringToGlyphIndexes=function(t,n){let s=new by,o=h=>this.charToGlyphIndex(h.char);s.registerModifier("glyphIndex",null,o);let l=n?this.updateFeatures(n.features):this.defaultRenderOptions.features;return s.applyFeatures(this,l),s.getTextGlyphs(t)},et.prototype.stringToGlyphs=function(t,n){let s=this.stringToGlyphIndexes(t,n),o=s.length,l=new Array(o),h=this.glyphs.get(0);for(let d=0;d<o;d+=1)l[d]=this.glyphs.get(s[d])||h;return l},et.prototype.nameToGlyphIndex=function(t){return this.glyphNames.nameToGlyphIndex(t)},et.prototype.nameToGlyph=function(t){let n=this.nameToGlyphIndex(t),s=this.glyphs.get(n);return s||(s=this.glyphs.get(0)),s},et.prototype.glyphIndexToName=function(t){return this.glyphNames.glyphIndexToName?this.glyphNames.glyphIndexToName(t):""},et.prototype.getKerningValue=function(t,n){t=t.index||t,n=n.index||n;let s=this.position.defaultKerningTables;return s?this.position.getKerningValue(s,t,n):this.kerningPairs[t+","+n]||0},et.prototype.defaultRenderOptions={kerning:!0,features:[{script:"arab",tags:["init","medi","fina","rlig"]},{script:"latn",tags:["liga","rlig"]},{script:"thai",tags:["liga","rlig","ccmp"]}],hinting:!1,usePalette:0,drawLayers:!0,drawSVG:!0},et.prototype.forEachGlyph=function(t,n,s,o,l,h){n=n!==void 0?n:0,s=s!==void 0?s:0,o=o!==void 0?o:72,l=Object.assign({},this.defaultRenderOptions,l);let d=1/this.unitsPerEm*o,B=this.stringToGlyphs(t,l),w;if(l.kerning){let x=l.script||this.position.getDefaultScriptName();w=this.position.getKerningTables(x,l.language)}for(let x=0;x<B.length;x+=1){let C=B[x];if(h.call(this,C,n,s,o,l),C.advanceWidth&&(n+=C.advanceWidth*d),l.kerning&&x<B.length-1){let S=w?this.position.getKerningValue(w,C.index,B[x+1].index):this.getKerningValue(C,B[x+1]);n+=S*d}l.letterSpacing?n+=l.letterSpacing*o:l.tracking&&(n+=l.tracking/1e3*o)}return n},et.prototype.getPath=function(t,n,s,o,l){l=Object.assign({},this.defaultRenderOptions,l);let h=new z;if(h._layers=[],rc(this,h,o),h.stroke){let d=1/(h.unitsPerEm||1e3)*o;h.strokeWidth*=d}return this.forEachGlyph(t,n,s,o,l,(d,B,w,x)=>{let C=d.getPath(B,w,x,l,this);if(l.drawSVG||l.drawLayers){let S=C._layers;if(S&&S.length){for(let T=0;T<S.length;T++){let Y=S[T];h._layers.push(Y)}return}}h.extend(C)}),h},et.prototype.getPaths=function(t,n,s,o,l){l=Object.assign({},this.defaultRenderOptions,l);let h=[];return this.forEachGlyph(t,n,s,o,l,function(d,B,w,x){let C=d.getPath(B,w,x,l,this);h.push(C)}),h},et.prototype.getAdvanceWidth=function(t,n,s){return s=Object.assign({},this.defaultRenderOptions,s),this.forEachGlyph(t,0,0,n,s,function(){})},et.prototype.draw=function(t,n,s,o,l,h){this.getPath(n,s,o,l,h).draw(t)},et.prototype.drawPoints=function(t,n,s,o,l,h){h=Object.assign({},this.defaultRenderOptions,h),this.forEachGlyph(n,s,o,l,h,function(d,B,w,x){d.drawPoints(t,B,w,x,h,this)})},et.prototype.drawMetrics=function(t,n,s,o,l,h){h=Object.assign({},this.defaultRenderOptions,h),this.forEachGlyph(n,s,o,l,h,function(d,B,w,x){d.drawMetrics(t,B,w,x)})},et.prototype.getEnglishName=function(t){let n=(this.names.unicode||this.names.macintosh||this.names.windows)[t];if(n)return n.en},et.prototype.validate=function(){let t=[],n=this;function s(l,h){l||(console.warn(`[opentype.js] ${h}`),t.push(h))}function o(l){let h=n.getEnglishName(l);s(h&&h.trim().length>0,"No English "+l+" specified.")}if(o("fontFamily"),o("weightName"),o("manufacturer"),o("copyright"),o("version"),s(this.unitsPerEm>0,"No unitsPerEm specified."),this.tables.colr){let l=this.tables.colr.baseGlyphRecords,h=-1;for(let d=0;d<l.length;d++){let B=l[d].glyphID;if(s(h<l[d].glyphID,`baseGlyphs must be sorted by GlyphID in ascending order, but glyphID ${B} comes after ${h}`),h>l[d].glyphID)break;h=B}}return t},et.prototype.toTables=function(){return mE.fontToTable(this)},et.prototype.toBuffer=function(){return console.warn("Font.toBuffer is deprecated. Use Font.toArrayBuffer instead."),this.toArrayBuffer()},et.prototype.toArrayBuffer=function(){let n=this.toTables().encode(),s=new ArrayBuffer(n.length),o=new Uint8Array(s);for(let l=0;l<n.length;l++)o[l]=n[l];return s},et.prototype.download=function(){console.error("DEPRECATED: platform-specific actions are to be implemented on user-side")},et.prototype.fsSelectionValues={ITALIC:1,UNDERSCORE:2,NEGATIVE:4,OUTLINED:8,STRIKEOUT:16,BOLD:32,REGULAR:64,USER_TYPO_METRICS:128,WWS:256,OBLIQUE:512},et.prototype.macStyleValues={BOLD:1,ITALIC:2,UNDERLINE:4,OUTLINED:8,SHADOW:16,CONDENSED:32,EXTENDED:64},et.prototype.usWidthClasses={ULTRA_CONDENSED:1,EXTRA_CONDENSED:2,CONDENSED:3,SEMI_CONDENSED:4,MEDIUM:5,SEMI_EXPANDED:6,EXPANDED:7,EXTRA_EXPANDED:8,ULTRA_EXPANDED:9},et.prototype.usWeightClasses={THIN:100,EXTRA_LIGHT:200,LIGHT:300,NORMAL:400,MEDIUM:500,SEMI_BOLD:600,BOLD:700,EXTRA_BOLD:800,BLACK:900};var pu=et;function xy(t,n){let s=new he.Parser(t,n),o=s.parseUShort(),l=s.parseUShort();o!==1&&console.warn(`Unsupported hvar table version ${o}.${l}`);let h=[o,l],d=s.parsePointer32(function(){return this.parseItemVariationStore()}),B=s.parsePointer32(function(){return this.parseDeltaSetIndexMap()}),w=s.parsePointer32(function(){return this.parseDeltaSetIndexMap()}),x=s.parsePointer32(function(){return this.parseDeltaSetIndexMap()});return{version:h,itemVariationStore:d,advanceWidth:B,lsb:w,rsb:x}}function Qy(){console.warn("Writing of hvar tables is not yet supported.")}var vy={make:Qy,parse:xy},Iy=function(){return{coverage:this.parsePointer(V.coverage),attachPoints:this.parseList(V.pointer(V.uShortList))}},Fy=function(){var t=this.parseUShort();if(G.argument(t===1||t===2||t===3,"Unsupported CaretValue table version."),t===1)return{coordinate:this.parseShort()};if(t===2)return{pointindex:this.parseShort()};if(t===3)return{coordinate:this.parseShort()}},Ty=function(){return this.parseList(V.pointer(Fy))},Sy=function(){return{coverage:this.parsePointer(V.coverage),ligGlyphs:this.parseList(V.pointer(Ty))}},Dy=function(){return this.parseUShort(),this.parseList(V.pointer(V.coverage))};function My(t,n){n=n||0;let s=new V(t,n),o=s.parseVersion(1);G.argument(o===1||o===1.2||o===1.3,"Unsupported GDEF table version.");var l={version:o,classDef:s.parsePointer(V.classDef),attachList:s.parsePointer(Iy),ligCaretList:s.parsePointer(Sy),markAttachClassDef:s.parsePointer(V.classDef)};return o>=1.2&&(l.markGlyphSets=s.parsePointer(Dy)),l}var Uy={parse:My},nr=new Array(10);nr[1]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();if(s===1)return{posFormat:1,coverage:this.parsePointer(V.coverage),value:this.parseValueRecord()};if(s===2)return{posFormat:2,coverage:this.parsePointer(V.coverage),values:this.parseValueRecordList()};G.assert(!1,"0x"+n.toString(16)+": GPOS lookup type 1 format must be 1 or 2.")},nr[2]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();G.assert(s===1||s===2,"0x"+n.toString(16)+": GPOS lookup type 2 format must be 1 or 2.");let o=this.parsePointer(V.coverage),l=this.parseUShort(),h=this.parseUShort();if(s===1)return{posFormat:s,coverage:o,valueFormat1:l,valueFormat2:h,pairSets:this.parseList(V.pointer(V.list(function(){return{secondGlyph:this.parseUShort(),value1:this.parseValueRecord(l),value2:this.parseValueRecord(h)}})))};if(s===2){let d=this.parsePointer(V.classDef),B=this.parsePointer(V.classDef),w=this.parseUShort(),x=this.parseUShort();return{posFormat:s,coverage:o,valueFormat1:l,valueFormat2:h,classDef1:d,classDef2:B,class1Count:w,class2Count:x,classRecords:this.parseList(w,V.list(x,function(){return{value1:this.parseValueRecord(l),value2:this.parseValueRecord(h)}}))}}},nr[3]=function(){return{error:"GPOS Lookup 3 not supported"}},nr[4]=function(){return{error:"GPOS Lookup 4 not supported"}},nr[5]=function(){return{error:"GPOS Lookup 5 not supported"}},nr[6]=function(){return{error:"GPOS Lookup 6 not supported"}},nr[7]=function(){return{error:"GPOS Lookup 7 not supported"}},nr[8]=function(){return{error:"GPOS Lookup 8 not supported"}},nr[9]=function(){return{error:"GPOS Lookup 9 not supported"}};function ky(t,n){n=n||0;let s=new V(t,n),o=s.parseVersion(1);return G.argument(o===1||o===1.1,"Unsupported GPOS table version "+o),o===1?{version:o,scripts:s.parseScriptList(),features:s.parseFeatureList(),lookups:s.parseLookupList(nr)}:{version:o,scripts:s.parseScriptList(),features:s.parseFeatureList(),lookups:s.parseLookupList(nr),variations:s.parseFeatureVariationsList()}}var Yy=new Array(10);function Oy(t){return new $.Table("GPOS",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new $.ScriptList(t.scripts)},{name:"features",type:"TABLE",value:new $.FeatureList(t.features)},{name:"lookups",type:"TABLE",value:new $.LookupList(t.lookups,Yy)}])}var Ny={parse:ky,make:Oy};function Ry(t){let n={};t.skip("uShort");let s=t.parseUShort();G.argument(s===0,"Unsupported kern sub-table version."),t.skip("uShort",2);let o=t.parseUShort();t.skip("uShort",3);for(let l=0;l<o;l+=1){let h=t.parseUShort(),d=t.parseUShort(),B=t.parseShort();n[h+","+d]=B}return n}function Gy(t){let n={};t.skip("uShort"),t.parseULong()>1&&console.warn("Only the first kern subtable is supported."),t.skip("uLong");let l=t.parseUShort()&255;if(t.skip("uShort"),l===0){let h=t.parseUShort();t.skip("uShort",3);for(let d=0;d<h;d+=1){let B=t.parseUShort(),w=t.parseUShort(),x=t.parseShort();n[B+","+w]=x}}return n}function Ly(t,n){let s=new he.Parser(t,n),o=s.parseUShort();if(o===0)return Ry(s);if(o===1)return Gy(s);throw new Error("Unsupported kern table version ("+o+").")}var Py={parse:Ly};function Hy(t,n,s,o){let l=new he.Parser(t,n),h=o?l.parseUShort:l.parseULong,d=[];for(let B=0;B<s+1;B+=1){let w=h.call(l);o&&(w*=2),d.push(w)}return d}var Wy={parse:Hy};function du(t,n){let s=[],o=12;for(let l=0;l<n;l+=1){let h=he.getTag(t,o),d=he.getULong(t,o+4),B=he.getULong(t,o+8),w=he.getULong(t,o+12);s.push({tag:h,checksum:d,offset:B,length:w,compression:!1}),o+=16}return s}function Jy(t,n){let s=[],o=44;for(let l=0;l<n;l+=1){let h=he.getTag(t,o),d=he.getULong(t,o+4),B=he.getULong(t,o+8),w=he.getULong(t,o+12),x;B<w?x="WOFF":x=!1,s.push({tag:h,offset:d,compression:x,compressedLength:B,length:w}),o+=20}return s}function ze(t,n){if(n.compression==="WOFF"){let s=new Uint8Array(t.buffer,n.offset+2,n.compressedLength-2),o=new Uint8Array(n.length);if(fe(s,o),o.byteLength!==n.length)throw new Error("Decompression error: "+n.tag+" decompressed length doesn't match recorded length");return{data:new DataView(o.buffer,0),offset:0}}else return{data:t,offset:n.offset}}function Vy(t,n={}){let s,o,l=new pu({empty:!0});t.constructor!==ArrayBuffer&&(t=new Uint8Array(t).buffer);let h=new DataView(t,0),d,B=[],w=he.getTag(h,0);if(w==="\0\0\0"||w==="true"||w==="typ1")l.outlinesFormat="truetype",d=he.getUShort(h,4),B=du(h,d);else if(w==="OTTO")l.outlinesFormat="cff",d=he.getUShort(h,4),B=du(h,d);else if(w==="wOFF"){let Se=he.getTag(h,4);if(Se==="\0\0\0")l.outlinesFormat="truetype";else if(Se==="OTTO")l.outlinesFormat="cff";else throw new Error("Unsupported OpenType flavor "+w);d=he.getUShort(h,12),B=Jy(h,d)}else if(w==="wOF2"){let Se="https://github.com/opentypejs/opentype.js/issues/183#issuecomment-1147228025";throw new Error("WOFF2 require an external decompressor library, see examples at: "+Se)}else throw new Error("Unsupported OpenType signature "+w);let x,C,S,T,Y,U,L,ee,Te,xe,Re,Je,$e,nt,st,Bt,sr,Ve;for(let Se=0;Se<d;Se+=1){let we=B[Se],Ce;switch(we.tag){case"avar":L=we;break;case"cmap":Ce=ze(h,we),l.tables.cmap=Wl.parse(Ce.data,Ce.offset),l.encoding=new Vl(l.tables.cmap);break;case"cvt ":Ce=ze(h,we),Ve=new he.Parser(Ce.data,Ce.offset),l.tables.cvt=Ve.parseShortList(we.length/2);break;case"fvar":S=we;break;case"STAT":T=we;break;case"gvar":Y=we;break;case"cvar":U=we;break;case"fpgm":Ce=ze(h,we),Ve=new he.Parser(Ce.data,Ce.offset),l.tables.fpgm=Ve.parseByteList(we.length);break;case"head":Ce=ze(h,we),l.tables.head=Ac.parse(Ce.data,Ce.offset),l.unitsPerEm=l.tables.head.unitsPerEm,s=l.tables.head.indexToLocFormat;break;case"hhea":Ce=ze(h,we),l.tables.hhea=lc.parse(Ce.data,Ce.offset),l.ascender=l.tables.hhea.ascender,l.descender=l.tables.hhea.descender,l.numberOfHMetrics=l.tables.hhea.numberOfHMetrics;break;case"HVAR":$e=we;break;case"hmtx":Je=we;break;case"ltag":Ce=ze(h,we),o=uc.parse(Ce.data,Ce.offset);break;case"COLR":Ce=ze(h,we),l.tables.colr=gc.parse(Ce.data,Ce.offset);break;case"CPAL":Ce=ze(h,we),l.tables.cpal=Xl.parse(Ce.data,Ce.offset);break;case"maxp":Ce=ze(h,we),l.tables.maxp=hc.parse(Ce.data,Ce.offset),l.numGlyphs=l.tables.maxp.numGlyphs;break;case"name":Bt=we;break;case"OS/2":Ce=ze(h,we),l.tables.os2=Va.parse(Ce.data,Ce.offset);break;case"post":Ce=ze(h,we),l.tables.post=fc.parse(Ce.data,Ce.offset),l.glyphNames=new Oa(l.tables.post);break;case"prep":Ce=ze(h,we),Ve=new he.Parser(Ce.data,Ce.offset),l.tables.prep=Ve.parseByteList(we.length);break;case"glyf":ee=we;break;case"loca":st=we;break;case"CFF ":x=we;break;case"CFF2":C=we;break;case"kern":nt=we;break;case"GDEF":Te=we;break;case"GPOS":xe=we;break;case"GSUB":Re=we;break;case"meta":sr=we;break;case"gasp":try{Ce=ze(h,we),l.tables.gasp=Cc.parse(Ce.data,Ce.offset)}catch(vt){console.warn("Failed to parse gasp table, skipping."),console.warn(vt)}break;case"SVG ":Ce=ze(h,we),l.tables.svg=bc.parse(Ce.data,Ce.offset);break;default:break}}let Vt=ze(h,Bt);if(l.tables.name=pn.parse(Vt.data,Vt.offset,o),l.names=l.tables.name,ee&&st){let Se=s===0,we=ze(h,st),Ce=Wy.parse(we.data,we.offset,l.numGlyphs,Se),vt=ze(h,ee);l.glyphs=Nc.parse(vt.data,vt.offset,Ce,l,n)}else if(x){let Se=ze(h,x);Wa.parse(Se.data,Se.offset,l,n)}else if(C){let Se=ze(h,C);Wa.parse(Se.data,Se.offset,l,n)}else throw new Error("Font doesn't contain TrueType, CFF or CFF2 outlines.");let Dt=ze(h,Je);if(cc.parse(l,Dt.data,Dt.offset,l.numberOfHMetrics,l.numGlyphs,l.glyphs,n),W0(l,n),nt){let Se=ze(h,nt);l.kerningPairs=Py.parse(Se.data,Se.offset)}else l.kerningPairs={};if(Te){let Se=ze(h,Te);l.tables.gdef=Uy.parse(Se.data,Se.offset)}if(xe){let Se=ze(h,xe);l.tables.gpos=Ny.parse(Se.data,Se.offset),l.position.init()}if(Re){let Se=ze(h,Re);l.tables.gsub=pc.parse(Se.data,Se.offset)}if(S){let Se=ze(h,S);l.tables.fvar=mc.parse(Se.data,Se.offset,l.names)}if(T){let Se=ze(h,T);l.tables.stat=Bc.parse(Se.data,Se.offset,l.tables.fvar)}if(Y){S||console.warn("This font provides a gvar table, but no fvar table, which is required for variable fonts."),ee||console.warn("This font provides a gvar table, but no glyf table. Glyph variation only works with TrueType outlines.");let Se=ze(h,Y);l.tables.gvar=yc.parse(Se.data,Se.offset,l.tables.fvar,l.glyphs)}if(U){S||console.warn("This font provides a cvar table, but no fvar table, which is required for variable fonts."),l.tables.cvt||console.warn("This font provides a cvar table, but no cvt table which could be made variable."),ee||console.warn("This font provides a gvar table, but no glyf table. Glyph variation only works with TrueType outlines.");let Se=ze(h,U);l.tables.cvar=wc.parse(Se.data,Se.offset,l.tables.fvar,l.tables.cvt||[])}if(L){S||console.warn("This font provides an avar table, but no fvar table, which is required for variable fonts.");let Se=ze(h,L);l.tables.avar=Ec.parse(Se.data,Se.offset,l.tables.fvar)}if($e){S||console.warn("This font provides an HVAR table, but no fvar table, which is required for variable fonts."),Je||console.warn("This font provides an HVAR table, but no hmtx table to vary.");let Se=ze(h,$e);l.tables.hvar=vy.parse(Se.data,Se.offset,l.tables.fvar)}if(sr){let Se=ze(h,sr);l.tables.meta=dc.parse(Se.data,Se.offset),l.metas=l.tables.meta}return l.palettes=new Uc(l),l}function jy(){console.error("DEPRECATED! migrate to: opentype.parse(buffer, opt) See: https://github.com/opentypejs/opentype.js/issues/675")}function _y(){console.error('DEPRECATED! migrate to: opentype.parse(require("fs").readFileSync(url), opt)')}return u(f)})();(function(r,e){typeof define=="function"&&define.amd?define(e):typeof Qa=="object"&&Qa.exports?Qa.exports=e():r.opentype=e()})(typeof self<"u"?self:x0,()=>({...b0,default:b0}))});var Mu=bn(Du(),1),{program:GT,createCommand:LT,createArgument:PT,createOption:HT,CommanderError:WT,InvalidArgumentError:JT,InvalidOptionArgumentError:VT,Command:Gi,Argument:jT,Option:Li,Help:_T}=Mu.default;var Ds=["https://meta.fabricmc.net","https://meta2.fabricmc.net","https://meta3.fabricmc.net"],gC=["https://maven.fabricmc.net","https://maven2.fabricmc.net","https://maven3.fabricmc.net"],mC=0;async function Ms(){return Ys(Ds,"/v2/versions/game")}async function Us(){return Ys(Ds,"/v2/versions/loader")}async function Uu(){return Ys(Ds,"/v2/versions/yarn")}async function ku(r){return Ys(Ds,"/v2/versions/yarn/"+r)}function BC(){return Ru("/net/fabricmc/fabric-api/fabric-api/maven-metadata.xml")}function Yu(){return Ru("/net/fabricmc/fabric-language-kotlin/maven-metadata.xml")}async function ks(r){let i=(await BC()).filter(a=>yC(a,r)).pop();if(!i)throw new Error(`Could not find a valid Fabric API version for Minecraft ${r}`);return i}function EC(r){return wC(r)[0]}function wC(r){return r.split("-")[0].split(".").map(i=>parseInt(i))}function yC(r,e){if(!e)return!1;if(e=="1.18")return r=="0.44.0+1.18";let i=e;if(["1.14","1.15","1.16","1.17","1.18","1.19","1.20","20w14infinite","1.18_experimental"].forEach(u=>{e.startsWith(u)&&(i=u)}),EC(e)>=26){let u=e.indexOf("-");var c=e.substring(0,u===-1?e.length:u);i=c}return e.endsWith("_unobfuscated")?i="1.21.11_unobfuscated":e.startsWith("25w14craftmine")?i="25w14craftmine":e.startsWith("22w13oneblockatatime")?i="22w13oneblockatatime":e.startsWith("25w")?i="1.21.11":e.startsWith("24w")?i="1.21.4":e.startsWith("23w")?i="1.20.5":e.startsWith("22w")?i="1.19.3":e.startsWith("1.18.2")?i="1.18.2":e.startsWith("1.19.1")?i="1.19.1":e.startsWith("1.19.2")?i="1.19.2":e.startsWith("1.19.3")?i="1.19.3":e.startsWith("1.19.4")?i="1.19.4":e.startsWith("1.20.1")?i="1.20.1":e.startsWith("1.20.2")?i="1.20.2":e.startsWith("1.20.3")?i="1.20.3":e.startsWith("1.20.4")?i="1.20.4":e.startsWith("1.20.5")?i="1.20.5":e.startsWith("1.20.6")?i="1.20.6":e.startsWith("1.21.6")?i="1.21.6":e.startsWith("1.21.7")?i="1.21.7":e.startsWith("1.21.8")?i="1.21.8":e.startsWith("1.21.9")?i="1.21.9":e.startsWith("1.21.10")?i="1.21.10":e.startsWith("1.21.11")?i="1.21.11":e.startsWith("1.21.5")?i="1.21.5":e.startsWith("1.21.4")?i="1.21.4":e.startsWith("1.21.3")?i="1.21.3":e.startsWith("1.21.2")?i="1.21.2":e.startsWith("1.21.1")?i="1.21.1":e.startsWith("1.21")?i="1.21":e.startsWith("21w")?i="1.18":e.startsWith("20w")?i="1.17":(e.startsWith("19w")||e.startsWith("18w"))&&(i="1.14"),r.endsWith("-"+i)||r.endsWith("+"+i)}var Ou=r=>{let i=new DOMParser().parseFromString(r,"text/xml");return Array.from(i.getElementsByTagName("version")).map(a=>a.childNodes[0].nodeValue)};function Nu(r){Ou=r}async function Ru(r){let e=await CC(gC,r);return Ou(e)}async function Ys(r,e){return await(await Gu(r,e)).json()}async function CC(r,e){return await(await Gu(r,e)).text()}async function Gu(r,e){let i;for(var a of[5e3,3e4])for(var A of r){let c=A+e;try{let u=await fetch(c,{signal:AbortSignal.timeout(a)});if(u.ok)return mC=r.indexOf(A),u;throw new Error(`HTTP ${u.status} ${u.statusText}`.trim())}catch(u){i??=u instanceof Error?u.message:String(u),console.error(u)}}throw new Error(`Failed to fetch: ${r[0]+e}. ${i}`)}var Ls=class extends Error{constructor(r){super(r),this.name="Eta Error"}},Hu=class extends Ls{constructor(r){super(r),this.name="EtaParser Error"}},bC=class extends Ls{constructor(r){super(r),this.name="EtaRuntime Error"}};var xC=class extends Ls{constructor(r){super(r),this.name="EtaNameResolution Error"}};function Qn(r,e,i){let a=e.slice(0,i).split(/\n/),A=a.length,c=a[A-1].length+1;throw r+=" at line "+A+" col "+c+`:
129
+ `),this.close()}_(e,i){return e.toLowerCase()==="y"?(this.value=!0,this.submit()):e.toLowerCase()==="n"?(this.value=!1,this.submit()):this.bell()}render(){this.closed||(this.firstRender?this.out.write(Xd.hide):this.out.write(Ev(this.outputText,this.out.columns)),super.render(),this.outputText=[Zd.symbol(this.done,this.aborted),_d.bold(this.msg),Zd.delimiter(this.done),this.done?this.value?this.yesMsg:this.noMsg:_d.gray(this.initialValue?this.yesOption:this.noOption)].join(" "),this.out.write(wv.line+Xd.to(0)+this.outputText))}};zd.exports=GA});var $d=oe((KM,Kd)=>{"use strict";Kd.exports={TextPrompt:zp(),SelectPrompt:ed(),TogglePrompt:nd(),DatePrompt:Sd(),NumberPrompt:kd(),MultiselectPrompt:kA(),AutocompletePrompt:Hd(),AutocompleteMultiselectPrompt:jd(),ConfirmPrompt:qd()}});var tg=oe(eg=>{"use strict";var Gt=eg,yv=$d(),Ao=r=>r;function xr(r,e,i={}){return new Promise((o,A)=>{let c=new yv[r](e),u=i.onAbort||Ao,f=i.onSubmit||Ao,p=i.onExit||Ao;c.on("state",e.onState||Ao),c.on("submit",g=>o(f(g))),c.on("exit",g=>o(p(g))),c.on("abort",g=>A(u(g)))})}Gt.text=r=>xr("TextPrompt",r);Gt.password=r=>(r.style="password",Gt.text(r));Gt.invisible=r=>(r.style="invisible",Gt.text(r));Gt.number=r=>xr("NumberPrompt",r);Gt.date=r=>xr("DatePrompt",r);Gt.confirm=r=>xr("ConfirmPrompt",r);Gt.list=r=>{let e=r.separator||",";return xr("TextPrompt",r,{onSubmit:i=>i.split(e).map(o=>o.trim())})};Gt.toggle=r=>xr("TogglePrompt",r);Gt.select=r=>xr("SelectPrompt",r);Gt.multiselect=r=>{r.choices=[].concat(r.choices||[]);let e=i=>i.filter(o=>o.selected).map(o=>o.value);return xr("MultiselectPrompt",r,{onAbort:e,onSubmit:e})};Gt.autocompleteMultiselect=r=>{r.choices=[].concat(r.choices||[]);let e=i=>i.filter(o=>o.selected).map(o=>o.value);return xr("AutocompleteMultiselectPrompt",r,{onAbort:e,onSubmit:e})};var Cv=(r,e)=>Promise.resolve(e.filter(i=>i.title.slice(0,r.length).toLowerCase()===r.toLowerCase()));Gt.autocomplete=r=>(r.suggest=r.suggest||Cv,r.choices=[].concat(r.choices||[]),xr("AutocompletePrompt",r))});var ng=oe((eU,ig)=>{"use strict";var LA=tg(),bv=["suggest","format","onState","validate","onRender","type"],rg=()=>{};async function ni(r=[],{onSubmit:e=rg,onCancel:i=rg}={}){let o={},A=ni._override||{};r=[].concat(r);let c,u,f,p,g,m,E=async(b,y,Q=!1)=>{if(!(!Q&&b.validate&&b.validate(y)!==!0))return b.format?await b.format(y,o):y};for(u of r)if({name:p,type:g}=u,typeof g=="function"&&(g=await g(c,{...o},u),u.type=g),!!g){for(let b in u){if(bv.includes(b))continue;let y=u[b];u[b]=typeof y=="function"?await y(c,{...o},m):y}if(m=u,typeof u.message!="string")throw new Error("prompt message is required");if({name:p,type:g}=u,LA[g]===void 0)throw new Error(`prompt type (${g}) is not defined`);if(A[u.name]!==void 0&&(c=await E(u,A[u.name]),c!==void 0)){o[p]=c;continue}try{c=ni._injected?xv(ni._injected,u.initial):await LA[g](u),o[p]=c=await E(u,c,!0),f=await e(u,c,o)}catch{f=!await i(u,o)}if(f)return o}return o}function xv(r,e){let i=r.shift();if(i instanceof Error)throw i;return i===void 0?e:i}function Qv(r){ni._injected=(ni._injected||[]).concat(r)}function vv(r){ni._override=Object.assign({},r)}ig.exports=Object.assign(ni,{prompt:ni,prompts:LA,inject:Qv,override:vv})});var og=oe((tU,sg)=>{function Iv(r){r=(Array.isArray(r)?r:r.split(".")).map(Number);let e=0,i=process.versions.node.split(".").map(Number);for(;e<r.length;e++){if(i[e]>r[e])return!1;if(r[e]>i[e])return!0}return!1}sg.exports=Iv("8.6.0")?Sp():ng()});var fl=oe((Zk,Jg)=>{"use strict";var AI=We("util"),Wg=We("stream"),cr=Jg.exports=function(){Wg.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};AI.inherits(cr,Wg);cr.prototype.read=function(r,e){this._reads.push({length:Math.abs(r),allowLess:r<0,func:e}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};cr.prototype.write=function(r,e){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let i;return Buffer.isBuffer(r)?i=r:i=Buffer.from(r,e||this._encoding),this._buffers.push(i),this._buffered+=i.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused};cr.prototype.end=function(r,e){r&&this.write(r,e),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};cr.prototype.destroySoon=cr.prototype.end;cr.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};cr.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};cr.prototype._processReadAllowingLess=function(r){this._reads.shift();let e=this._buffers[0];e.length>r.length?(this._buffered-=r.length,this._buffers[0]=e.slice(r.length),r.func.call(this,e.slice(0,r.length))):(this._buffered-=e.length,this._buffers.shift(),r.func.call(this,e))};cr.prototype._processRead=function(r){this._reads.shift();let e=0,i=0,o=Buffer.alloc(r.length);for(;e<r.length;){let A=this._buffers[i++],c=Math.min(A.length,r.length-e);A.copy(o,e,0,c),e+=c,c!==A.length&&(this._buffers[--i]=A.slice(c))}i>0&&this._buffers.splice(0,i),this._buffered-=r.length,r.func.call(this,o)};cr.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let r=this._reads[0];if(r.allowLess)this._processReadAllowingLess(r);else if(this._buffered>=r.length)this._processRead(r);else break}this._buffers&&!this.writable&&this._end()}catch(r){this.emit("error",r)}}});var dl=oe(pl=>{"use strict";var si=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];pl.getImagePasses=function(r,e){let i=[],o=r%8,A=e%8,c=(r-o)/8,u=(e-A)/8;for(let f=0;f<si.length;f++){let p=si[f],g=c*p.x.length,m=u*p.y.length;for(let E=0;E<p.x.length&&p.x[E]<o;E++)g++;for(let E=0;E<p.y.length&&p.y[E]<A;E++)m++;g>0&&m>0&&i.push({width:g,height:m,index:f})}return i};pl.getInterlaceIterator=function(r){return function(e,i,o){let A=e%si[o].x.length,c=(e-A)/si[o].x.length*8+si[o].x[A],u=i%si[o].y.length,f=(i-u)/si[o].y.length*8+si[o].y[u];return c*4+f*r*4}}});var gl=oe((zk,Vg)=>{"use strict";Vg.exports=function(e,i,o){let A=e+i-o,c=Math.abs(A-e),u=Math.abs(A-i),f=Math.abs(A-o);return c<=u&&c<=f?e:u<=f?i:o}});var ml=oe((qk,_g)=>{"use strict";var lI=dl(),cI=gl();function jg(r,e,i){let o=r*e;return i!==8&&(o=Math.ceil(o/(8/i))),o}var rn=_g.exports=function(r,e){let i=r.width,o=r.height,A=r.interlace,c=r.bpp,u=r.depth;if(this.read=e.read,this.write=e.write,this.complete=e.complete,this._imageIndex=0,this._images=[],A){let f=lI.getImagePasses(i,o);for(let p=0;p<f.length;p++)this._images.push({byteWidth:jg(f[p].width,c,u),height:f[p].height,lineIndex:0})}else this._images.push({byteWidth:jg(i,c,u),height:o,lineIndex:0});u===8?this._xComparison=c:u===16?this._xComparison=c*2:this._xComparison=1};rn.prototype.start=function(){this.read(this._images[this._imageIndex].byteWidth+1,this._reverseFilterLine.bind(this))};rn.prototype._unFilterType1=function(r,e,i){let o=this._xComparison,A=o-1;for(let c=0;c<i;c++){let u=r[1+c],f=c>A?e[c-o]:0;e[c]=u+f}};rn.prototype._unFilterType2=function(r,e,i){let o=this._lastLine;for(let A=0;A<i;A++){let c=r[1+A],u=o?o[A]:0;e[A]=c+u}};rn.prototype._unFilterType3=function(r,e,i){let o=this._xComparison,A=o-1,c=this._lastLine;for(let u=0;u<i;u++){let f=r[1+u],p=c?c[u]:0,g=u>A?e[u-o]:0,m=Math.floor((g+p)/2);e[u]=f+m}};rn.prototype._unFilterType4=function(r,e,i){let o=this._xComparison,A=o-1,c=this._lastLine;for(let u=0;u<i;u++){let f=r[1+u],p=c?c[u]:0,g=u>A?e[u-o]:0,m=u>A&&c?c[u-o]:0,E=cI(g,p,m);e[u]=f+E}};rn.prototype._reverseFilterLine=function(r){let e=r[0],i,o=this._images[this._imageIndex],A=o.byteWidth;if(e===0)i=r.slice(1,A+1);else switch(i=Buffer.alloc(A),e){case 1:this._unFilterType1(r,i,A);break;case 2:this._unFilterType2(r,i,A);break;case 3:this._unFilterType3(r,i,A);break;case 4:this._unFilterType4(r,i,A);break;default:throw new Error("Unrecognised filter type - "+e)}this.write(i),o.lineIndex++,o.lineIndex>=o.height?(this._lastLine=null,this._imageIndex++,o=this._images[this._imageIndex]):this._lastLine=i,o?this.read(o.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}});var zg=oe((Kk,Xg)=>{"use strict";var uI=We("util"),Zg=fl(),hI=ml(),fI=Xg.exports=function(r){Zg.call(this);let e=[],i=this;this._filter=new hI(r,{read:this.read.bind(this),write:function(o){e.push(o)},complete:function(){i.emit("complete",Buffer.concat(e))}}),this._filter.start()};uI.inherits(fI,Zg)});var nn=oe(($k,qg)=>{"use strict";qg.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var wl=oe((eY,Kg)=>{"use strict";var Bl=[];(function(){for(let r=0;r<256;r++){let e=r;for(let i=0;i<8;i++)e&1?e=3988292384^e>>>1:e=e>>>1;Bl[r]=e}})();var El=Kg.exports=function(){this._crc=-1};El.prototype.write=function(r){for(let e=0;e<r.length;e++)this._crc=Bl[(this._crc^r[e])&255]^this._crc>>>8;return!0};El.prototype.crc32=function(){return this._crc^-1};El.crc32=function(r){let e=-1;for(let i=0;i<r.length;i++)e=Bl[(e^r[i])&255]^e>>>8;return e^-1}});var yl=oe((tY,$g)=>{"use strict";var yt=nn(),pI=wl(),Ct=$g.exports=function(r,e){this._options=r,r.checkCRC=r.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[yt.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[yt.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[yt.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[yt.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[yt.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[yt.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.finished=e.finished,this.simpleTransparency=e.simpleTransparency,this.headersFinished=e.headersFinished||function(){}};Ct.prototype.start=function(){this.read(yt.PNG_SIGNATURE.length,this._parseSignature.bind(this))};Ct.prototype._parseSignature=function(r){let e=yt.PNG_SIGNATURE;for(let i=0;i<e.length;i++)if(r[i]!==e[i]){this.error(new Error("Invalid file signature"));return}this.read(8,this._parseChunkBegin.bind(this))};Ct.prototype._parseChunkBegin=function(r){let e=r.readUInt32BE(0),i=r.readUInt32BE(4),o="";for(let c=4;c<8;c++)o+=String.fromCharCode(r[c]);let A=!!(r[4]&32);if(!this._hasIHDR&&i!==yt.TYPE_IHDR){this.error(new Error("Expected IHDR on beggining"));return}if(this._crc=new pI,this._crc.write(Buffer.from(o)),this._chunks[i])return this._chunks[i](e);if(!A){this.error(new Error("Unsupported critical chunk type "+o));return}this.read(e+4,this._skipChunk.bind(this))};Ct.prototype._skipChunk=function(){this.read(8,this._parseChunkBegin.bind(this))};Ct.prototype._handleChunkEnd=function(){this.read(4,this._parseChunkEnd.bind(this))};Ct.prototype._parseChunkEnd=function(r){let e=r.readInt32BE(0),i=this._crc.crc32();if(this._options.checkCRC&&i!==e){this.error(new Error("Crc error - "+e+" - "+i));return}this._hasIEND||this.read(8,this._parseChunkBegin.bind(this))};Ct.prototype._handleIHDR=function(r){this.read(r,this._parseIHDR.bind(this))};Ct.prototype._parseIHDR=function(r){this._crc.write(r);let e=r.readUInt32BE(0),i=r.readUInt32BE(4),o=r[8],A=r[9],c=r[10],u=r[11],f=r[12];if(o!==8&&o!==4&&o!==2&&o!==1&&o!==16){this.error(new Error("Unsupported bit depth "+o));return}if(!(A in yt.COLORTYPE_TO_BPP_MAP)){this.error(new Error("Unsupported color type"));return}if(c!==0){this.error(new Error("Unsupported compression method"));return}if(u!==0){this.error(new Error("Unsupported filter method"));return}if(f!==0&&f!==1){this.error(new Error("Unsupported interlace method"));return}this._colorType=A;let p=yt.COLORTYPE_TO_BPP_MAP[this._colorType];this._hasIHDR=!0,this.metadata({width:e,height:i,depth:o,interlace:!!f,palette:!!(A&yt.COLORTYPE_PALETTE),color:!!(A&yt.COLORTYPE_COLOR),alpha:!!(A&yt.COLORTYPE_ALPHA),bpp:p,colorType:A}),this._handleChunkEnd()};Ct.prototype._handlePLTE=function(r){this.read(r,this._parsePLTE.bind(this))};Ct.prototype._parsePLTE=function(r){this._crc.write(r);let e=Math.floor(r.length/3);for(let i=0;i<e;i++)this._palette.push([r[i*3],r[i*3+1],r[i*3+2],255]);this.palette(this._palette),this._handleChunkEnd()};Ct.prototype._handleTRNS=function(r){this.simpleTransparency(),this.read(r,this._parseTRNS.bind(this))};Ct.prototype._parseTRNS=function(r){if(this._crc.write(r),this._colorType===yt.COLORTYPE_PALETTE_COLOR){if(this._palette.length===0){this.error(new Error("Transparency chunk must be after palette"));return}if(r.length>this._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let e=0;e<r.length;e++)this._palette[e][3]=r[e];this.palette(this._palette)}this._colorType===yt.COLORTYPE_GRAYSCALE&&this.transColor([r.readUInt16BE(0)]),this._colorType===yt.COLORTYPE_COLOR&&this.transColor([r.readUInt16BE(0),r.readUInt16BE(2),r.readUInt16BE(4)]),this._handleChunkEnd()};Ct.prototype._handleGAMA=function(r){this.read(r,this._parseGAMA.bind(this))};Ct.prototype._parseGAMA=function(r){this._crc.write(r),this.gamma(r.readUInt32BE(0)/yt.GAMMA_DIVISION),this._handleChunkEnd()};Ct.prototype._handleIDAT=function(r){this._emittedHeadersFinished||(this._emittedHeadersFinished=!0,this.headersFinished()),this.read(-r,this._parseIDAT.bind(this,r))};Ct.prototype._parseIDAT=function(r,e){if(this._crc.write(e),this._colorType===yt.COLORTYPE_PALETTE_COLOR&&this._palette.length===0)throw new Error("Expected palette not found");this.inflateData(e);let i=r-e.length;i>0?this._handleIDAT(i):this._handleChunkEnd()};Ct.prototype._handleIEND=function(r){this.read(r,this._parseIEND.bind(this))};Ct.prototype._parseIEND=function(r){this._crc.write(r),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var Cl=oe(tm=>{"use strict";var em=dl(),dI=[function(){},function(r,e,i,o){if(o===e.length)throw new Error("Ran out of data");let A=e[o];r[i]=A,r[i+1]=A,r[i+2]=A,r[i+3]=255},function(r,e,i,o){if(o+1>=e.length)throw new Error("Ran out of data");let A=e[o];r[i]=A,r[i+1]=A,r[i+2]=A,r[i+3]=e[o+1]},function(r,e,i,o){if(o+2>=e.length)throw new Error("Ran out of data");r[i]=e[o],r[i+1]=e[o+1],r[i+2]=e[o+2],r[i+3]=255},function(r,e,i,o){if(o+3>=e.length)throw new Error("Ran out of data");r[i]=e[o],r[i+1]=e[o+1],r[i+2]=e[o+2],r[i+3]=e[o+3]}],gI=[function(){},function(r,e,i,o){let A=e[0];r[i]=A,r[i+1]=A,r[i+2]=A,r[i+3]=o},function(r,e,i){let o=e[0];r[i]=o,r[i+1]=o,r[i+2]=o,r[i+3]=e[1]},function(r,e,i,o){r[i]=e[0],r[i+1]=e[1],r[i+2]=e[2],r[i+3]=o},function(r,e,i){r[i]=e[0],r[i+1]=e[1],r[i+2]=e[2],r[i+3]=e[3]}];function mI(r,e){let i=[],o=0;function A(){if(o===r.length)throw new Error("Ran out of data");let c=r[o];o++;let u,f,p,g,m,E,b,y;switch(e){default:throw new Error("unrecognised depth");case 16:b=r[o],o++,i.push((c<<8)+b);break;case 4:b=c&15,y=c>>4,i.push(y,b);break;case 2:m=c&3,E=c>>2&3,b=c>>4&3,y=c>>6&3,i.push(y,b,E,m);break;case 1:u=c&1,f=c>>1&1,p=c>>2&1,g=c>>3&1,m=c>>4&1,E=c>>5&1,b=c>>6&1,y=c>>7&1,i.push(y,b,E,m,g,p,f,u);break}}return{get:function(c){for(;i.length<c;)A();let u=i.slice(0,c);return i=i.slice(c),u},resetAfterLine:function(){i.length=0},end:function(){if(o!==r.length)throw new Error("extra data found")}}}function BI(r,e,i,o,A,c){let u=r.width,f=r.height,p=r.index;for(let g=0;g<f;g++)for(let m=0;m<u;m++){let E=i(m,g,p);dI[o](e,A,E,c),c+=o}return c}function EI(r,e,i,o,A,c){let u=r.width,f=r.height,p=r.index;for(let g=0;g<f;g++){for(let m=0;m<u;m++){let E=A.get(o),b=i(m,g,p);gI[o](e,E,b,c)}A.resetAfterLine()}}tm.dataToBitMap=function(r,e){let i=e.width,o=e.height,A=e.depth,c=e.bpp,u=e.interlace,f;A!==8&&(f=mI(r,A));let p;A<=8?p=Buffer.alloc(i*o*4):p=new Uint16Array(i*o*4);let g=Math.pow(2,A)-1,m=0,E,b;if(u)E=em.getImagePasses(i,o),b=em.getInterlaceIterator(i,o);else{let y=0;b=function(){let Q=y;return y+=4,Q},E=[{width:i,height:o}]}for(let y=0;y<E.length;y++)A===8?m=BI(E[y],p,b,c,r,m):EI(E[y],p,b,c,f,g);if(A===8){if(m!==r.length)throw new Error("extra data found")}else f.end();return p}});var bl=oe((iY,rm)=>{"use strict";function wI(r,e,i,o,A){let c=0;for(let u=0;u<o;u++)for(let f=0;f<i;f++){let p=A[r[c]];if(!p)throw new Error("index "+r[c]+" not in palette");for(let g=0;g<4;g++)e[c+g]=p[g];c+=4}}function yI(r,e,i,o,A){let c=0;for(let u=0;u<o;u++)for(let f=0;f<i;f++){let p=!1;if(A.length===1?A[0]===r[c]&&(p=!0):A[0]===r[c]&&A[1]===r[c+1]&&A[2]===r[c+2]&&(p=!0),p)for(let g=0;g<4;g++)e[c+g]=0;c+=4}}function CI(r,e,i,o,A){let c=255,u=Math.pow(2,A)-1,f=0;for(let p=0;p<o;p++)for(let g=0;g<i;g++){for(let m=0;m<4;m++)e[f+m]=Math.floor(r[f+m]*c/u+.5);f+=4}}rm.exports=function(r,e,i=!1){let o=e.depth,A=e.width,c=e.height,u=e.colorType,f=e.transColor,p=e.palette,g=r;return u===3?wI(r,g,A,c,p):(f&&yI(r,g,A,c,f),o!==8&&!i&&(o===16&&(g=Buffer.alloc(A*c*4)),CI(r,g,A,c,o))),g}});var sm=oe((nY,nm)=>{"use strict";var bI=We("util"),xl=We("zlib"),im=fl(),xI=zg(),QI=yl(),vI=Cl(),II=bl(),vr=nm.exports=function(r){im.call(this),this._parser=new QI(r,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=r,this.writable=!0,this._parser.start()};bI.inherits(vr,im);vr.prototype._handleError=function(r){this.emit("error",r),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0};vr.prototype._inflateData=function(r){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=xl.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let i=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,o=Math.max(i,xl.Z_MIN_CHUNK);this._inflate=xl.createInflate({chunkSize:o});let A=i,c=this.emit.bind(this,"error");this._inflate.on("error",function(f){A&&c(f)}),this._filter.on("complete",this._complete.bind(this));let u=this._filter.write.bind(this._filter);this._inflate.on("data",function(f){A&&(f.length>A&&(f=f.slice(0,A)),A-=f.length,u(f))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(r)};vr.prototype._handleMetaData=function(r){this._metaData=r,this._bitmapInfo=Object.create(r),this._filter=new xI(this._bitmapInfo)};vr.prototype._handleTransColor=function(r){this._bitmapInfo.transColor=r};vr.prototype._handlePalette=function(r){this._bitmapInfo.palette=r};vr.prototype._simpleTransparency=function(){this._metaData.alpha=!0};vr.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};vr.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};vr.prototype._complete=function(r){if(this.errord)return;let e;try{let i=vI.dataToBitMap(r,this._bitmapInfo);e=II(i,this._bitmapInfo,this._options.skipRescale),i=null}catch(i){this._handleError(i);return}this.emit("parsed",e)}});var am=oe((sY,om)=>{"use strict";var er=nn();om.exports=function(r,e,i,o){let A=[er.COLORTYPE_COLOR_ALPHA,er.COLORTYPE_ALPHA].indexOf(o.colorType)!==-1;if(o.colorType===o.inputColorType){let Q=(function(){let v=new ArrayBuffer(2);return new DataView(v).setInt16(0,256,!0),new Int16Array(v)[0]!==256})();if(o.bitDepth===8||o.bitDepth===16&&Q)return r}let c=o.bitDepth!==16?r:new Uint16Array(r.buffer),u=255,f=er.COLORTYPE_TO_BPP_MAP[o.inputColorType];f===4&&!o.inputHasAlpha&&(f=3);let p=er.COLORTYPE_TO_BPP_MAP[o.colorType];o.bitDepth===16&&(u=65535,p*=2);let g=Buffer.alloc(e*i*p),m=0,E=0,b=o.bgColor||{};b.red===void 0&&(b.red=u),b.green===void 0&&(b.green=u),b.blue===void 0&&(b.blue=u);function y(){let Q,v,I,F=u;switch(o.inputColorType){case er.COLORTYPE_COLOR_ALPHA:F=c[m+3],Q=c[m],v=c[m+1],I=c[m+2];break;case er.COLORTYPE_COLOR:Q=c[m],v=c[m+1],I=c[m+2];break;case er.COLORTYPE_ALPHA:F=c[m+1],Q=c[m],v=Q,I=Q;break;case er.COLORTYPE_GRAYSCALE:Q=c[m],v=Q,I=Q;break;default:throw new Error("input color type:"+o.inputColorType+" is not supported at present")}return o.inputHasAlpha&&(A||(F/=u,Q=Math.min(Math.max(Math.round((1-F)*b.red+F*Q),0),u),v=Math.min(Math.max(Math.round((1-F)*b.green+F*v),0),u),I=Math.min(Math.max(Math.round((1-F)*b.blue+F*I),0),u))),{red:Q,green:v,blue:I,alpha:F}}for(let Q=0;Q<i;Q++)for(let v=0;v<e;v++){let I=y(c,m);switch(o.colorType){case er.COLORTYPE_COLOR_ALPHA:case er.COLORTYPE_COLOR:o.bitDepth===8?(g[E]=I.red,g[E+1]=I.green,g[E+2]=I.blue,A&&(g[E+3]=I.alpha)):(g.writeUInt16BE(I.red,E),g.writeUInt16BE(I.green,E+2),g.writeUInt16BE(I.blue,E+4),A&&g.writeUInt16BE(I.alpha,E+6));break;case er.COLORTYPE_ALPHA:case er.COLORTYPE_GRAYSCALE:{let F=(I.red+I.green+I.blue)/3;o.bitDepth===8?(g[E]=F,A&&(g[E+1]=I.alpha)):(g.writeUInt16BE(F,E),A&&g.writeUInt16BE(I.alpha,E+2));break}default:throw new Error("unrecognised color Type "+o.colorType)}m+=f,E+=p}return g}});var cm=oe((oY,lm)=>{"use strict";var Am=gl();function FI(r,e,i,o,A){for(let c=0;c<i;c++)o[A+c]=r[e+c]}function TI(r,e,i){let o=0,A=e+i;for(let c=e;c<A;c++)o+=Math.abs(r[c]);return o}function SI(r,e,i,o,A,c){for(let u=0;u<i;u++){let f=u>=c?r[e+u-c]:0,p=r[e+u]-f;o[A+u]=p}}function DI(r,e,i,o){let A=0;for(let c=0;c<i;c++){let u=c>=o?r[e+c-o]:0,f=r[e+c]-u;A+=Math.abs(f)}return A}function MI(r,e,i,o,A){for(let c=0;c<i;c++){let u=e>0?r[e+c-i]:0,f=r[e+c]-u;o[A+c]=f}}function UI(r,e,i){let o=0,A=e+i;for(let c=e;c<A;c++){let u=e>0?r[c-i]:0,f=r[c]-u;o+=Math.abs(f)}return o}function kI(r,e,i,o,A,c){for(let u=0;u<i;u++){let f=u>=c?r[e+u-c]:0,p=e>0?r[e+u-i]:0,g=r[e+u]-(f+p>>1);o[A+u]=g}}function YI(r,e,i,o){let A=0;for(let c=0;c<i;c++){let u=c>=o?r[e+c-o]:0,f=e>0?r[e+c-i]:0,p=r[e+c]-(u+f>>1);A+=Math.abs(p)}return A}function OI(r,e,i,o,A,c){for(let u=0;u<i;u++){let f=u>=c?r[e+u-c]:0,p=e>0?r[e+u-i]:0,g=e>0&&u>=c?r[e+u-(i+c)]:0,m=r[e+u]-Am(f,p,g);o[A+u]=m}}function NI(r,e,i,o){let A=0;for(let c=0;c<i;c++){let u=c>=o?r[e+c-o]:0,f=e>0?r[e+c-i]:0,p=e>0&&c>=o?r[e+c-(i+o)]:0,g=r[e+c]-Am(u,f,p);A+=Math.abs(g)}return A}var RI={0:FI,1:SI,2:MI,3:kI,4:OI},GI={0:TI,1:DI,2:UI,3:YI,4:NI};lm.exports=function(r,e,i,o,A){let c;if(!("filterType"in o)||o.filterType===-1)c=[0,1,2,3,4];else if(typeof o.filterType=="number")c=[o.filterType];else throw new Error("unrecognised filter types");o.bitDepth===16&&(A*=2);let u=e*A,f=0,p=0,g=Buffer.alloc((u+1)*i),m=c[0];for(let E=0;E<i;E++){if(c.length>1){let b=1/0;for(let y=0;y<c.length;y++){let Q=GI[c[y]](r,p,u,A);Q<b&&(m=c[y],b=Q)}}g[f]=m,f++,RI[m](r,p,u,g,f,A),f+=u,p+=u}return g}});var Ql=oe((aY,um)=>{"use strict";var Ft=nn(),LI=wl(),PI=am(),HI=cm(),WI=We("zlib"),oi=um.exports=function(r){if(this._options=r,r.deflateChunkSize=r.deflateChunkSize||32*1024,r.deflateLevel=r.deflateLevel!=null?r.deflateLevel:9,r.deflateStrategy=r.deflateStrategy!=null?r.deflateStrategy:3,r.inputHasAlpha=r.inputHasAlpha!=null?r.inputHasAlpha:!0,r.deflateFactory=r.deflateFactory||WI.createDeflate,r.bitDepth=r.bitDepth||8,r.colorType=typeof r.colorType=="number"?r.colorType:Ft.COLORTYPE_COLOR_ALPHA,r.inputColorType=typeof r.inputColorType=="number"?r.inputColorType:Ft.COLORTYPE_COLOR_ALPHA,[Ft.COLORTYPE_GRAYSCALE,Ft.COLORTYPE_COLOR,Ft.COLORTYPE_COLOR_ALPHA,Ft.COLORTYPE_ALPHA].indexOf(r.colorType)===-1)throw new Error("option color type:"+r.colorType+" is not supported at present");if([Ft.COLORTYPE_GRAYSCALE,Ft.COLORTYPE_COLOR,Ft.COLORTYPE_COLOR_ALPHA,Ft.COLORTYPE_ALPHA].indexOf(r.inputColorType)===-1)throw new Error("option input color type:"+r.inputColorType+" is not supported at present");if(r.bitDepth!==8&&r.bitDepth!==16)throw new Error("option bit depth:"+r.bitDepth+" is not supported at present")};oi.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};oi.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};oi.prototype.filterData=function(r,e,i){let o=PI(r,e,i,this._options),A=Ft.COLORTYPE_TO_BPP_MAP[this._options.colorType];return HI(o,e,i,this._options,A)};oi.prototype._packChunk=function(r,e){let i=e?e.length:0,o=Buffer.alloc(i+12);return o.writeUInt32BE(i,0),o.writeUInt32BE(r,4),e&&e.copy(o,8),o.writeInt32BE(LI.crc32(o.slice(4,o.length-4)),o.length-4),o};oi.prototype.packGAMA=function(r){let e=Buffer.alloc(4);return e.writeUInt32BE(Math.floor(r*Ft.GAMMA_DIVISION),0),this._packChunk(Ft.TYPE_gAMA,e)};oi.prototype.packIHDR=function(r,e){let i=Buffer.alloc(13);return i.writeUInt32BE(r,0),i.writeUInt32BE(e,4),i[8]=this._options.bitDepth,i[9]=this._options.colorType,i[10]=0,i[11]=0,i[12]=0,this._packChunk(Ft.TYPE_IHDR,i)};oi.prototype.packIDAT=function(r){return this._packChunk(Ft.TYPE_IDAT,r)};oi.prototype.packIEND=function(){return this._packChunk(Ft.TYPE_IEND,null)}});var dm=oe((AY,pm)=>{"use strict";var JI=We("util"),hm=We("stream"),VI=nn(),jI=Ql(),fm=pm.exports=function(r){hm.call(this);let e=r||{};this._packer=new jI(e),this._deflate=this._packer.createDeflate(),this.readable=!0};JI.inherits(fm,hm);fm.prototype.pack=function(r,e,i,o){this.emit("data",Buffer.from(VI.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,i)),o&&this.emit("data",this._packer.packGAMA(o));let A=this._packer.filterData(r,e,i);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(c){this.emit("data",this._packer.packIDAT(c))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(A)}});var ym=oe((qn,wm)=>{"use strict";var gm=We("assert").ok,sn=We("zlib"),_I=We("util"),mm=We("buffer").kMaxLength;function vi(r){if(!(this instanceof vi))return new vi(r);r&&r.chunkSize<sn.Z_MIN_CHUNK&&(r.chunkSize=sn.Z_MIN_CHUNK),sn.Inflate.call(this,r),this._offset=this._offset===void 0?this._outOffset:this._offset,this._buffer=this._buffer||this._outBuffer,r&&r.maxLength!=null&&(this._maxLength=r.maxLength)}function ZI(r){return new vi(r)}function Bm(r,e){e&&process.nextTick(e),r._handle&&(r._handle.close(),r._handle=null)}vi.prototype._processChunk=function(r,e,i){if(typeof i=="function")return sn.Inflate._processChunk.call(this,r,e,i);let o=this,A=r&&r.length,c=this._chunkSize-this._offset,u=this._maxLength,f=0,p=[],g=0,m;this.on("error",function(Q){m=Q});function E(Q,v){if(o._hadError)return;let I=c-v;if(gm(I>=0,"have should not go down"),I>0){let F=o._buffer.slice(o._offset,o._offset+I);if(o._offset+=I,F.length>u&&(F=F.slice(0,u)),p.push(F),g+=F.length,u-=F.length,u===0)return!1}return(v===0||o._offset>=o._chunkSize)&&(c=o._chunkSize,o._offset=0,o._buffer=Buffer.allocUnsafe(o._chunkSize)),v===0?(f+=A-Q,A=Q,!0):!1}gm(this._handle,"zlib binding closed");let b;do b=this._handle.writeSync(e,r,f,A,this._buffer,this._offset,c),b=b||this._writeState;while(!this._hadError&&E(b[0],b[1]));if(this._hadError)throw m;if(g>=mm)throw Bm(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+mm.toString(16)+" bytes");let y=Buffer.concat(p,g);return Bm(this),y};_I.inherits(vi,sn.Inflate);function XI(r,e){if(typeof e=="string"&&(e=Buffer.from(e)),!(e instanceof Buffer))throw new TypeError("Not a string or buffer");let i=r._finishFlushFlag;return i==null&&(i=sn.Z_FINISH),r._processChunk(e,i)}function Em(r,e){return XI(new vi(e),r)}wm.exports=qn=Em;qn.Inflate=vi;qn.createInflate=ZI;qn.inflateSync=Em});var vl=oe((lY,bm)=>{"use strict";var Cm=bm.exports=function(r){this._buffer=r,this._reads=[]};Cm.prototype.read=function(r,e){this._reads.push({length:Math.abs(r),allowLess:r<0,func:e})};Cm.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let r=this._reads[0];if(this._buffer.length&&(this._buffer.length>=r.length||r.allowLess)){this._reads.shift();let e=this._buffer;this._buffer=e.slice(r.length),r.func.call(this,e.slice(0,r.length))}else break}if(this._reads.length>0)throw new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw new Error("unrecognised content at end of stream")}});var Qm=oe(xm=>{"use strict";var zI=vl(),qI=ml();xm.process=function(r,e){let i=[],o=new zI(r);return new qI(e,{read:o.read.bind(o),write:function(c){i.push(c)},complete:function(){}}).start(),o.process(),Buffer.concat(i)}});var Tm=oe((uY,Fm)=>{"use strict";var vm=!0,Im=We("zlib"),KI=ym();Im.deflateSync||(vm=!1);var $I=vl(),eF=Qm(),tF=yl(),rF=Cl(),iF=bl();Fm.exports=function(r,e){if(!vm)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let i;function o(M){i=M}let A;function c(M){A=M}function u(M){A.transColor=M}function f(M){A.palette=M}function p(){A.alpha=!0}let g;function m(M){g=M}let E=[];function b(M){E.push(M)}let y=new $I(r);if(new tF(e,{read:y.read.bind(y),error:o,metadata:c,gamma:m,palette:f,transColor:u,inflateData:b,simpleTransparency:p}).start(),y.process(),i)throw i;let v=Buffer.concat(E);E.length=0;let I;if(A.interlace)I=Im.inflateSync(v);else{let O=((A.width*A.bpp*A.depth+7>>3)+1)*A.height;I=KI(v,{chunkSize:O,maxLength:O})}if(v=null,!I||!I.length)throw new Error("bad png - invalid inflate data response");let F=eF.process(I,A);v=null;let k=rF.dataToBitMap(F,A);F=null;let _=iF(k,A,e.skipRescale);return A.data=_,A.gamma=g||0,A}});var Um=oe((hY,Mm)=>{"use strict";var Sm=!0,Dm=We("zlib");Dm.deflateSync||(Sm=!1);var nF=nn(),sF=Ql();Mm.exports=function(r,e){if(!Sm)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let i=e||{},o=new sF(i),A=[];A.push(Buffer.from(nF.PNG_SIGNATURE)),A.push(o.packIHDR(r.width,r.height)),r.gamma&&A.push(o.packGAMA(r.gamma));let c=o.filterData(r.data,r.width,r.height),u=Dm.deflateSync(c,o.getDeflateOptions());if(c=null,!u||!u.length)throw new Error("bad png - invalid compressed data response");return A.push(o.packIDAT(u)),A.push(o.packIEND()),Buffer.concat(A)}});var km=oe(Il=>{"use strict";var oF=Tm(),aF=Um();Il.read=function(r,e){return oF(r,e||{})};Il.write=function(r,e){return aF(r,e)}});var Nm=oe(Om=>{"use strict";var AF=We("util"),Ym=We("stream"),lF=sm(),cF=dm(),uF=km(),Ot=Om.PNG=function(r){Ym.call(this),r=r||{},this.width=r.width|0,this.height=r.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,r.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new lF(r),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new cF(r),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};AF.inherits(Ot,Ym);Ot.sync=uF;Ot.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};Ot.prototype.parse=function(r,e){if(e){let i,o;i=function(A){this.removeListener("error",o),this.data=A,e(null,this)}.bind(this),o=function(A){this.removeListener("parsed",i),e(A,null)}.bind(this),this.once("parsed",i),this.once("error",o)}return this.end(r),this};Ot.prototype.write=function(r){return this._parser.write(r),!0};Ot.prototype.end=function(r){this._parser.end(r)};Ot.prototype._metadata=function(r){this.width=r.width,this.height=r.height,this.emit("metadata",r)};Ot.prototype._gamma=function(r){this.gamma=r};Ot.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};Ot.bitblt=function(r,e,i,o,A,c,u,f){if(i|=0,o|=0,A|=0,c|=0,u|=0,f|=0,i>r.width||o>r.height||i+A>r.width||o+c>r.height)throw new Error("bitblt reading outside image");if(u>e.width||f>e.height||u+A>e.width||f+c>e.height)throw new Error("bitblt writing outside image");for(let p=0;p<c;p++)r.data.copy(e.data,(f+p)*e.width+u<<2,(o+p)*r.width+i<<2,(o+p)*r.width+i+A<<2)};Ot.prototype.bitblt=function(r,e,i,o,A,c,u){return Ot.bitblt(this,r,e,i,o,A,c,u),this};Ot.adjustGamma=function(r){if(r.gamma){for(let e=0;e<r.height;e++)for(let i=0;i<r.width;i++){let o=r.width*e+i<<2;for(let A=0;A<3;A++){let c=r.data[o+A]/255;c=Math.pow(c,1/2.2/r.gamma),r.data[o+A]=Math.round(c*255)}}r.gamma=0}};Ot.prototype.adjustGamma=function(){Ot.adjustGamma(this)}});var C0=oe((dY,y0)=>{var hF=Object.create,bo=Object.defineProperty,fF=Object.getOwnPropertyDescriptor,pF=Object.getOwnPropertyNames,dF=Object.getPrototypeOf,gF=Object.prototype.hasOwnProperty,Ge=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),mF=(r,e)=>{for(var i in e)bo(r,i,{get:e[i],enumerable:!0})},Wm=(r,e,i,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let A of pF(e))!gF.call(r,A)&&A!==i&&bo(r,A,{get:()=>e[A],enumerable:!(o=fF(e,A))||o.enumerable});return r},Ol=(r,e,i)=>(i=r!=null?hF(dF(r)):{},Wm(e||!r||!r.__esModule?bo(i,"default",{value:r,enumerable:!0}):i,r)),BF=r=>Wm(bo({},"__esModule",{value:!0}),r),xo=Ge(r=>{"use strict";var e=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","266 ff","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],i=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls"],o=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],A=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function c(m){this.font=m}c.prototype.charToGlyphIndex=function(m){var E=m.charCodeAt(0),b=this.font.glyphs;if(b){for(var y=0;y<b.length;y+=1)for(var Q=b.get(y),v=0;v<Q.unicodes.length;v+=1)if(Q.unicodes[v]===E)return y}else return null};function u(m){this.cmap=m}u.prototype.charToGlyphIndex=function(m){return this.cmap.glyphIndexMap[m.charCodeAt(0)]||0};function f(m,E){this.encoding=m,this.charset=E}f.prototype.charToGlyphIndex=function(m){var E=m.charCodeAt(0),b=this.encoding[E];return this.charset.indexOf(b)};function p(m){var E;switch(m.version){case 1:this.names=r.standardNames.slice();break;case 2:for(this.names=new Array(m.numberOfGlyphs),E=0;E<m.numberOfGlyphs;E++)m.glyphNameIndex[E]<r.standardNames.length?this.names[E]=r.standardNames[m.glyphNameIndex[E]]:this.names[E]=m.names[m.glyphNameIndex[E]-r.standardNames.length];break;case 2.5:for(this.names=new Array(m.numberOfGlyphs),E=0;E<m.numberOfGlyphs;E++)this.names[E]=r.standardNames[E+m.glyphNameIndex[E]];break;case 3:this.names=[];break}}p.prototype.nameToGlyphIndex=function(m){return this.names.indexOf(m)},p.prototype.glyphIndexToName=function(m){return this.names[m]};function g(m){for(var E,b=m.tables.cmap.glyphIndexMap,y=Object.keys(b),Q=0;Q<y.length;Q+=1){var v=y[Q],I=b[v];E=m.glyphs.get(I),E.addUnicode(parseInt(v))}for(Q=0;Q<m.glyphs.length;Q+=1)E=m.glyphs.get(Q),m.cffEncoding?E.name=m.cffEncoding.charset[Q]:E.name=m.glyphNames.glyphIndexToName(Q)}r.cffStandardStrings=e,r.cffStandardEncoding=i,r.cffExpertEncoding=o,r.standardNames=A,r.DefaultEncoding=c,r.CmapEncoding=u,r.CffEncoding=f,r.GlyphNames=p,r.addGlyphNames=g}),$n=Ge(r=>{"use strict";function e(){this.commands=[],this.fill="black",this.stroke=null,this.strokeWidth=1}e.prototype.moveTo=function(i,o){this.commands.push({type:"M",x:i,y:o})},e.prototype.lineTo=function(i,o){this.commands.push({type:"L",x:i,y:o})},e.prototype.curveTo=e.prototype.bezierCurveTo=function(i,o,A,c,u,f){this.commands.push({type:"C",x1:i,y1:o,x2:A,y2:c,x:u,y:f})},e.prototype.quadTo=e.prototype.quadraticCurveTo=function(i,o,A,c){this.commands.push({type:"Q",x1:i,y1:o,x:A,y:c})},e.prototype.close=e.prototype.closePath=function(){this.commands.push({type:"Z"})},e.prototype.extend=function(i){i.commands&&(i=i.commands),Array.prototype.push.apply(this.commands,i)},e.prototype.draw=function(i){i.beginPath();for(var o=0;o<this.commands.length;o+=1){var A=this.commands[o];A.type==="M"?i.moveTo(A.x,A.y):A.type==="L"?i.lineTo(A.x,A.y):A.type==="C"?i.bezierCurveTo(A.x1,A.y1,A.x2,A.y2,A.x,A.y):A.type==="Q"?i.quadraticCurveTo(A.x1,A.y1,A.x,A.y):A.type==="Z"&&i.closePath()}this.fill&&(i.fillStyle=this.fill,i.fill()),this.stroke&&(i.strokeStyle=this.stroke,i.lineWidth=this.strokeWidth,i.stroke())},e.prototype.toPathData=function(i){i=i!==void 0?i:2;function o(p){return Math.round(p)===p?""+Math.round(p):p.toFixed(i)}function A(){for(var p="",g=0;g<arguments.length;g+=1){var m=arguments[g];m>=0&&g>0&&(p+=" "),p+=o(m)}return p}for(var c="",u=0;u<this.commands.length;u+=1){var f=this.commands[u];f.type==="M"?c+="M"+A(f.x,f.y):f.type==="L"?c+="L"+A(f.x,f.y):f.type==="C"?c+="C"+A(f.x1,f.y1,f.x2,f.y2,f.x,f.y):f.type==="Q"?c+="Q"+A(f.x1,f.y1,f.x,f.y):f.type==="Z"&&(c+="Z")}return c},e.prototype.toSVG=function(i){var o='<path d="';return o+=this.toPathData(i),o+='"',this.fill&this.fill!=="black"&&(this.fill===null?o+=' fill="none"':o+=' fill="'+this.fill+'"'),this.stroke&&(o+=' stroke="'+this.stroke+'" stroke-width="'+this.strokeWidth+'"'),o+="/>",o},r.Path=e}),ur=Ge(r=>{"use strict";r.argument=function(e,i){if(!e)throw new Error(i)},r.assert=r.argument}),Dl=Ge(r=>{"use strict";var e=ur(),i=32768,o=2147483648,A={},c={},u={};function f(y){return function(){return y}}c.BYTE=function(y){return e.argument(y>=0&&y<=255,"Byte value should be between 0 and 255."),[y]},u.BYTE=f(1),c.CHAR=function(y){return[y.charCodeAt(0)]},u.CHAR=f(1),c.CHARARRAY=function(y){for(var Q=[],v=0;v<y.length;v+=1)Q.push(y.charCodeAt(v));return Q},u.CHARARRAY=function(y){return y.length},c.USHORT=function(y){return[y>>8&255,y&255]},u.USHORT=f(2),c.SHORT=function(y){return y>=i&&(y=-(2*i-y)),[y>>8&255,y&255]},u.SHORT=f(2),c.UINT24=function(y){return[y>>16&255,y>>8&255,y&255]},u.UINT24=f(3),c.ULONG=function(y){return[y>>24&255,y>>16&255,y>>8&255,y&255]},u.ULONG=f(4),c.LONG=function(y){return y>=o&&(y=-(2*o-y)),[y>>24&255,y>>16&255,y>>8&255,y&255]},u.LONG=f(4),c.FIXED=c.ULONG,u.FIXED=u.ULONG,c.FWORD=c.SHORT,u.FWORD=u.SHORT,c.UFWORD=c.USHORT,u.UFWORD=u.USHORT,c.LONGDATETIME=function(){return[0,0,0,0,0,0,0,0]},u.LONGDATETIME=f(8),c.TAG=function(y){return e.argument(y.length===4,"Tag should be exactly 4 ASCII characters."),[y.charCodeAt(0),y.charCodeAt(1),y.charCodeAt(2),y.charCodeAt(3)]},u.TAG=f(4),c.Card8=c.BYTE,u.Card8=u.BYTE,c.Card16=c.USHORT,u.Card16=u.USHORT,c.OffSize=c.BYTE,u.OffSize=u.BYTE,c.SID=c.USHORT,u.SID=u.USHORT,c.NUMBER=function(y){return y>=-107&&y<=107?[y+139]:y>=108&&y<=1131?(y=y-108,[(y>>8)+247,y&255]):y>=-1131&&y<=-108?(y=-y-108,[(y>>8)+251,y&255]):y>=-32768&&y<=32767?c.NUMBER16(y):c.NUMBER32(y)},u.NUMBER=function(y){return c.NUMBER(y).length},c.NUMBER16=function(y){return[28,y>>8&255,y&255]},u.NUMBER16=f(3),c.NUMBER32=function(y){return[29,y>>24&255,y>>16&255,y>>8&255,y&255]},u.NUMBER32=f(5),c.REAL=function(y){var Q=y.toString(),v=/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/.exec(Q);if(v){var I=parseFloat("1e"+((v[2]?+v[2]:0)+v[1].length));Q=(Math.round(y*I)/I).toString()}var F="",k,_;for(k=0,_=Q.length;k<_;k+=1){var M=Q[k];M==="e"?F+=Q[++k]==="-"?"c":"b":M==="."?F+="a":M==="-"?F+="e":F+=M}F+=F.length&1?"f":"ff";var O=[30];for(k=0,_=F.length;k<_;k+=2)O.push(parseInt(F.substr(k,2),16));return O},u.REAL=function(y){return c.REAL(y).length},c.NAME=c.CHARARRAY,u.NAME=u.CHARARRAY,c.STRING=c.CHARARRAY,u.STRING=u.CHARARRAY,A.UTF16=function(y,Q,v){for(var I=[],F=v/2,k=0;k<F;k++,Q+=2)I[k]=y.getUint16(Q);return String.fromCharCode.apply(null,I)},c.UTF16=function(y){for(var Q=[],v=0;v<y.length;v+=1){var I=y.charCodeAt(v);Q.push(I>>8&255),Q.push(I&255)}return Q},u.UTF16=function(y){return y.length*2};var p={"x-mac-croatian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u03A9\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uF8FF\xA9\u2044\u20AC\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7","x-mac-cyrillic":"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E","x-mac-gaelic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u1E02\xB1\u2264\u2265\u1E03\u010A\u010B\u1E0A\u1E0B\u1E1E\u1E1F\u0120\u0121\u1E40\xE6\xF8\u1E41\u1E56\u1E57\u027C\u0192\u017F\u1E60\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\u1E61\u1E9B\xFF\u0178\u1E6A\u20AC\u2039\u203A\u0176\u0177\u1E6B\xB7\u1EF2\u1EF3\u204A\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u2663\xD2\xDA\xDB\xD9\u0131\xDD\xFD\u0174\u0175\u1E84\u1E85\u1E80\u1E81\u1E82\u1E83","x-mac-greek":"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\u20AC\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\xB7\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\xAD","x-mac-icelandic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-inuit":"\u1403\u1404\u1405\u1406\u140A\u140B\u1431\u1432\u1433\u1434\u1438\u1439\u1449\u144E\u144F\u1450\u1451\u1455\u1456\u1466\u146D\u146E\u146F\u1470\u1472\u1473\u1483\u148B\u148C\u148D\u148E\u1490\u1491\xB0\u14A1\u14A5\u14A6\u2022\xB6\u14A7\xAE\xA9\u2122\u14A8\u14AA\u14AB\u14BB\u14C2\u14C3\u14C4\u14C5\u14C7\u14C8\u14D0\u14EF\u14F0\u14F1\u14F2\u14F4\u14F5\u1505\u14D5\u14D6\u14D7\u14D8\u14DA\u14DB\u14EA\u1528\u1529\u152A\u152B\u152D\u2026\xA0\u152E\u153E\u1555\u1556\u1557\u2013\u2014\u201C\u201D\u2018\u2019\u1558\u1559\u155A\u155D\u1546\u1547\u1548\u1549\u154B\u154C\u1550\u157F\u1580\u1581\u1582\u1583\u1584\u1585\u158F\u1590\u1591\u1592\u1593\u1594\u1595\u1671\u1672\u1673\u1674\u1675\u1676\u1596\u15A0\u15A1\u15A2\u15A3\u15A4\u15A5\u15A6\u157C\u0141\u0142","x-mac-ce":"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7",macintosh:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-romanian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u0218\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\u0103\u0219\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\u2039\u203A\u021A\u021B\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-turkish":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\uF8A0\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"};A.MACSTRING=function(y,Q,v,I){var F=p[I];if(F!==void 0){for(var k="",_=0;_<v;_++){var M=y.getUint8(Q+_);M<=127?k+=String.fromCharCode(M):k+=F[M&127]}return k}};var g=typeof WeakMap=="function"&&new WeakMap,m,E=function(y){if(!m){m={};for(var Q in p)m[Q]=new String(Q)}var v=m[y];if(v!==void 0){if(g){var I=g.get(v);if(I!==void 0)return I}var F=p[y];if(F!==void 0){for(var k={},_=0;_<F.length;_++)k[F.charCodeAt(_)]=_+128;return g&&g.set(v,k),k}}};c.MACSTRING=function(y,Q){var v=E(Q);if(v!==void 0){for(var I=[],F=0;F<y.length;F++){var k=y.charCodeAt(F);if(k>=128&&(k=v[k],k===void 0))return;I.push(k)}return I}},u.MACSTRING=function(y,Q){var v=c.MACSTRING(y,Q);return v!==void 0?v.length:0},c.INDEX=function(y){var Q,v=1,I=[v],F=[],k=0;for(Q=0;Q<y.length;Q+=1){var _=c.OBJECT(y[Q]);Array.prototype.push.apply(F,_),k+=_.length,v+=_.length,I.push(v)}if(F.length===0)return[0,0];var M=[],O=1+Math.floor(Math.log(k)/Math.log(2))/8|0,P=[void 0,c.BYTE,c.USHORT,c.UINT24,c.ULONG][O];for(Q=0;Q<I.length;Q+=1){var R=P(I[Q]);Array.prototype.push.apply(M,R)}return Array.prototype.concat(c.Card16(y.length),c.OffSize(O),M,F)},u.INDEX=function(y){return c.INDEX(y).length},c.DICT=function(y){for(var Q=[],v=Object.keys(y),I=v.length,F=0;F<I;F+=1){var k=parseInt(v[F],0),_=y[k];Q=Q.concat(c.OPERAND(_.value,_.type)),Q=Q.concat(c.OPERATOR(k))}return Q},u.DICT=function(y){return c.DICT(y).length},c.OPERATOR=function(y){return y<1200?[y]:[12,y-1200]},c.OPERAND=function(y,Q){var v=[];if(Array.isArray(Q))for(var I=0;I<Q.length;I+=1)e.argument(y.length===Q.length,"Not enough arguments given for type"+Q),v=v.concat(c.OPERAND(y[I],Q[I]));else if(Q==="SID")v=v.concat(c.NUMBER(y));else if(Q==="offset")v=v.concat(c.NUMBER32(y));else if(Q==="number")v=v.concat(c.NUMBER(y));else if(Q==="real")v=v.concat(c.REAL(y));else throw new Error("Unknown operand type "+Q);return v},c.OP=c.BYTE,u.OP=u.BYTE;var b=typeof WeakMap=="function"&&new WeakMap;c.CHARSTRING=function(y){if(b){var Q=b.get(y);if(Q!==void 0)return Q}for(var v=[],I=y.length,F=0;F<I;F+=1){var k=y[F];v=v.concat(c[k.type](k.value))}return b&&b.set(y,v),v},u.CHARSTRING=function(y){return c.CHARSTRING(y).length},c.OBJECT=function(y){var Q=c[y.type];return e.argument(Q!==void 0,"No encoding function for type "+y.type),Q(y.value)},u.OBJECT=function(y){var Q=u[y.type];return e.argument(Q!==void 0,"No sizeOf function for type "+y.type),Q(y.value)},c.TABLE=function(y){for(var Q=[],v=y.fields.length,I=0;I<v;I+=1){var F=y.fields[I],k=c[F.type];e.argument(k!==void 0,"No encoding function for field type "+F.type);var _=y[F.name];_===void 0&&(_=F.value);var M=k(_);Q=Q.concat(M)}return Q},u.TABLE=function(y){for(var Q=0,v=y.fields.length,I=0;I<v;I+=1){var F=y.fields[I],k=u[F.type];e.argument(k!==void 0,"No sizeOf function for field type "+F.type);var _=y[F.name];_===void 0&&(_=F.value),Q+=k(_)}return Q},c.LITERAL=function(y){return y},u.LITERAL=function(y){return y.length},r.decode=A,r.encode=c,r.sizeOf=u}),tr=Ge(r=>{"use strict";var e=ur(),i=Dl().encode,o=Dl().sizeOf;function A(c,u,f){var p;for(p=0;p<u.length;p+=1){var g=u[p];this[g.name]=g.value}if(this.tableName=c,this.fields=u,f){var m=Object.keys(f);for(p=0;p<m.length;p+=1){var E=m[p],b=f[E];this[E]!==void 0&&(this[E]=b)}}}A.prototype.sizeOf=function(){for(var c=0,u=0;u<this.fields.length;u+=1){var f=this.fields[u],p=this[f.name];if(p===void 0&&(p=f.value),typeof p.sizeOf=="function")c+=p.sizeOf();else{var g=o[f.type];e.assert(typeof g=="function","Could not find sizeOf function for field"+f.name),c+=g(p)}}return c},A.prototype.encode=function(){return i.TABLE(this)},r.Table=A}),Tt=Ge(r=>{"use strict";r.getByte=function(o,A){return o.getUint8(A)},r.getCard8=r.getByte,r.getUShort=function(o,A){return o.getUint16(A,!1)},r.getCard16=r.getUShort,r.getShort=function(o,A){return o.getInt16(A,!1)},r.getULong=function(o,A){return o.getUint32(A,!1)},r.getFixed=function(o,A){var c=o.getInt16(A,!1),u=o.getUint16(A+2,!1);return c+u/65535},r.getTag=function(o,A){for(var c="",u=A;u<A+4;u+=1)c+=String.fromCharCode(o.getInt8(u));return c},r.getOffset=function(o,A,c){for(var u=0,f=0;f<c;f+=1)u<<=8,u+=o.getUint8(A+f);return u},r.getBytes=function(o,A,c){for(var u=[],f=A;f<c;f+=1)u.push(o.getUint8(f));return u},r.bytesToString=function(o){for(var A="",c=0;c<o.length;c+=1)A+=String.fromCharCode(o[c]);return A};var e={byte:1,uShort:2,short:2,uLong:4,fixed:4,longDateTime:8,tag:4};function i(o,A){this.data=o,this.offset=A,this.relativeOffset=0}i.prototype.parseByte=function(){var o=this.data.getUint8(this.offset+this.relativeOffset);return this.relativeOffset+=1,o},i.prototype.parseChar=function(){var o=this.data.getInt8(this.offset+this.relativeOffset);return this.relativeOffset+=1,o},i.prototype.parseCard8=i.prototype.parseByte,i.prototype.parseUShort=function(){var o=this.data.getUint16(this.offset+this.relativeOffset);return this.relativeOffset+=2,o},i.prototype.parseCard16=i.prototype.parseUShort,i.prototype.parseSID=i.prototype.parseUShort,i.prototype.parseOffset16=i.prototype.parseUShort,i.prototype.parseShort=function(){var o=this.data.getInt16(this.offset+this.relativeOffset);return this.relativeOffset+=2,o},i.prototype.parseF2Dot14=function(){var o=this.data.getInt16(this.offset+this.relativeOffset)/16384;return this.relativeOffset+=2,o},i.prototype.parseULong=function(){var o=r.getULong(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,o},i.prototype.parseFixed=function(){var o=r.getFixed(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,o},i.prototype.parseOffset16List=i.prototype.parseUShortList=function(o){for(var A=new Array(o),c=this.data,u=this.offset+this.relativeOffset,f=0;f<o;f++)A[f]=r.getUShort(c,u),u+=2;return this.relativeOffset+=o*2,A},i.prototype.parseString=function(o){var A=this.data,c=this.offset+this.relativeOffset,u="";this.relativeOffset+=o;for(var f=0;f<o;f++)u+=String.fromCharCode(A.getUint8(c+f));return u},i.prototype.parseTag=function(){return this.parseString(4)},i.prototype.parseLongDateTime=function(){var o=r.getULong(this.data,this.offset+this.relativeOffset+4);return this.relativeOffset+=8,o},i.prototype.parseFixed=function(){var o=r.getULong(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,o/65536},i.prototype.parseVersion=function(){var o=r.getUShort(this.data,this.offset+this.relativeOffset),A=r.getUShort(this.data,this.offset+this.relativeOffset+2);return this.relativeOffset+=4,o+A/4096/10},i.prototype.skip=function(o,A){A===void 0&&(A=1),this.relativeOffset+=e[o]*A},r.Parser=i}),Jm=Ge(r=>{"use strict";var e=ur(),i=Tt(),o=tr();function A(p,g){var m,E={};E.version=i.getUShort(p,g),e.argument(E.version===0,"cmap table version should be 0."),E.numTables=i.getUShort(p,g+2);var b=-1;for(m=0;m<E.numTables;m+=1){var y=i.getUShort(p,g+4+m*8),Q=i.getUShort(p,g+4+m*8+2);if(y===3&&(Q===1||Q===0)){b=i.getULong(p,g+4+m*8+4);break}}if(b===-1)return null;var v=new i.Parser(p,g+b);E.format=v.parseUShort(),e.argument(E.format===4,"Only format 4 cmap tables are supported."),E.length=v.parseUShort(),E.language=v.parseUShort();var I;E.segCount=I=v.parseUShort()>>1,v.skip("uShort",3),E.glyphIndexMap={};var F=new i.Parser(p,g+b+14),k=new i.Parser(p,g+b+16+I*2),_=new i.Parser(p,g+b+16+I*4),M=new i.Parser(p,g+b+16+I*6),O=g+b+16+I*8;for(m=0;m<I-1;m+=1)for(var P,R=F.parseUShort(),re=k.parseUShort(),q=_.parseShort(),le=M.parseUShort(),Ae=re;Ae<=R;Ae+=1)le!==0?(O=M.offset+M.relativeOffset-2,O+=le,O+=(Ae-re)*2,P=i.getUShort(p,O),P!==0&&(P=P+q&65535)):P=Ae+q&65535,E.glyphIndexMap[Ae]=P;return E}function c(p,g,m){p.segments.push({end:g,start:g,delta:-(g-m),offset:0})}function u(p){p.segments.push({end:65535,start:65535,delta:1,offset:0})}function f(p){var g,m=new o.Table("cmap",[{name:"version",type:"USHORT",value:0},{name:"numTables",type:"USHORT",value:1},{name:"platformID",type:"USHORT",value:3},{name:"encodingID",type:"USHORT",value:1},{name:"offset",type:"ULONG",value:12},{name:"format",type:"USHORT",value:4},{name:"length",type:"USHORT",value:0},{name:"language",type:"USHORT",value:0},{name:"segCountX2",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);for(m.segments=[],g=0;g<p.length;g+=1){for(var E=p.get(g),b=0;b<E.unicodes.length;b+=1)c(m,E.unicodes[b],g);m.segments=m.segments.sort(function(M,O){return M.start-O.start})}u(m);var y;y=m.segments.length,m.segCountX2=y*2,m.searchRange=Math.pow(2,Math.floor(Math.log(y)/Math.log(2)))*2,m.entrySelector=Math.log(m.searchRange/2)/Math.log(2),m.rangeShift=m.segCountX2-m.searchRange;var Q=[],v=[],I=[],F=[],k=[];for(g=0;g<y;g+=1){var _=m.segments[g];Q=Q.concat({name:"end_"+g,type:"USHORT",value:_.end}),v=v.concat({name:"start_"+g,type:"USHORT",value:_.start}),I=I.concat({name:"idDelta_"+g,type:"SHORT",value:_.delta}),F=F.concat({name:"idRangeOffset_"+g,type:"USHORT",value:_.offset}),_.glyphId!==void 0&&(k=k.concat({name:"glyph_"+g,type:"USHORT",value:_.glyphId}))}return m.fields=m.fields.concat(Q),m.fields.push({name:"reservedPad",type:"USHORT",value:0}),m.fields=m.fields.concat(v),m.fields=m.fields.concat(I),m.fields=m.fields.concat(F),m.fields=m.fields.concat(k),m.length=14+Q.length*2+2+v.length*2+I.length*2+F.length*2+k.length*2,m}r.parse=A,r.make=f}),EF=Ge(r=>{"use strict";function e(i,o,A,c,u){i.beginPath(),i.moveTo(o,A),i.lineTo(c,u),i.stroke()}r.line=e}),Vm=Ge(r=>{"use strict";var e=ur(),i=EF(),o=$n();function A(u,f){var p=f||{commands:[]};return{configurable:!0,get:function(){return typeof p=="function"&&(p=p()),p},set:function(g){p=g}}}function c(u){this.bindConstructorValues(u)}c.prototype.bindConstructorValues=function(u){this.index=u.index||0,this.name=u.name||null,this.unicode=u.unicode||void 0,this.unicodes=u.unicodes||u.unicode!==void 0?[u.unicode]:[],u.xMin&&(this.xMin=u.xMin),u.yMin&&(this.yMin=u.yMin),u.xMax&&(this.xMax=u.xMax),u.yMax&&(this.yMax=u.yMax),u.advanceWidth&&(this.advanceWidth=u.advanceWidth),Object.defineProperty(this,"path",A(this,u.path))},c.prototype.addUnicode=function(u){this.unicodes.length===0&&(this.unicode=u),this.unicodes.push(u)},c.prototype.getPath=function(u,f,p){u=u!==void 0?u:0,f=f!==void 0?f:0,p=p!==void 0?p:72;for(var g=1/this.path.unitsPerEm*p,m=new o.Path,E=this.path.commands,b=0;b<E.length;b+=1){var y=E[b];y.type==="M"?m.moveTo(u+y.x*g,f+-y.y*g):y.type==="L"?m.lineTo(u+y.x*g,f+-y.y*g):y.type==="Q"?m.quadraticCurveTo(u+y.x1*g,f+-y.y1*g,u+y.x*g,f+-y.y*g):y.type==="C"?m.curveTo(u+y.x1*g,f+-y.y1*g,u+y.x2*g,f+-y.y2*g,u+y.x*g,f+-y.y*g):y.type==="Z"&&m.closePath()}return m},c.prototype.getContours=function(){if(this.points===void 0)return[];for(var u=[],f=[],p=0;p<this.points.length;p+=1){var g=this.points[p];f.push(g),g.lastPointOfContour&&(u.push(f),f=[])}return e.argument(f.length===0,"There are still points left in the current contour."),u},c.prototype.getMetrics=function(){for(var u=this.path.commands,f=[],p=[],g=0;g<u.length;g+=1){var m=u[g];m.type!=="Z"&&(f.push(m.x),p.push(m.y)),(m.type==="Q"||m.type==="C")&&(f.push(m.x1),p.push(m.y1)),m.type==="C"&&(f.push(m.x2),p.push(m.y2))}var E={xMin:Math.min.apply(null,f),yMin:Math.min.apply(null,p),xMax:Math.max.apply(null,f),yMax:Math.max.apply(null,p),leftSideBearing:0};return isFinite(E.xMin)||(E.xMin=0),isFinite(E.xMax)||(E.xMax=this.advanceWidth),isFinite(E.yMin)||(E.yMin=0),isFinite(E.yMax)||(E.yMax=0),E.rightSideBearing=this.advanceWidth-E.leftSideBearing-(E.xMax-E.xMin),E},c.prototype.draw=function(u,f,p,g){this.getPath(f,p,g).draw(u)},c.prototype.drawPoints=function(u,f,p,g){function m(F,k,_,M){var O=Math.PI*2;u.beginPath();for(var P=0;P<F.length;P+=1)u.moveTo(k+F[P].x*M,_+F[P].y*M),u.arc(k+F[P].x*M,_+F[P].y*M,2,0,O,!1);u.closePath(),u.fill()}f=f!==void 0?f:0,p=p!==void 0?p:0,g=g!==void 0?g:24;for(var E=1/this.path.unitsPerEm*g,b=[],y=[],Q=this.path,v=0;v<Q.commands.length;v+=1){var I=Q.commands[v];I.x!==void 0&&b.push({x:I.x,y:-I.y}),I.x1!==void 0&&y.push({x:I.x1,y:-I.y1}),I.x2!==void 0&&y.push({x:I.x2,y:-I.y2})}u.fillStyle="blue",m(b,f,p,E),u.fillStyle="red",m(y,f,p,E)},c.prototype.drawMetrics=function(u,f,p,g){var m;f=f!==void 0?f:0,p=p!==void 0?p:0,g=g!==void 0?g:24,m=1/this.path.unitsPerEm*g,u.lineWidth=1,u.strokeStyle="black",i.line(u,f,-1e4,f,1e4),i.line(u,-1e4,p,1e4,p);var E=this.xMin||0,b=this.yMin||0,y=this.xMax||0,Q=this.yMax||0,v=this.advanceWidth||0;u.strokeStyle="blue",i.line(u,f+E*m,-1e4,f+E*m,1e4),i.line(u,f+y*m,-1e4,f+y*m,1e4),i.line(u,-1e4,p+-b*m,1e4,p+-b*m),i.line(u,-1e4,p+-Q*m,1e4,p+-Q*m),u.strokeStyle="green",i.line(u,f+v*m,-1e4,f+v*m,1e4)},r.Glyph=c}),Nl=Ge(r=>{"use strict";var e=Vm();function i(u,f){if(this.font=u,this.glyphs={},Array.isArray(f))for(var p=0;p<f.length;p++)this.glyphs[p]=f[p];this.length=f&&f.length||0}i.prototype.get=function(u){return typeof this.glyphs[u]=="function"&&(this.glyphs[u]=this.glyphs[u]()),this.glyphs[u]},i.prototype.push=function(u,f){this.glyphs[u]=f,this.length++};function o(u,f){return new e.Glyph({index:f,font:u})}function A(u,f,p,g,m,E){return function(){var b=new e.Glyph({index:f,font:u});return b.path=function(){p(b,g,m);var y=E(u.glyphs,b);return y.unitsPerEm=u.unitsPerEm,y},b}}function c(u,f,p,g){return function(){var m=new e.Glyph({index:f,font:u});return m.path=function(){var E=p(u,m,g);return E.unitsPerEm=u.unitsPerEm,E},m}}r.GlyphSet=i,r.glyphLoader=o,r.ttfGlyphLoader=A,r.cffGlyphLoader=c}),jm=Ge(r=>{"use strict";var e=xo(),i=Nl(),o=Tt(),A=$n(),c=tr();function u(W,N){if(W===N)return!0;if(Array.isArray(W)&&Array.isArray(N)){if(W.length!==N.length)return!1;for(var J=0;J<W.length;J+=1)if(!u(W[J],N[J]))return!1;return!0}else return!1}function f(W,N,J){var z=[],j=[],K=o.getCard16(W,N),G,X,D;if(K!==0){var pe=o.getByte(W,N+2);X=N+(K+1)*pe+2;var ce=N+3;for(G=0;G<K+1;G+=1)z.push(o.getOffset(W,ce,pe)),ce+=pe;D=X+z[K]}else D=N+2;for(G=0;G<z.length-1;G+=1){var Qe=o.getBytes(W,X+z[G],X+z[G+1]);J&&(Qe=J(Qe)),j.push(Qe)}return{objects:j,startOffset:N,endOffset:D}}function p(W){for(var N="",J=15,z=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"];;){var j=W.parseByte(),K=j>>4,G=j&15;if(K===J||(N+=z[K],G===J))break;N+=z[G]}return parseFloat(N)}function g(W,N){var J,z,j,K;if(N===28)return J=W.parseByte(),z=W.parseByte(),J<<8|z;if(N===29)return J=W.parseByte(),z=W.parseByte(),j=W.parseByte(),K=W.parseByte(),J<<24|z<<16|j<<8|K;if(N===30)return p(W);if(N>=32&&N<=246)return N-139;if(N>=247&&N<=250)return J=W.parseByte(),(N-247)*256+J+108;if(N>=251&&N<=254)return J=W.parseByte(),-(N-251)*256-J-108;throw new Error("Invalid b0 "+N)}function m(W){for(var N={},J=0;J<W.length;J+=1){var z=W[J][0],j=W[J][1],K;if(j.length===1?K=j[0]:K=j,N.hasOwnProperty(z))throw new Error("Object "+N+" already has key "+z);N[z]=K}return N}function E(W,N,J){N=N!==void 0?N:0;var z=new o.Parser(W,N),j=[],K=[];for(J=J!==void 0?J:W.length;z.relativeOffset<J;){var G=z.parseByte();G<=21?(G===12&&(G=1200+z.parseByte()),j.push([G,K]),K=[]):K.push(g(z,G))}return m(j)}function b(W,N){return N<=390?N=e.cffStandardStrings[N]:N=W[N-391],N}function y(W,N,J){for(var z={},j=0;j<N.length;j+=1){var K=N[j],G=W[K.op];G===void 0&&(G=K.value!==void 0?K.value:null),K.type==="SID"&&(G=b(J,G)),z[K.name]=G}return z}function Q(W,N){var J={};return J.formatMajor=o.getCard8(W,N),J.formatMinor=o.getCard8(W,N+1),J.size=o.getCard8(W,N+2),J.offsetSize=o.getCard8(W,N+3),J.startOffset=N,J.endOffset=N+4,J}var v=[{name:"version",op:0,type:"SID"},{name:"notice",op:1,type:"SID"},{name:"copyright",op:1200,type:"SID"},{name:"fullName",op:2,type:"SID"},{name:"familyName",op:3,type:"SID"},{name:"weight",op:4,type:"SID"},{name:"isFixedPitch",op:1201,type:"number",value:0},{name:"italicAngle",op:1202,type:"number",value:0},{name:"underlinePosition",op:1203,type:"number",value:-100},{name:"underlineThickness",op:1204,type:"number",value:50},{name:"paintType",op:1205,type:"number",value:0},{name:"charstringType",op:1206,type:"number",value:2},{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"uniqueId",op:13,type:"number"},{name:"fontBBox",op:5,type:["number","number","number","number"],value:[0,0,0,0]},{name:"strokeWidth",op:1208,type:"number",value:0},{name:"xuid",op:14,type:[],value:null},{name:"charset",op:15,type:"offset",value:0},{name:"encoding",op:16,type:"offset",value:0},{name:"charStrings",op:17,type:"offset",value:0},{name:"private",op:18,type:["number","offset"],value:[0,0]}],I=[{name:"subrs",op:19,type:"offset",value:0},{name:"defaultWidthX",op:20,type:"number",value:0},{name:"nominalWidthX",op:21,type:"number",value:0}];function F(W,N){var J=E(W,0,W.byteLength);return y(J,v,N)}function k(W,N,J,z){var j=E(W,N,J);return y(j,I,z)}function _(W,N,J,z){var j,K,G,X=new o.Parser(W,N);J-=1;var D=[".notdef"],pe=X.parseCard8();if(pe===0)for(j=0;j<J;j+=1)K=X.parseSID(),D.push(b(z,K));else if(pe===1)for(;D.length<=J;)for(K=X.parseSID(),G=X.parseCard8(),j=0;j<=G;j+=1)D.push(b(z,K)),K+=1;else if(pe===2)for(;D.length<=J;)for(K=X.parseSID(),G=X.parseCard16(),j=0;j<=G;j+=1)D.push(b(z,K)),K+=1;else throw new Error("Unknown charset format "+pe);return D}function M(W,N,J){var z,j,K={},G=new o.Parser(W,N),X=G.parseCard8();if(X===0){var D=G.parseCard8();for(z=0;z<D;z+=1)j=G.parseCard8(),K[j]=z}else if(X===1){var pe=G.parseCard8();for(j=1,z=0;z<pe;z+=1)for(var ce=G.parseCard8(),Qe=G.parseCard8(),Z=ce;Z<=ce+Qe;Z+=1)K[Z]=j,j+=1}else throw new Error("Unknown encoding format "+X);return new e.CffEncoding(K,J)}function O(W,N,J){var z,j,K,G,X=new A.Path,D=[],pe=0,ce=!1,Qe=W.defaultWidthX,Z=!1,H=0,ne=0;function Oe(Ze,Xe){Z&&X.closePath(),X.moveTo(Ze,Xe),Z=!0}function De(){var Ze;Ze=D.length%2!==0,Ze&&!ce&&(Qe=D.shift()+W.nominalWidthX),pe+=D.length>>1,D.length=0,ce=!0}function it(Ze){for(var Xe,wt,te,ve,be,ue,Me,He,Le,Ne,de,ge,ae=0;ae<Ze.length;){var Ye=Ze[ae];switch(ae+=1,Ye){case 1:De();break;case 3:De();break;case 4:D.length>1&&!ce&&(Qe=D.shift()+W.nominalWidthX,ce=!0),ne+=D.pop(),Oe(H,ne);break;case 5:for(;D.length>0;)H+=D.shift(),ne+=D.shift(),X.lineTo(H,ne);break;case 6:for(;D.length>0&&(H+=D.shift(),X.lineTo(H,ne),D.length!==0);)ne+=D.shift(),X.lineTo(H,ne);break;case 7:for(;D.length>0&&(ne+=D.shift(),X.lineTo(H,ne),D.length!==0);)H+=D.shift(),X.lineTo(H,ne);break;case 8:for(;D.length>0;)z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+D.shift(),X.curveTo(z,j,K,G,H,ne);break;case 10:be=D.pop()+W.subrsBias,ue=W.subrs[be],ue&&it(ue);break;case 11:return;case 12:switch(Ye=Ze[ae],ae+=1,Ye){case 35:z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),Me=K+D.shift(),He=G+D.shift(),Le=Me+D.shift(),Ne=He+D.shift(),de=Le+D.shift(),ge=Ne+D.shift(),H=de+D.shift(),ne=ge+D.shift(),D.shift(),X.curveTo(z,j,K,G,Me,He),X.curveTo(Le,Ne,de,ge,H,ne);break;case 34:z=H+D.shift(),j=ne,K=z+D.shift(),G=j+D.shift(),Me=K+D.shift(),He=G,Le=Me+D.shift(),Ne=G,de=Le+D.shift(),ge=ne,H=de+D.shift(),X.curveTo(z,j,K,G,Me,He),X.curveTo(Le,Ne,de,ge,H,ne);break;case 36:z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),Me=K+D.shift(),He=G,Le=Me+D.shift(),Ne=G,de=Le+D.shift(),ge=Ne+D.shift(),H=de+D.shift(),X.curveTo(z,j,K,G,Me,He),X.curveTo(Le,Ne,de,ge,H,ne);break;case 37:z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),Me=K+D.shift(),He=G+D.shift(),Le=Me+D.shift(),Ne=He+D.shift(),de=Le+D.shift(),ge=Ne+D.shift(),Math.abs(de-H)>Math.abs(ge-ne)?H=de+D.shift():ne=ge+D.shift(),X.curveTo(z,j,K,G,Me,He),X.curveTo(Le,Ne,de,ge,H,ne);break;default:console.log("Glyph "+N.index+": unknown operator 1200"+Ye),D.length=0}break;case 14:D.length>0&&!ce&&(Qe=D.shift()+W.nominalWidthX,ce=!0),Z&&(X.closePath(),Z=!1);break;case 18:De();break;case 19:case 20:De(),ae+=pe+7>>3;break;case 21:D.length>2&&!ce&&(Qe=D.shift()+W.nominalWidthX,ce=!0),ne+=D.pop(),H+=D.pop(),Oe(H,ne);break;case 22:D.length>1&&!ce&&(Qe=D.shift()+W.nominalWidthX,ce=!0),H+=D.pop(),Oe(H,ne);break;case 23:De();break;case 24:for(;D.length>2;)z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+D.shift(),X.curveTo(z,j,K,G,H,ne);H+=D.shift(),ne+=D.shift(),X.lineTo(H,ne);break;case 25:for(;D.length>6;)H+=D.shift(),ne+=D.shift(),X.lineTo(H,ne);z=H+D.shift(),j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+D.shift(),X.curveTo(z,j,K,G,H,ne);break;case 26:for(D.length%2&&(H+=D.shift());D.length>0;)z=H,j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K,ne=G+D.shift(),X.curveTo(z,j,K,G,H,ne);break;case 27:for(D.length%2&&(ne+=D.shift());D.length>0;)z=H+D.shift(),j=ne,K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G,X.curveTo(z,j,K,G,H,ne);break;case 28:Xe=Ze[ae],wt=Ze[ae+1],D.push((Xe<<24|wt<<16)>>16),ae+=2;break;case 29:be=D.pop()+W.gsubrsBias,ue=W.gsubrs[be],ue&&it(ue);break;case 30:for(;D.length>0&&(z=H,j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+(D.length===1?D.shift():0),X.curveTo(z,j,K,G,H,ne),D.length!==0);)z=H+D.shift(),j=ne,K=z+D.shift(),G=j+D.shift(),ne=G+D.shift(),H=K+(D.length===1?D.shift():0),X.curveTo(z,j,K,G,H,ne);break;case 31:for(;D.length>0&&(z=H+D.shift(),j=ne,K=z+D.shift(),G=j+D.shift(),ne=G+D.shift(),H=K+(D.length===1?D.shift():0),X.curveTo(z,j,K,G,H,ne),D.length!==0);)z=H,j=ne+D.shift(),K=z+D.shift(),G=j+D.shift(),H=K+D.shift(),ne=G+(D.length===1?D.shift():0),X.curveTo(z,j,K,G,H,ne);break;default:Ye<32?console.log("Glyph "+N.index+": unknown operator "+Ye):Ye<247?D.push(Ye-139):Ye<251?(Xe=Ze[ae],ae+=1,D.push((Ye-247)*256+Xe+108)):Ye<255?(Xe=Ze[ae],ae+=1,D.push(-(Ye-251)*256-Xe-108)):(Xe=Ze[ae],wt=Ze[ae+1],te=Ze[ae+2],ve=Ze[ae+3],ae+=4,D.push((Xe<<24|wt<<16|te<<8|ve)/65536))}}}return it(J),N.advanceWidth=Qe,X}function P(W){var N;return W.length<1240?N=107:W.length<33900?N=1131:N=32768,N}function R(W,N,J){J.tables.cff={};var z=Q(W,N),j=f(W,z.endOffset,o.bytesToString),K=f(W,j.endOffset),G=f(W,K.endOffset,o.bytesToString),X=f(W,G.endOffset);J.gsubrs=X.objects,J.gsubrsBias=P(J.gsubrs);var D=new DataView(new Uint8Array(K.objects[0]).buffer),pe=F(D,G.objects);J.tables.cff.topDict=pe;var ce=N+pe.private[1],Qe=k(W,ce,pe.private[0],G.objects);if(J.defaultWidthX=Qe.defaultWidthX,J.nominalWidthX=Qe.nominalWidthX,Qe.subrs!==0){var Z=ce+Qe.subrs,H=f(W,Z);J.subrs=H.objects,J.subrsBias=P(J.subrs)}else J.subrs=[],J.subrsBias=0;var ne=f(W,N+pe.charStrings);J.nGlyphs=ne.objects.length;var Oe=_(W,N+pe.charset,J.nGlyphs,G.objects);pe.encoding===0?J.cffEncoding=new e.CffEncoding(e.cffStandardEncoding,Oe):pe.encoding===1?J.cffEncoding=new e.CffEncoding(e.cffExpertEncoding,Oe):J.cffEncoding=M(W,N+pe.encoding,Oe),J.encoding=J.encoding||J.cffEncoding,J.glyphs=new i.GlyphSet(J);for(var De=0;De<J.nGlyphs;De+=1){var it=ne.objects[De];J.glyphs.push(De,i.cffGlyphLoader(J,De,O,it))}}function re(W,N){var J,z=e.cffStandardStrings.indexOf(W);return z>=0&&(J=z),z=N.indexOf(W),z>=0?J=z+e.cffStandardStrings.length:(J=e.cffStandardStrings.length+N.length,N.push(W)),J}function q(){return new c.Table("Header",[{name:"major",type:"Card8",value:1},{name:"minor",type:"Card8",value:0},{name:"hdrSize",type:"Card8",value:4},{name:"major",type:"Card8",value:1}])}function le(W){var N=new c.Table("Name INDEX",[{name:"names",type:"INDEX",value:[]}]);N.names=[];for(var J=0;J<W.length;J+=1)N.names.push({name:"name_"+J,type:"NAME",value:W[J]});return N}function Ae(W,N,J){for(var z={},j=0;j<W.length;j+=1){var K=W[j],G=N[K.name];G!==void 0&&!u(G,K.value)&&(K.type==="SID"&&(G=re(G,J)),z[K.op]={name:K.name,type:K.type,value:G})}return z}function ie(W,N){var J=new c.Table("Top DICT",[{name:"dict",type:"DICT",value:{}}]);return J.dict=Ae(v,W,N),J}function se(W){var N=new c.Table("Top DICT INDEX",[{name:"topDicts",type:"INDEX",value:[]}]);return N.topDicts=[{name:"topDict_0",type:"TABLE",value:W}],N}function ye(W){var N=new c.Table("String INDEX",[{name:"strings",type:"INDEX",value:[]}]);N.strings=[];for(var J=0;J<W.length;J+=1)N.strings.push({name:"string_"+J,type:"STRING",value:W[J]});return N}function fe(){return new c.Table("Global Subr INDEX",[{name:"subrs",type:"INDEX",value:[]}])}function Pe(W,N){for(var J=new c.Table("Charsets",[{name:"format",type:"Card8",value:0}]),z=0;z<W.length;z+=1){var j=W[z],K=re(j,N);J.fields.push({name:"glyph_"+z,type:"SID",value:K})}return J}function Be(W){var N=[],J=W.path;N.push({name:"width",type:"NUMBER",value:W.advanceWidth});for(var z=0,j=0,K=0;K<J.commands.length;K+=1){var G,X,D=J.commands[K];if(D.type==="Q"){var pe=.3333333333333333,ce=2/3;D={type:"C",x:D.x,y:D.y,x1:pe*z+ce*D.x1,y1:pe*j+ce*D.y1,x2:pe*D.x+ce*D.x1,y2:pe*D.y+ce*D.y1}}if(D.type==="M")G=Math.round(D.x-z),X=Math.round(D.y-j),N.push({name:"dx",type:"NUMBER",value:G}),N.push({name:"dy",type:"NUMBER",value:X}),N.push({name:"rmoveto",type:"OP",value:21}),z=Math.round(D.x),j=Math.round(D.y);else if(D.type==="L")G=Math.round(D.x-z),X=Math.round(D.y-j),N.push({name:"dx",type:"NUMBER",value:G}),N.push({name:"dy",type:"NUMBER",value:X}),N.push({name:"rlineto",type:"OP",value:5}),z=Math.round(D.x),j=Math.round(D.y);else if(D.type==="C"){var Qe=Math.round(D.x1-z),Z=Math.round(D.y1-j),H=Math.round(D.x2-D.x1),ne=Math.round(D.y2-D.y1);G=Math.round(D.x-D.x2),X=Math.round(D.y-D.y2),N.push({name:"dx1",type:"NUMBER",value:Qe}),N.push({name:"dy1",type:"NUMBER",value:Z}),N.push({name:"dx2",type:"NUMBER",value:H}),N.push({name:"dy2",type:"NUMBER",value:ne}),N.push({name:"dx",type:"NUMBER",value:G}),N.push({name:"dy",type:"NUMBER",value:X}),N.push({name:"rrcurveto",type:"OP",value:8}),z=Math.round(D.x),j=Math.round(D.y)}}return N.push({name:"endchar",type:"OP",value:14}),N}function Ee(W){for(var N=new c.Table("CharStrings INDEX",[{name:"charStrings",type:"INDEX",value:[]}]),J=0;J<W.length;J+=1){var z=W.get(J),j=Be(z);N.charStrings.push({name:z.name,type:"CHARSTRING",value:j})}return N}function me(W,N){var J=new c.Table("Private DICT",[{name:"dict",type:"DICT",value:{}}]);return J.dict=Ae(I,W,N),J}function ke(W){var N=new c.Table("Private DICT INDEX",[{name:"privateDicts",type:"INDEX",value:[]}]);return N.privateDicts=[{name:"privateDict_0",type:"TABLE",value:W}],N}function Fe(W,N){for(var J=new c.Table("CFF ",[{name:"header",type:"TABLE"},{name:"nameIndex",type:"TABLE"},{name:"topDictIndex",type:"TABLE"},{name:"stringIndex",type:"TABLE"},{name:"globalSubrIndex",type:"TABLE"},{name:"charsets",type:"TABLE"},{name:"charStringsIndex",type:"TABLE"},{name:"privateDictIndex",type:"TABLE"}]),z=1/N.unitsPerEm,j={version:N.version,fullName:N.fullName,familyName:N.familyName,weight:N.weightName,fontMatrix:[z,0,0,z,0,0],charset:999,encoding:0,charStrings:999,private:[0,999]},K={},G=[],X,D=1;D<W.length;D+=1)X=W.get(D),G.push(X.name);var pe=[];J.header=q(),J.nameIndex=le([N.postScriptName]);var ce=ie(j,pe);J.topDictIndex=se(ce),J.globalSubrIndex=fe(),J.charsets=Pe(G,pe),J.charStringsIndex=Ee(W);var Qe=me(K,pe);J.privateDictIndex=ke(Qe),J.stringIndex=ye(pe);var Z=J.header.sizeOf()+J.nameIndex.sizeOf()+J.topDictIndex.sizeOf()+J.stringIndex.sizeOf()+J.globalSubrIndex.sizeOf();return j.charset=Z,j.encoding=0,j.charStrings=j.charset+J.charsets.sizeOf(),j.private[1]=j.charStrings+J.charStringsIndex.sizeOf(),ce=ie(j,pe),J.topDictIndex=se(ce),J}r.parse=R,r.make=Fe}),_m=Ge(r=>{"use strict";var e=ur(),i=Tt(),o=tr();function A(u,f){var p={},g=new i.Parser(u,f);return p.version=g.parseVersion(),p.fontRevision=Math.round(g.parseFixed()*1e3)/1e3,p.checkSumAdjustment=g.parseULong(),p.magicNumber=g.parseULong(),e.argument(p.magicNumber===1594834165,"Font header has wrong magic number."),p.flags=g.parseUShort(),p.unitsPerEm=g.parseUShort(),p.created=g.parseLongDateTime(),p.modified=g.parseLongDateTime(),p.xMin=g.parseShort(),p.yMin=g.parseShort(),p.xMax=g.parseShort(),p.yMax=g.parseShort(),p.macStyle=g.parseUShort(),p.lowestRecPPEM=g.parseUShort(),p.fontDirectionHint=g.parseShort(),p.indexToLocFormat=g.parseShort(),p.glyphDataFormat=g.parseShort(),p}function c(u){return new o.Table("head",[{name:"version",type:"FIXED",value:65536},{name:"fontRevision",type:"FIXED",value:65536},{name:"checkSumAdjustment",type:"ULONG",value:0},{name:"magicNumber",type:"ULONG",value:1594834165},{name:"flags",type:"USHORT",value:0},{name:"unitsPerEm",type:"USHORT",value:1e3},{name:"created",type:"LONGDATETIME",value:0},{name:"modified",type:"LONGDATETIME",value:0},{name:"xMin",type:"SHORT",value:0},{name:"yMin",type:"SHORT",value:0},{name:"xMax",type:"SHORT",value:0},{name:"yMax",type:"SHORT",value:0},{name:"macStyle",type:"USHORT",value:0},{name:"lowestRecPPEM",type:"USHORT",value:0},{name:"fontDirectionHint",type:"SHORT",value:2},{name:"indexToLocFormat",type:"SHORT",value:0},{name:"glyphDataFormat",type:"SHORT",value:0}],u)}r.parse=A,r.make=c}),Zm=Ge(r=>{"use strict";var e=Tt(),i=tr();function o(c,u){var f={},p=new e.Parser(c,u);return f.version=p.parseVersion(),f.ascender=p.parseShort(),f.descender=p.parseShort(),f.lineGap=p.parseShort(),f.advanceWidthMax=p.parseUShort(),f.minLeftSideBearing=p.parseShort(),f.minRightSideBearing=p.parseShort(),f.xMaxExtent=p.parseShort(),f.caretSlopeRise=p.parseShort(),f.caretSlopeRun=p.parseShort(),f.caretOffset=p.parseShort(),p.relativeOffset+=8,f.metricDataFormat=p.parseShort(),f.numberOfHMetrics=p.parseUShort(),f}function A(c){return new i.Table("hhea",[{name:"version",type:"FIXED",value:65536},{name:"ascender",type:"FWORD",value:0},{name:"descender",type:"FWORD",value:0},{name:"lineGap",type:"FWORD",value:0},{name:"advanceWidthMax",type:"UFWORD",value:0},{name:"minLeftSideBearing",type:"FWORD",value:0},{name:"minRightSideBearing",type:"FWORD",value:0},{name:"xMaxExtent",type:"FWORD",value:0},{name:"caretSlopeRise",type:"SHORT",value:1},{name:"caretSlopeRun",type:"SHORT",value:0},{name:"caretOffset",type:"SHORT",value:0},{name:"reserved1",type:"SHORT",value:0},{name:"reserved2",type:"SHORT",value:0},{name:"reserved3",type:"SHORT",value:0},{name:"reserved4",type:"SHORT",value:0},{name:"metricDataFormat",type:"SHORT",value:0},{name:"numberOfHMetrics",type:"USHORT",value:0}],c)}r.parse=o,r.make=A}),Xm=Ge(r=>{"use strict";var e=Tt(),i=tr();function o(c,u,f,p,g){for(var m,E,b=new e.Parser(c,u),y=0;y<p;y+=1){y<f&&(m=b.parseUShort(),E=b.parseShort());var Q=g.get(y);Q.advanceWidth=m,Q.leftSideBearing=E}}function A(c){for(var u=new i.Table("hmtx",[]),f=0;f<c.length;f+=1){var p=c.get(f),g=p.advanceWidth||0,m=p.leftSideBearing||0;u.fields.push({name:"advanceWidth_"+f,type:"USHORT",value:g}),u.fields.push({name:"leftSideBearing_"+f,type:"SHORT",value:m})}return u}r.parse=o,r.make=A}),zm=Ge(r=>{"use strict";var e=ur(),i=Tt(),o=tr();function A(u){for(var f=new o.Table("ltag",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"numTags",type:"ULONG",value:u.length}]),p="",g=12+u.length*4,m=0;m<u.length;++m){var E=p.indexOf(u[m]);E<0&&(E=p.length,p+=u[m]),f.fields.push({name:"offset "+m,type:"USHORT",value:g+E}),f.fields.push({name:"length "+m,type:"USHORT",value:u[m].length})}return f.fields.push({name:"stringPool",type:"CHARARRAY",value:p}),f}function c(u,f){var p=new i.Parser(u,f),g=p.parseULong();e.argument(g===1,"Unsupported ltag table version."),p.skip("uLong",1);for(var m=p.parseULong(),E=[],b=0;b<m;b++){for(var y="",Q=f+p.parseUShort(),v=p.parseUShort(),I=Q;I<Q+v;++I)y+=String.fromCharCode(u.getInt8(I));E.push(y)}return E}r.make=A,r.parse=c}),qm=Ge(r=>{"use strict";var e=Tt(),i=tr();function o(c,u){var f={},p=new e.Parser(c,u);return f.version=p.parseVersion(),f.numGlyphs=p.parseUShort(),f.version===1&&(f.maxPoints=p.parseUShort(),f.maxContours=p.parseUShort(),f.maxCompositePoints=p.parseUShort(),f.maxCompositeContours=p.parseUShort(),f.maxZones=p.parseUShort(),f.maxTwilightPoints=p.parseUShort(),f.maxStorage=p.parseUShort(),f.maxFunctionDefs=p.parseUShort(),f.maxInstructionDefs=p.parseUShort(),f.maxStackElements=p.parseUShort(),f.maxSizeOfInstructions=p.parseUShort(),f.maxComponentElements=p.parseUShort(),f.maxComponentDepth=p.parseUShort()),f}function A(c){return new i.Table("maxp",[{name:"version",type:"FIXED",value:20480},{name:"numGlyphs",type:"USHORT",value:c}])}r.parse=o,r.make=A}),Km=Ge(r=>{"use strict";var e=Dl(),i=e.decode,o=e.encode,A=Tt(),c=tr(),u=["copyright","fontFamily","fontSubfamily","uniqueID","fullName","version","postScriptName","trademark","manufacturer","designer","description","manufacturerURL","designerURL","licence","licenceURL","reserved","preferredFamily","preferredSubfamily","compatibleFullName","sampleText","postScriptFindFontName","wwsFamily","wwsSubfamily"],f={0:"en",1:"fr",2:"de",3:"it",4:"nl",5:"sv",6:"es",7:"da",8:"pt",9:"no",10:"he",11:"ja",12:"ar",13:"fi",14:"el",15:"is",16:"mt",17:"tr",18:"hr",19:"zh-Hant",20:"ur",21:"hi",22:"th",23:"ko",24:"lt",25:"pl",26:"hu",27:"es",28:"lv",29:"se",30:"fo",31:"fa",32:"ru",33:"zh",34:"nl-BE",35:"ga",36:"sq",37:"ro",38:"cz",39:"sk",40:"si",41:"yi",42:"sr",43:"mk",44:"bg",45:"uk",46:"be",47:"uz",48:"kk",49:"az-Cyrl",50:"az-Arab",51:"hy",52:"ka",53:"mo",54:"ky",55:"tg",56:"tk",57:"mn-CN",58:"mn",59:"ps",60:"ks",61:"ku",62:"sd",63:"bo",64:"ne",65:"sa",66:"mr",67:"bn",68:"as",69:"gu",70:"pa",71:"or",72:"ml",73:"kn",74:"ta",75:"te",76:"si",77:"my",78:"km",79:"lo",80:"vi",81:"id",82:"tl",83:"ms",84:"ms-Arab",85:"am",86:"ti",87:"om",88:"so",89:"sw",90:"rw",91:"rn",92:"ny",93:"mg",94:"eo",128:"cy",129:"eu",130:"ca",131:"la",132:"qu",133:"gn",134:"ay",135:"tt",136:"ug",137:"dz",138:"jv",139:"su",140:"gl",141:"af",142:"br",143:"iu",144:"gd",145:"gv",146:"ga",147:"to",148:"el-polyton",149:"kl",150:"az",151:"nn"},p={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:5,11:1,12:4,13:0,14:6,15:0,16:0,17:0,18:0,19:2,20:4,21:9,22:21,23:3,24:29,25:29,26:29,27:29,28:29,29:0,30:0,31:4,32:7,33:25,34:0,35:0,36:0,37:0,38:29,39:29,40:0,41:5,42:7,43:7,44:7,45:7,46:7,47:7,48:7,49:7,50:4,51:24,52:23,53:7,54:7,55:7,56:7,57:27,58:7,59:4,60:4,61:4,62:4,63:26,64:9,65:9,66:9,67:13,68:13,69:11,70:10,71:12,72:17,73:16,74:14,75:15,76:18,77:19,78:20,79:22,80:30,81:0,82:0,83:0,84:4,85:28,86:28,87:28,88:0,89:0,90:0,91:0,92:0,93:0,94:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:7,136:4,137:26,138:0,139:0,140:0,141:0,142:0,143:28,144:0,145:0,146:0,147:0,148:6,149:0,150:0,151:0},g={1078:"af",1052:"sq",1156:"gsw",1118:"am",5121:"ar-DZ",15361:"ar-BH",3073:"ar",2049:"ar-IQ",11265:"ar-JO",13313:"ar-KW",12289:"ar-LB",4097:"ar-LY",6145:"ary",8193:"ar-OM",16385:"ar-QA",1025:"ar-SA",10241:"ar-SY",7169:"aeb",14337:"ar-AE",9217:"ar-YE",1067:"hy",1101:"as",2092:"az-Cyrl",1068:"az",1133:"ba",1069:"eu",1059:"be",2117:"bn",1093:"bn-IN",8218:"bs-Cyrl",5146:"bs",1150:"br",1026:"bg",1027:"ca",3076:"zh-HK",5124:"zh-MO",2052:"zh",4100:"zh-SG",1028:"zh-TW",1155:"co",1050:"hr",4122:"hr-BA",1029:"cs",1030:"da",1164:"prs",1125:"dv",2067:"nl-BE",1043:"nl",3081:"en-AU",10249:"en-BZ",4105:"en-CA",9225:"en-029",16393:"en-IN",6153:"en-IE",8201:"en-JM",17417:"en-MY",5129:"en-NZ",13321:"en-PH",18441:"en-SG",7177:"en-ZA",11273:"en-TT",2057:"en-GB",1033:"en",12297:"en-ZW",1061:"et",1080:"fo",1124:"fil",1035:"fi",2060:"fr-BE",3084:"fr-CA",1036:"fr",5132:"fr-LU",6156:"fr-MC",4108:"fr-CH",1122:"fy",1110:"gl",1079:"ka",3079:"de-AT",1031:"de",5127:"de-LI",4103:"de-LU",2055:"de-CH",1032:"el",1135:"kl",1095:"gu",1128:"ha",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig",1057:"id",1117:"iu",2141:"iu-Latn",2108:"ga",1076:"xh",1077:"zu",1040:"it",2064:"it-CH",1041:"ja",1099:"kn",1087:"kk",1107:"km",1158:"quc",1159:"rw",1089:"sw",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1062:"lv",1063:"lt",2094:"dsb",1134:"lb",1071:"mk",2110:"ms-BN",1086:"ms",1100:"ml",1082:"mt",1153:"mi",1146:"arn",1102:"mr",1148:"moh",1104:"mn",2128:"mn-CN",1121:"ne",1044:"nb",2068:"nn",1154:"oc",1096:"or",1123:"ps",1045:"pl",1046:"pt",2070:"pt-PT",1094:"pa",1131:"qu-BO",2155:"qu-EC",3179:"qu",1048:"ro",1047:"rm",1049:"ru",9275:"smn",4155:"smj-NO",5179:"smj",3131:"se-FI",1083:"se",2107:"se-SE",8251:"sms",6203:"sma-NO",7227:"sms",1103:"sa",7194:"sr-Cyrl-BA",3098:"sr",6170:"sr-Latn-BA",2074:"sr-Latn",1132:"nso",1074:"tn",1115:"si",1051:"sk",1060:"sl",11274:"es-AR",16394:"es-BO",13322:"es-CL",9226:"es-CO",5130:"es-CR",7178:"es-DO",12298:"es-EC",17418:"es-SV",4106:"es-GT",18442:"es-HN",2058:"es-MX",19466:"es-NI",6154:"es-PA",15370:"es-PY",10250:"es-PE",20490:"es-PR",3082:"es",1034:"es",21514:"es-US",14346:"es-UY",8202:"es-VE",2077:"sv-FI",1053:"sv",1114:"syr",1064:"tg",2143:"tzm",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1055:"tr",1090:"tk",1152:"ug",1058:"uk",1070:"hsb",1056:"ur",2115:"uz-Cyrl",1091:"uz",1066:"vi",1106:"cy",1160:"wo",1157:"sah",1144:"ii",1130:"yo"};function m(O,P,R){switch(O){case 0:if(P===65535)return"und";if(R)return R[P];break;case 1:return f[P];case 3:return g[P]}}var E="utf-16",b={0:"macintosh",1:"x-mac-japanese",2:"x-mac-chinesetrad",3:"x-mac-korean",6:"x-mac-greek",7:"x-mac-cyrillic",9:"x-mac-devanagai",10:"x-mac-gurmukhi",11:"x-mac-gujarati",12:"x-mac-oriya",13:"x-mac-bengali",14:"x-mac-tamil",15:"x-mac-telugu",16:"x-mac-kannada",17:"x-mac-malayalam",18:"x-mac-sinhalese",19:"x-mac-burmese",20:"x-mac-khmer",21:"x-mac-thai",22:"x-mac-lao",23:"x-mac-georgian",24:"x-mac-armenian",25:"x-mac-chinesesimp",26:"x-mac-tibetan",27:"x-mac-mongolian",28:"x-mac-ethiopic",29:"x-mac-ce",30:"x-mac-vietnamese",31:"x-mac-extarabic"},y={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"};function Q(O,P,R){switch(O){case 0:return E;case 1:return y[R]||b[P];case 3:if(P===1||P===10)return E;break}}function v(O,P,R){for(var re={},q=new A.Parser(O,P),le=q.parseUShort(),Ae=q.parseUShort(),ie=q.offset+q.parseUShort(),se=0;se<Ae;se++){var ye=q.parseUShort(),fe=q.parseUShort(),Pe=q.parseUShort(),Be=q.parseUShort(),Ee=u[Be]||Be,me=q.parseUShort(),ke=q.parseUShort(),Fe=m(ye,Pe,R),W=Q(ye,fe,Pe);if(W!==void 0&&Fe!==void 0){var N;if(W===E?N=i.UTF16(O,ie+ke,me):N=i.MACSTRING(O,ie+ke,me,W),N){var J=re[Ee];J===void 0&&(J=re[Ee]={}),J[Fe]=N}}}var z=0;return le===1&&(z=q.parseUShort()),re}function I(O){var P={};for(var R in O)P[O[R]]=parseInt(R);return P}function F(O,P,R,re,q,le){return new c.Table("NameRecord",[{name:"platformID",type:"USHORT",value:O},{name:"encodingID",type:"USHORT",value:P},{name:"languageID",type:"USHORT",value:R},{name:"nameID",type:"USHORT",value:re},{name:"length",type:"USHORT",value:q},{name:"offset",type:"USHORT",value:le}])}function k(O,P){var R=O.length,re=P.length-R+1;e:for(var q=0;q<re;q++)for(;q<re;q++){for(var le=0;le<R;le++)if(P[q+le]!==O[le])continue e;return q}return-1}function _(O,P){var R=k(O,P);if(R<0){R=P.length;for(var re=0,q=O.length;re<q;++re)P.push(O[re])}return R}function M(O,P){var R,re=[],q={},le=I(u);for(var Ae in O){var ie=le[Ae];ie===void 0&&(ie=Ae),R=parseInt(ie),q[R]=O[Ae],re.push(R)}for(var se=I(f),ye=I(g),fe=[],Pe=[],Be=0;Be<re.length;Be++){R=re[Be];var Ee=q[R];for(var me in Ee){var ke=Ee[me],Fe=1,W=se[me],N=p[W],J=Q(Fe,N,W),z=o.MACSTRING(ke,J);z===void 0&&(Fe=0,W=P.indexOf(me),W<0&&(W=P.length,P.push(me)),N=4,z=o.UTF16(ke));var j=_(z,Pe);fe.push(F(Fe,N,W,R,z.length,j));var K=ye[me];if(K!==void 0){var G=o.UTF16(ke),X=_(G,Pe);fe.push(F(3,1,K,R,G.length,X))}}}fe.sort(function(ce,Qe){return ce.platformID-Qe.platformID||ce.encodingID-Qe.encodingID||ce.languageID-Qe.languageID||ce.nameID-Qe.nameID});for(var D=new c.Table("name",[{name:"format",type:"USHORT",value:0},{name:"count",type:"USHORT",value:fe.length},{name:"stringOffset",type:"USHORT",value:6+fe.length*12}]),pe=0;pe<fe.length;pe++)D.fields.push({name:"record_"+pe,type:"TABLE",value:fe[pe]});return D.fields.push({name:"strings",type:"LITERAL",value:Pe}),D}r.parse=v,r.make=M}),$m=Ge(r=>{"use strict";var e=Tt(),i=tr(),o=[{begin:0,end:127},{begin:128,end:255},{begin:256,end:383},{begin:384,end:591},{begin:592,end:687},{begin:688,end:767},{begin:768,end:879},{begin:880,end:1023},{begin:11392,end:11519},{begin:1024,end:1279},{begin:1328,end:1423},{begin:1424,end:1535},{begin:42240,end:42559},{begin:1536,end:1791},{begin:1984,end:2047},{begin:2304,end:2431},{begin:2432,end:2559},{begin:2560,end:2687},{begin:2688,end:2815},{begin:2816,end:2943},{begin:2944,end:3071},{begin:3072,end:3199},{begin:3200,end:3327},{begin:3328,end:3455},{begin:3584,end:3711},{begin:3712,end:3839},{begin:4256,end:4351},{begin:6912,end:7039},{begin:4352,end:4607},{begin:7680,end:7935},{begin:7936,end:8191},{begin:8192,end:8303},{begin:8304,end:8351},{begin:8352,end:8399},{begin:8400,end:8447},{begin:8448,end:8527},{begin:8528,end:8591},{begin:8592,end:8703},{begin:8704,end:8959},{begin:8960,end:9215},{begin:9216,end:9279},{begin:9280,end:9311},{begin:9312,end:9471},{begin:9472,end:9599},{begin:9600,end:9631},{begin:9632,end:9727},{begin:9728,end:9983},{begin:9984,end:10175},{begin:12288,end:12351},{begin:12352,end:12447},{begin:12448,end:12543},{begin:12544,end:12591},{begin:12592,end:12687},{begin:43072,end:43135},{begin:12800,end:13055},{begin:13056,end:13311},{begin:44032,end:55215},{begin:55296,end:57343},{begin:67840,end:67871},{begin:19968,end:40959},{begin:57344,end:63743},{begin:12736,end:12783},{begin:64256,end:64335},{begin:64336,end:65023},{begin:65056,end:65071},{begin:65040,end:65055},{begin:65104,end:65135},{begin:65136,end:65279},{begin:65280,end:65519},{begin:65520,end:65535},{begin:3840,end:4095},{begin:1792,end:1871},{begin:1920,end:1983},{begin:3456,end:3583},{begin:4096,end:4255},{begin:4608,end:4991},{begin:5024,end:5119},{begin:5120,end:5759},{begin:5760,end:5791},{begin:5792,end:5887},{begin:6016,end:6143},{begin:6144,end:6319},{begin:10240,end:10495},{begin:40960,end:42127},{begin:5888,end:5919},{begin:66304,end:66351},{begin:66352,end:66383},{begin:66560,end:66639},{begin:118784,end:119039},{begin:119808,end:120831},{begin:1044480,end:1048573},{begin:65024,end:65039},{begin:917504,end:917631},{begin:6400,end:6479},{begin:6480,end:6527},{begin:6528,end:6623},{begin:6656,end:6687},{begin:11264,end:11359},{begin:11568,end:11647},{begin:19904,end:19967},{begin:43008,end:43055},{begin:65536,end:65663},{begin:65856,end:65935},{begin:66432,end:66463},{begin:66464,end:66527},{begin:66640,end:66687},{begin:66688,end:66735},{begin:67584,end:67647},{begin:68096,end:68191},{begin:119552,end:119647},{begin:73728,end:74751},{begin:119648,end:119679},{begin:7040,end:7103},{begin:7168,end:7247},{begin:7248,end:7295},{begin:43136,end:43231},{begin:43264,end:43311},{begin:43312,end:43359},{begin:43520,end:43615},{begin:65936,end:65999},{begin:66e3,end:66047},{begin:66208,end:66271},{begin:127024,end:127135}];function A(f){for(var p=0;p<o.length;p+=1){var g=o[p];if(f>=g.begin&&f<g.end)return p}return-1}function c(f,p){var g={},m=new e.Parser(f,p);g.version=m.parseUShort(),g.xAvgCharWidth=m.parseShort(),g.usWeightClass=m.parseUShort(),g.usWidthClass=m.parseUShort(),g.fsType=m.parseUShort(),g.ySubscriptXSize=m.parseShort(),g.ySubscriptYSize=m.parseShort(),g.ySubscriptXOffset=m.parseShort(),g.ySubscriptYOffset=m.parseShort(),g.ySuperscriptXSize=m.parseShort(),g.ySuperscriptYSize=m.parseShort(),g.ySuperscriptXOffset=m.parseShort(),g.ySuperscriptYOffset=m.parseShort(),g.yStrikeoutSize=m.parseShort(),g.yStrikeoutPosition=m.parseShort(),g.sFamilyClass=m.parseShort(),g.panose=[];for(var E=0;E<10;E++)g.panose[E]=m.parseByte();return g.ulUnicodeRange1=m.parseULong(),g.ulUnicodeRange2=m.parseULong(),g.ulUnicodeRange3=m.parseULong(),g.ulUnicodeRange4=m.parseULong(),g.achVendID=String.fromCharCode(m.parseByte(),m.parseByte(),m.parseByte(),m.parseByte()),g.fsSelection=m.parseUShort(),g.usFirstCharIndex=m.parseUShort(),g.usLastCharIndex=m.parseUShort(),g.sTypoAscender=m.parseShort(),g.sTypoDescender=m.parseShort(),g.sTypoLineGap=m.parseShort(),g.usWinAscent=m.parseUShort(),g.usWinDescent=m.parseUShort(),g.version>=1&&(g.ulCodePageRange1=m.parseULong(),g.ulCodePageRange2=m.parseULong()),g.version>=2&&(g.sxHeight=m.parseShort(),g.sCapHeight=m.parseShort(),g.usDefaultChar=m.parseUShort(),g.usBreakChar=m.parseUShort(),g.usMaxContent=m.parseUShort()),g}function u(f){return new i.Table("OS/2",[{name:"version",type:"USHORT",value:3},{name:"xAvgCharWidth",type:"SHORT",value:0},{name:"usWeightClass",type:"USHORT",value:0},{name:"usWidthClass",type:"USHORT",value:0},{name:"fsType",type:"USHORT",value:0},{name:"ySubscriptXSize",type:"SHORT",value:650},{name:"ySubscriptYSize",type:"SHORT",value:699},{name:"ySubscriptXOffset",type:"SHORT",value:0},{name:"ySubscriptYOffset",type:"SHORT",value:140},{name:"ySuperscriptXSize",type:"SHORT",value:650},{name:"ySuperscriptYSize",type:"SHORT",value:699},{name:"ySuperscriptXOffset",type:"SHORT",value:0},{name:"ySuperscriptYOffset",type:"SHORT",value:479},{name:"yStrikeoutSize",type:"SHORT",value:49},{name:"yStrikeoutPosition",type:"SHORT",value:258},{name:"sFamilyClass",type:"SHORT",value:0},{name:"bFamilyType",type:"BYTE",value:0},{name:"bSerifStyle",type:"BYTE",value:0},{name:"bWeight",type:"BYTE",value:0},{name:"bProportion",type:"BYTE",value:0},{name:"bContrast",type:"BYTE",value:0},{name:"bStrokeVariation",type:"BYTE",value:0},{name:"bArmStyle",type:"BYTE",value:0},{name:"bLetterform",type:"BYTE",value:0},{name:"bMidline",type:"BYTE",value:0},{name:"bXHeight",type:"BYTE",value:0},{name:"ulUnicodeRange1",type:"ULONG",value:0},{name:"ulUnicodeRange2",type:"ULONG",value:0},{name:"ulUnicodeRange3",type:"ULONG",value:0},{name:"ulUnicodeRange4",type:"ULONG",value:0},{name:"achVendID",type:"CHARARRAY",value:"XXXX"},{name:"fsSelection",type:"USHORT",value:0},{name:"usFirstCharIndex",type:"USHORT",value:0},{name:"usLastCharIndex",type:"USHORT",value:0},{name:"sTypoAscender",type:"SHORT",value:0},{name:"sTypoDescender",type:"SHORT",value:0},{name:"sTypoLineGap",type:"SHORT",value:0},{name:"usWinAscent",type:"USHORT",value:0},{name:"usWinDescent",type:"USHORT",value:0},{name:"ulCodePageRange1",type:"ULONG",value:0},{name:"ulCodePageRange2",type:"ULONG",value:0},{name:"sxHeight",type:"SHORT",value:0},{name:"sCapHeight",type:"SHORT",value:0},{name:"usDefaultChar",type:"USHORT",value:0},{name:"usBreakChar",type:"USHORT",value:0},{name:"usMaxContext",type:"USHORT",value:0}],f)}r.unicodeRanges=o,r.getUnicodeRange=A,r.parse=c,r.make=u}),e0=Ge(r=>{"use strict";var e=xo(),i=Tt(),o=tr();function A(u,f){var p={},g=new i.Parser(u,f),m;switch(p.version=g.parseVersion(),p.italicAngle=g.parseFixed(),p.underlinePosition=g.parseShort(),p.underlineThickness=g.parseShort(),p.isFixedPitch=g.parseULong(),p.minMemType42=g.parseULong(),p.maxMemType42=g.parseULong(),p.minMemType1=g.parseULong(),p.maxMemType1=g.parseULong(),p.version){case 1:p.names=e.standardNames.slice();break;case 2:for(p.numberOfGlyphs=g.parseUShort(),p.glyphNameIndex=new Array(p.numberOfGlyphs),m=0;m<p.numberOfGlyphs;m++)p.glyphNameIndex[m]=g.parseUShort();for(p.names=[],m=0;m<p.numberOfGlyphs;m++)if(p.glyphNameIndex[m]>=e.standardNames.length){var E=g.parseChar();p.names.push(g.parseString(E))}break;case 2.5:for(p.numberOfGlyphs=g.parseUShort(),p.offset=new Array(p.numberOfGlyphs),m=0;m<p.numberOfGlyphs;m++)p.offset[m]=g.parseChar();break}return p}function c(){return new o.Table("post",[{name:"version",type:"FIXED",value:196608},{name:"italicAngle",type:"FIXED",value:0},{name:"underlinePosition",type:"FWORD",value:0},{name:"underlineThickness",type:"FWORD",value:0},{name:"isFixedPitch",type:"ULONG",value:0},{name:"minMemType42",type:"ULONG",value:0},{name:"maxMemType42",type:"ULONG",value:0},{name:"minMemType1",type:"ULONG",value:0},{name:"maxMemType1",type:"ULONG",value:0}])}r.parse=A,r.make=c}),wF=Ge(r=>{"use strict";var e=ur(),i=tr(),o=Jm(),A=jm(),c=_m(),u=Zm(),f=Xm(),p=zm(),g=qm(),m=Km(),E=$m(),b=e0();function y(M){return Math.log(M)/Math.log(2)|0}function Q(M){for(;M.length%4!==0;)M.push(0);for(var O=0,P=0;P<M.length;P+=4)O+=(M[P]<<24)+(M[P+1]<<16)+(M[P+2]<<8)+M[P+3];return O%=Math.pow(2,32),O}function v(M,O,P,R){return new i.Table("Table Record",[{name:"tag",type:"TAG",value:M!==void 0?M:""},{name:"checkSum",type:"ULONG",value:O!==void 0?O:0},{name:"offset",type:"ULONG",value:P!==void 0?P:0},{name:"length",type:"ULONG",value:R!==void 0?R:0}])}function I(M){var O=new i.Table("sfnt",[{name:"version",type:"TAG",value:"OTTO"},{name:"numTables",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);O.tables=M,O.numTables=M.length;var P=Math.pow(2,y(O.numTables));O.searchRange=16*P,O.entrySelector=y(P),O.rangeShift=O.numTables*16-O.searchRange;for(var R=[],re=[],q=O.sizeOf()+v().sizeOf()*O.numTables;q%4!==0;)q+=1,re.push({name:"padding",type:"BYTE",value:0});for(var le=0;le<M.length;le+=1){var Ae=M[le];e.argument(Ae.tableName.length===4,"Table name"+Ae.tableName+" is invalid.");var ie=Ae.sizeOf(),se=v(Ae.tableName,Q(Ae.encode()),q,ie);for(R.push({name:se.tag+" Table Record",type:"TABLE",value:se}),re.push({name:Ae.tableName+" table",type:"TABLE",value:Ae}),q+=ie,e.argument(!isNaN(q),"Something went wrong calculating the offset.");q%4!==0;)q+=1,re.push({name:"padding",type:"BYTE",value:0})}return R.sort(function(ye,fe){return ye.value.tag>fe.value.tag?1:-1}),O.fields=O.fields.concat(R),O.fields=O.fields.concat(re),O}function F(M,O,P){for(var R=0;R<O.length;R+=1){var re=M.charToGlyphIndex(O[R]);if(re>0){var q=M.glyphs.get(re);return q.getMetrics()}}return P}function k(M){for(var O=0,P=0;P<M.length;P+=1)O+=M[P];return O/M.length}function _(M){for(var O=[],P=[],R=[],re=[],q=[],le=[],Ae=[],ie,se=0,ye=0,fe=0,Pe=0,Be=0,Ee=0;Ee<M.glyphs.length;Ee+=1){var me=M.glyphs.get(Ee),ke=me.unicode|0;(ie>ke||ie===null)&&(ie=ke),se<ke&&(se=ke);var Fe=E.getUnicodeRange(ke);if(Fe<32)ye|=1<<Fe;else if(Fe<64)fe|=1<<Fe-32;else if(Fe<96)Pe|=1<<Fe-64;else if(Fe<123)Be|=1<<Fe-96;else throw new Error("Unicode ranges bits > 123 are reserved for internal usage");if(me.name!==".notdef"){var W=me.getMetrics();O.push(W.xMin),P.push(W.yMin),R.push(W.xMax),re.push(W.yMax),le.push(W.leftSideBearing),Ae.push(W.rightSideBearing),q.push(me.advanceWidth)}}var N={xMin:Math.min.apply(null,O),yMin:Math.min.apply(null,P),xMax:Math.max.apply(null,R),yMax:Math.max.apply(null,re),advanceWidthMax:Math.max.apply(null,q),advanceWidthAvg:k(q),minLeftSideBearing:Math.min.apply(null,le),maxLeftSideBearing:Math.max.apply(null,le),minRightSideBearing:Math.min.apply(null,Ae)};N.ascender=M.ascender!==void 0?M.ascender:N.yMax,N.descender=M.descender!==void 0?M.descender:N.yMin;var J=c.make({unitsPerEm:M.unitsPerEm,xMin:N.xMin,yMin:N.yMin,xMax:N.xMax,yMax:N.yMax}),z=u.make({ascender:N.ascender,descender:N.descender,advanceWidthMax:N.advanceWidthMax,minLeftSideBearing:N.minLeftSideBearing,minRightSideBearing:N.minRightSideBearing,xMaxExtent:N.maxLeftSideBearing+(N.xMax-N.xMin),numberOfHMetrics:M.glyphs.length}),j=g.make(M.glyphs.length),K=E.make({xAvgCharWidth:Math.round(N.advanceWidthAvg),usWeightClass:500,usWidthClass:5,usFirstCharIndex:ie,usLastCharIndex:se,ulUnicodeRange1:ye,ulUnicodeRange2:fe,ulUnicodeRange3:Pe,ulUnicodeRange4:Be,sTypoAscender:N.ascender,sTypoDescender:N.descender,sTypoLineGap:0,usWinAscent:N.ascender,usWinDescent:-N.descender,sxHeight:F(M,"xyvw",{yMax:0}).yMax,sCapHeight:F(M,"HIKLEFJMNTZBDPRAGOQSUVWXY",N).yMax,usBreakChar:M.hasChar(" ")?32:0}),G=f.make(M.glyphs),X=o.make(M.glyphs),D=M.getEnglishName("fontFamily"),pe=M.getEnglishName("fontSubfamily"),ce=D+" "+pe,Qe=M.getEnglishName("postScriptName");Qe||(Qe=D.replace(/\s/g,"")+"-"+pe);var Z={};for(var H in M.names)Z[H]=M.names[H];Z.uniqueID||(Z.uniqueID={en:M.getEnglishName("manufacturer")+":"+ce}),Z.postScriptName||(Z.postScriptName={en:Qe}),Z.preferredFamily||(Z.preferredFamily=M.names.fontFamily),Z.preferredSubfamily||(Z.preferredSubfamily=M.names.fontSubfamily);var ne=[],Oe=m.make(Z,ne),De=ne.length>0?p.make(ne):void 0,it=b.make(),Ze=A.make(M.glyphs,{version:M.getEnglishName("version"),fullName:ce,familyName:D,weightName:pe,postScriptName:Qe,unitsPerEm:M.unitsPerEm}),Xe=[J,z,j,K,Oe,X,it,Ze,G];De&&Xe.push(De);var wt=I(Xe),te=wt.encode(),ve=Q(te),be=wt.fields,ue=!1;for(Ee=0;Ee<be.length;Ee+=1)if(be[Ee].name==="head table"){be[Ee].value.checkSumAdjustment=2981146554-ve,ue=!0;break}if(!ue)throw new Error("Could not find head table with checkSum to adjust.");return wt}r.computeCheckSum=Q,r.make=I,r.fontToTable=_}),yF=Ge(r=>{"use strict";var e=$n(),i=wF(),o=xo(),A=Nl();function c(u){u=u||{},this.names={fontFamily:{en:u.familyName||" "},fontSubfamily:{en:u.styleName||" "},designer:{en:u.designer||" "},designerURL:{en:u.designerURL||" "},manufacturer:{en:u.manufacturer||" "},manufacturerURL:{en:u.manufacturerURL||" "},license:{en:u.license||" "},licenseURL:{en:u.licenseURL||" "},version:{en:u.version||"Version 0.1"},description:{en:u.description||" "},copyright:{en:u.copyright||" "},trademark:{en:u.trademark||" "}},this.unitsPerEm=u.unitsPerEm||1e3,this.ascender=u.ascender,this.descender=u.descender,this.supported=!0,this.glyphs=new A.GlyphSet(this,u.glyphs||[]),this.encoding=new o.DefaultEncoding(this),this.tables={}}c.prototype.hasChar=function(u){return this.encoding.charToGlyphIndex(u)!==null},c.prototype.charToGlyphIndex=function(u){return this.encoding.charToGlyphIndex(u)},c.prototype.charToGlyph=function(u){var f=this.charToGlyphIndex(u),p=this.glyphs.get(f);return p||(p=this.glyphs.get(0)),p},c.prototype.stringToGlyphs=function(u){for(var f=[],p=0;p<u.length;p+=1){var g=u[p];f.push(this.charToGlyph(g))}return f},c.prototype.nameToGlyphIndex=function(u){return this.glyphNames.nameToGlyphIndex(u)},c.prototype.nameToGlyph=function(u){var f=this.nametoGlyphIndex(u),p=this.glyphs.get(f);return p||(p=this.glyphs.get(0)),p},c.prototype.glyphIndexToName=function(u){return this.glyphNames.glyphIndexToName?this.glyphNames.glyphIndexToName(u):""},c.prototype.getKerningValue=function(u,f){u=u.index||u,f=f.index||f;var p=this.getGposKerningValue;return p?p(u,f):this.kerningPairs[u+","+f]||0},c.prototype.forEachGlyph=function(u,f,p,g,m,E){f=f!==void 0?f:0,p=p!==void 0?p:0,g=g!==void 0?g:72,m=m||{};for(var b=m.kerning===void 0?!0:m.kerning,y=1/this.unitsPerEm*g,Q=this.stringToGlyphs(u),v=0;v<Q.length;v+=1){var I=Q[v];if(E(I,f,p,g,m),I.advanceWidth&&(f+=I.advanceWidth*y),b&&v<Q.length-1){var F=this.getKerningValue(I,Q[v+1]);f+=F*y}}},c.prototype.getPath=function(u,f,p,g,m){var E=new e.Path;return this.forEachGlyph(u,f,p,g,m,function(b,y,Q,v){var I=b.getPath(y,Q,v);E.extend(I)}),E},c.prototype.draw=function(u,f,p,g,m,E){this.getPath(f,p,g,m,E).draw(u)},c.prototype.drawPoints=function(u,f,p,g,m,E){this.forEachGlyph(f,p,g,m,E,function(b,y,Q,v){b.drawPoints(u,y,Q,v)})},c.prototype.drawMetrics=function(u,f,p,g,m,E){this.forEachGlyph(f,p,g,m,E,function(b,y,Q,v){b.drawMetrics(u,y,Q,v)})},c.prototype.getEnglishName=function(u){var f=this.names[u];if(f)return f.en},c.prototype.validate=function(){var u=[],f=this;function p(m,E){m||u.push(E)}function g(m){var E=f.getEnglishName(m);p(E&&E.trim().length>0,"No English "+m+" specified.")}g("fontFamily"),g("weightName"),g("manufacturer"),g("copyright"),g("version"),p(this.unitsPerEm>0,"No unitsPerEm specified.")},c.prototype.toTables=function(){return i.fontToTable(this)},c.prototype.toBuffer=function(){for(var u=this.toTables(),f=u.encode(),p=new ArrayBuffer(f.length),g=new Uint8Array(p),m=0;m<f.length;m++)g[m]=f[m];return p},c.prototype.download=function(){var u=this.getEnglishName("fontFamily"),f=this.getEnglishName("fontSubfamily"),p=u.replace(/\s/g,"")+"-"+f+".otf",g=this.toBuffer();window.requestFileSystem=window.requestFileSystem||window.webkitRequestFileSystem,window.requestFileSystem(window.TEMPORARY,g.byteLength,function(m){m.root.getFile(p,{create:!0},function(E){E.createWriter(function(b){var y=new DataView(g),Q=new Blob([y],{type:"font/opentype"});b.write(Q),b.addEventListener("writeend",function(){location.href=E.toURL()},!1)})})},function(m){throw m})},r.Font=c}),CF=Ge(r=>{"use strict";var e=ur(),i=Tt(),o=tr();function A(E,b){var y=JSON.stringify(E),Q=256;for(var v in b){var I=parseInt(v);if(!(!I||I<256)){if(JSON.stringify(b[v])===y)return I;Q<=I&&(Q=I+1)}}return b[Q]=E,Q}function c(E,b){var y=A(E.name,b);return new o.Table("fvarAxis",[{name:"tag",type:"TAG",value:E.tag},{name:"minValue",type:"FIXED",value:E.minValue<<16},{name:"defaultValue",type:"FIXED",value:E.defaultValue<<16},{name:"maxValue",type:"FIXED",value:E.maxValue<<16},{name:"flags",type:"USHORT",value:0},{name:"nameID",type:"USHORT",value:y}])}function u(E,b,y){var Q={},v=new i.Parser(E,b);return Q.tag=v.parseTag(),Q.minValue=v.parseFixed(),Q.defaultValue=v.parseFixed(),Q.maxValue=v.parseFixed(),v.skip("uShort",1),Q.name=y[v.parseUShort()]||{},Q}function f(E,b,y){for(var Q=A(E.name,y),v=[{name:"nameID",type:"USHORT",value:Q},{name:"flags",type:"USHORT",value:0}],I=0;I<b.length;++I){var F=b[I].tag;v.push({name:"axis "+F,type:"FIXED",value:E.coordinates[F]<<16})}return new o.Table("fvarInstance",v)}function p(E,b,y,Q){var v={},I=new i.Parser(E,b);v.name=Q[I.parseUShort()]||{},I.skip("uShort",1),v.coordinates={};for(var F=0;F<y.length;++F)v.coordinates[y[F].tag]=I.parseFixed();return v}function g(E,b){var y=new o.Table("fvar",[{name:"version",type:"ULONG",value:65536},{name:"offsetToData",type:"USHORT",value:0},{name:"countSizePairs",type:"USHORT",value:2},{name:"axisCount",type:"USHORT",value:E.axes.length},{name:"axisSize",type:"USHORT",value:20},{name:"instanceCount",type:"USHORT",value:E.instances.length},{name:"instanceSize",type:"USHORT",value:4+E.axes.length*4}]);y.offsetToData=y.sizeOf();for(var Q=0;Q<E.axes.length;Q++)y.fields.push({name:"axis "+Q,type:"TABLE",value:c(E.axes[Q],b)});for(var v=0;v<E.instances.length;v++)y.fields.push({name:"instance "+v,type:"TABLE",value:f(E.instances[v],E.axes,b)});return y}function m(E,b,y){var Q=new i.Parser(E,b),v=Q.parseULong();e.argument(v===65536,"Unsupported fvar table version.");var I=Q.parseOffset16();Q.skip("uShort",1);for(var F=Q.parseUShort(),k=Q.parseUShort(),_=Q.parseUShort(),M=Q.parseUShort(),O=[],P=0;P<F;P++)O.push(u(E,b+I+P*k,y));for(var R=[],re=b+I+F*k,q=0;q<_;q++)R.push(p(E,re+q*M,O,y));return{axes:O,instances:R}}r.make=g,r.parse=m}),bF=Ge(r=>{"use strict";var e=ur(),i=Nl(),o=Tt(),A=$n();function c(b,y,Q,v,I){var F;return(y&v)>0?(F=b.parseByte(),y&I||(F=-F),F=Q+F):(y&I)>0?F=Q:F=Q+b.parseShort(),F}function u(b,y,Q){var v=new o.Parser(y,Q);b.numberOfContours=v.parseShort(),b.xMin=v.parseShort(),b.yMin=v.parseShort(),b.xMax=v.parseShort(),b.yMax=v.parseShort();var I,F;if(b.numberOfContours>0){var k,_=b.endPointIndices=[];for(k=0;k<b.numberOfContours;k+=1)_.push(v.parseUShort());for(b.instructionLength=v.parseUShort(),b.instructions=[],k=0;k<b.instructionLength;k+=1)b.instructions.push(v.parseByte());var M=_[_.length-1]+1;for(I=[],k=0;k<M;k+=1)if(F=v.parseByte(),I.push(F),(F&8)>0)for(var O=v.parseByte(),P=0;P<O;P+=1)I.push(F),k+=1;if(e.argument(I.length===M,"Bad flags."),_.length>0){var R=[],re;if(M>0){for(k=0;k<M;k+=1)F=I[k],re={},re.onCurve=!!(F&1),re.lastPointOfContour=_.indexOf(k)>=0,R.push(re);var q=0;for(k=0;k<M;k+=1)F=I[k],re=R[k],re.x=c(v,F,q,2,16),q=re.x;var le=0;for(k=0;k<M;k+=1)F=I[k],re=R[k],re.y=c(v,F,le,4,32),le=re.y}b.points=R}else b.points=[]}else if(b.numberOfContours===0)b.points=[];else{b.isComposite=!0,b.points=[],b.components=[];for(var Ae=!0;Ae;){I=v.parseUShort();var ie={glyphIndex:v.parseUShort(),xScale:1,scale01:0,scale10:0,yScale:1,dx:0,dy:0};(I&1)>0?(ie.dx=v.parseShort(),ie.dy=v.parseShort()):(ie.dx=v.parseChar(),ie.dy=v.parseChar()),(I&8)>0?ie.xScale=ie.yScale=v.parseF2Dot14():(I&64)>0?(ie.xScale=v.parseF2Dot14(),ie.yScale=v.parseF2Dot14()):(I&128)>0&&(ie.xScale=v.parseF2Dot14(),ie.scale01=v.parseF2Dot14(),ie.scale10=v.parseF2Dot14(),ie.yScale=v.parseF2Dot14()),b.components.push(ie),Ae=!!(I&32)}}}function f(b,y){for(var Q=[],v=0;v<b.length;v+=1){var I=b[v],F={x:y.xScale*I.x+y.scale01*I.y+y.dx,y:y.scale10*I.x+y.yScale*I.y+y.dy,onCurve:I.onCurve,lastPointOfContour:I.lastPointOfContour};Q.push(F)}return Q}function p(b){for(var y=[],Q=[],v=0;v<b.length;v+=1){var I=b[v];Q.push(I),I.lastPointOfContour&&(y.push(Q),Q=[])}return e.argument(Q.length===0,"There are still points left in the current contour."),y}function g(b){var y=new A.Path;if(!b)return y;for(var Q=p(b),v=0;v<Q.length;v+=1){var I=Q[v],F=I[0],k=I[I.length-1],_,M;F.onCurve?(_=null,M=!0):(k.onCurve?F=k:F={x:(F.x+k.x)/2,y:(F.y+k.y)/2},_=F,M=!1),y.moveTo(F.x,F.y);for(var O=M?1:0;O<I.length;O+=1){var P=I[O],R=O===0?F:I[O-1];if(R.onCurve&&P.onCurve)y.lineTo(P.x,P.y);else if(R.onCurve&&!P.onCurve)_=P;else if(!R.onCurve&&!P.onCurve){var re={x:(R.x+P.x)/2,y:(R.y+P.y)/2};y.quadraticCurveTo(R.x,R.y,re.x,re.y),_=P}else if(!R.onCurve&&P.onCurve)y.quadraticCurveTo(_.x,_.y,P.x,P.y),_=null;else throw new Error("Invalid state.")}F!==k&&(_?y.quadraticCurveTo(_.x,_.y,F.x,F.y):y.lineTo(F.x,F.y))}return y.closePath(),y}function m(b,y){if(y.isComposite)for(var Q=0;Q<y.components.length;Q+=1){var v=y.components[Q],I=b.get(v.glyphIndex);if(I.getPath(),I.points){var F=f(I.points,v);y.points=y.points.concat(F)}}return g(y.points)}function E(b,y,Q,v){var I=new i.GlyphSet(v),F;for(F=0;F<Q.length-1;F+=1){var k=Q[F],_=Q[F+1];k!==_?I.push(F,i.ttfGlyphLoader(v,F,u,b,y+k,m)):I.push(F,i.glyphLoader(v,F))}return I}r.parse=E}),xF=Ge(r=>{"use strict";var e=ur(),i=Tt();function o(g,m){for(var E=new i.Parser(g,m),b=E.parseUShort(),y=[],Q=0;Q<b;Q++)y[E.parseTag()]={offset:E.parseUShort()};return y}function A(g,m){var E=new i.Parser(g,m),b=E.parseUShort(),y=E.parseUShort();if(b===1)return E.parseUShortList(y);if(b===2){for(var Q=[];y--;)for(var v=E.parseUShort(),I=E.parseUShort(),F=E.parseUShort(),k=v;k<=I;k++)Q[F++]=k;return Q}}function c(g,m){var E=new i.Parser(g,m),b=E.parseUShort();if(b===1){var y=E.parseUShort(),Q=E.parseUShort(),v=E.parseUShortList(Q);return function(O){return v[O-y]||0}}else if(b===2){for(var I=E.parseUShort(),F=[],k=[],_=[],M=0;M<I;M++)F[M]=E.parseUShort(),k[M]=E.parseUShort(),_[M]=E.parseUShort();return function(O){for(var P=0,R=F.length-1;P<R;){var re=P+R+1>>1;O<F[re]?R=re-1:P=re}return F[P]<=O&&O<=k[P]&&_[P]||0}}}function u(g,m){var E=new i.Parser(g,m),b=E.parseUShort(),y=E.parseUShort(),Q=A(g,m+y),v=E.parseUShort(),I=E.parseUShort(),F,k;if(!(v!==4||I!==0)){var _={};if(b===1){for(var M=E.parseUShort(),O=[],P=E.parseOffset16List(M),R=0;R<M;R++){var re=P[R],q=_[re];if(!q){q={},E.relativeOffset=re;for(var le=E.parseUShort();le--;){var Ae=E.parseUShort();v&&(F=E.parseShort()),I&&(k=E.parseShort()),q[Ae]=F}}O[Q[R]]=q}return function(N,J){var z=O[N];if(z)return z[J]}}else if(b===2){for(var ie=E.parseUShort(),se=E.parseUShort(),ye=E.parseUShort(),fe=E.parseUShort(),Pe=c(g,m+ie),Be=c(g,m+se),Ee=[],me=0;me<ye;me++)for(var ke=Ee[me]=[],Fe=0;Fe<fe;Fe++)v&&(F=E.parseShort()),I&&(k=E.parseShort()),ke[Fe]=F;var W={};for(me=0;me<Q.length;me++)W[Q[me]]=1;return function(N,J){if(W[N]){var z=Pe(N),j=Be(J),K=Ee[z];if(K)return K[j]}}}}}function f(g,m){var E=new i.Parser(g,m),b=E.parseUShort(),y=E.parseUShort(),Q=y&16,v=E.parseUShort(),I=E.parseOffset16List(v),F={lookupType:b,lookupFlag:y,markFilteringSet:Q?E.parseUShort():-1};if(b===2){for(var k=[],_=0;_<v;_++)k.push(u(g,m+I[_]));F.getKerningValue=function(M,O){for(var P=k.length;P--;){var R=k[P](M,O);if(R!==void 0)return R}return 0}}return F}function p(g,m,E){var b=new i.Parser(g,m),y=b.parseFixed();e.argument(y===1,"Unsupported GPOS table version."),o(g,m+b.parseUShort()),o(g,m+b.parseUShort());var Q=b.parseUShort();b.relativeOffset=Q;for(var v=b.parseUShort(),I=b.parseOffset16List(v),F=m+Q,k=0;k<v;k++){var _=f(g,F+I[k]);_.lookupType===2&&!E.getGposKerningValue&&(E.getGposKerningValue=_.getKerningValue)}}r.parse=p}),QF=Ge(r=>{"use strict";var e=ur(),i=Tt();function o(A,c){var u={},f=new i.Parser(A,c),p=f.parseUShort();e.argument(p===0,"Unsupported kern table version."),f.skip("uShort",1);var g=f.parseUShort();e.argument(g===0,"Unsupported kern sub-table version."),f.skip("uShort",2);var m=f.parseUShort();f.skip("uShort",3);for(var E=0;E<m;E+=1){var b=f.parseUShort(),y=f.parseUShort(),Q=f.parseShort();u[b+","+y]=Q}return u}r.parse=o}),vF=Ge(r=>{"use strict";var e=Tt();function i(o,A,c,u){for(var f=new e.Parser(o,A),p=u?f.parseUShort:f.parseULong,g=[],m=0;m<c+1;m+=1){var E=p.call(f);u&&(E*=2),g.push(E)}return g}r.parse=i}),IF=Ge(r=>{"use strict";var e=xo(),i=yF(),o=Vm(),A=Tt(),c=$n(),u=Jm(),f=jm(),p=CF(),g=bF(),m=xF(),E=_m(),b=Zm(),y=Xm(),Q=QF(),v=zm(),I=vF(),F=qm(),k=Km(),_=$m(),M=e0();function O(Ae){for(var ie=new ArrayBuffer(Ae.length),se=new Uint8Array(ie),ye=0;ye<Ae.length;ye+=1)se[ye]=Ae[ye];return ie}function P(Ae,ie){var se=We("fs");se.readFile(Ae,function(ye,fe){if(ye)return ie(ye.message);ie(null,O(fe))})}function R(Ae,ie){var se=new XMLHttpRequest;se.open("get",Ae,!0),se.responseType="arraybuffer",se.onload=function(){return se.status!==200?ie("Font could not be loaded: "+se.statusText):ie(null,se.response)},se.send()}function re(Ae){var ie,se,ye,fe,Pe,Be,Ee,me,ke,Fe,W=new i.Font,N=new DataView(Ae,0),J=A.getFixed(N,0);if(J===1)W.outlinesFormat="truetype";else if(J=A.getTag(N,0),J==="OTTO")W.outlinesFormat="cff";else throw new Error("Unsupported OpenType version "+J);for(var z=A.getUShort(N,4),j=12,K=0;K<z;K+=1){var G=A.getTag(N,j),X=A.getULong(N,j+8);switch(G){case"cmap":W.tables.cmap=u.parse(N,X),W.encoding=new e.CmapEncoding(W.tables.cmap);break;case"fvar":fe=X;break;case"head":W.tables.head=E.parse(N,X),W.unitsPerEm=W.tables.head.unitsPerEm,ie=W.tables.head.indexToLocFormat;break;case"hhea":W.tables.hhea=b.parse(N,X),W.ascender=W.tables.hhea.ascender,W.descender=W.tables.hhea.descender,W.numberOfHMetrics=W.tables.hhea.numberOfHMetrics;break;case"hmtx":Ee=X;break;case"ltag":se=v.parse(N,X);break;case"maxp":W.tables.maxp=F.parse(N,X),W.numGlyphs=W.tables.maxp.numGlyphs;break;case"name":Fe=X;break;case"OS/2":W.tables.os2=_.parse(N,X);break;case"post":W.tables.post=M.parse(N,X),W.glyphNames=new e.GlyphNames(W.tables.post);break;case"glyf":Pe=X;break;case"loca":ke=X;break;case"CFF ":ye=X;break;case"kern":me=X;break;case"GPOS":Be=X;break}j+=16}if(W.tables.name=k.parse(N,Fe,se),W.names=W.tables.name,Pe&&ke){var D=ie===0,pe=I.parse(N,ke,W.numGlyphs,D);W.glyphs=g.parse(N,Pe,pe,W)}else if(ye)f.parse(N,ye,W);else throw new Error("Font doesn't contain TrueType or CFF outlines.");return y.parse(N,Ee,W.numberOfHMetrics,W.numGlyphs,W.glyphs),e.addGlyphNames(W),me?W.kerningPairs=Q.parse(N,me):W.kerningPairs={},Be&&m.parse(N,Be,W),fe&&(W.tables.fvar=p.parse(N,fe,W.names)),W}function q(Ae,ie){var se=typeof window>"u",ye=se?P:R;ye(Ae,function(fe,Pe){if(fe)return ie(fe);var Be=re(Pe);return ie(null,Be)})}function le(Ae){var ie=We("fs"),se=ie.readFileSync(Ae);return re(O(se))}r._parse=A,r.Font=i.Font,r.Glyph=o.Glyph,r.Path=c.Path,r.parse=re,r.load=q,r.loadSync=le}),t0=Ge((r,e)=>{"use strict";var i=We("util"),o=We("stream"),A=e.exports=function(){o.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};i.inherits(A,o),A.prototype.read=function(c,u){this._reads.push({length:Math.abs(c),allowLess:c<0,func:u}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))},A.prototype.write=function(c,u){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let f;return Buffer.isBuffer(c)?f=c:f=Buffer.from(c,u||this._encoding),this._buffers.push(f),this._buffered+=f.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused},A.prototype.end=function(c,u){c&&this.write(c,u),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))},A.prototype.destroySoon=A.prototype.end,A.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()},A.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))},A.prototype._processReadAllowingLess=function(c){this._reads.shift();let u=this._buffers[0];u.length>c.length?(this._buffered-=c.length,this._buffers[0]=u.slice(c.length),c.func.call(this,u.slice(0,c.length))):(this._buffered-=u.length,this._buffers.shift(),c.func.call(this,u))},A.prototype._processRead=function(c){this._reads.shift();let u=0,f=0,p=Buffer.alloc(c.length);for(;u<c.length;){let g=this._buffers[f++],m=Math.min(g.length,c.length-u);g.copy(p,u,0,m),u+=m,m!==g.length&&(this._buffers[--f]=g.slice(m))}f>0&&this._buffers.splice(0,f),this._buffered-=c.length,c.func.call(this,p)},A.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let c=this._reads[0];if(c.allowLess)this._processReadAllowingLess(c);else if(this._buffered>=c.length)this._processRead(c);else break}this._buffers&&!this.writable&&this._end()}catch(c){this.emit("error",c)}}}),r0=Ge(r=>{"use strict";var e=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];r.getImagePasses=function(i,o){let A=[],c=i%8,u=o%8,f=(i-c)/8,p=(o-u)/8;for(let g=0;g<e.length;g++){let m=e[g],E=f*m.x.length,b=p*m.y.length;for(let y=0;y<m.x.length&&m.x[y]<c;y++)E++;for(let y=0;y<m.y.length&&m.y[y]<u;y++)b++;E>0&&b>0&&A.push({width:E,height:b,index:g})}return A},r.getInterlaceIterator=function(i){return function(o,A,c){let u=o%e[c].x.length,f=(o-u)/e[c].x.length*8+e[c].x[u],p=A%e[c].y.length,g=(A-p)/e[c].y.length*8+e[c].y[p];return f*4+g*i*4}}}),i0=Ge((r,e)=>{"use strict";e.exports=function(i,o,A){let c=i+o-A,u=Math.abs(c-i),f=Math.abs(c-o),p=Math.abs(c-A);return u<=f&&u<=p?i:f<=p?o:A}}),n0=Ge((r,e)=>{"use strict";var i=r0(),o=i0();function A(u,f,p){let g=u*f;return p!==8&&(g=Math.ceil(g/(8/p))),g}var c=e.exports=function(u,f){let p=u.width,g=u.height,m=u.interlace,E=u.bpp,b=u.depth;if(this.read=f.read,this.write=f.write,this.complete=f.complete,this._imageIndex=0,this._images=[],m){let y=i.getImagePasses(p,g);for(let Q=0;Q<y.length;Q++)this._images.push({byteWidth:A(y[Q].width,E,b),height:y[Q].height,lineIndex:0})}else this._images.push({byteWidth:A(p,E,b),height:g,lineIndex:0});b===8?this._xComparison=E:b===16?this._xComparison=E*2:this._xComparison=1};c.prototype.start=function(){this.read(this._images[this._imageIndex].byteWidth+1,this._reverseFilterLine.bind(this))},c.prototype._unFilterType1=function(u,f,p){let g=this._xComparison,m=g-1;for(let E=0;E<p;E++){let b=u[1+E],y=E>m?f[E-g]:0;f[E]=b+y}},c.prototype._unFilterType2=function(u,f,p){let g=this._lastLine;for(let m=0;m<p;m++){let E=u[1+m],b=g?g[m]:0;f[m]=E+b}},c.prototype._unFilterType3=function(u,f,p){let g=this._xComparison,m=g-1,E=this._lastLine;for(let b=0;b<p;b++){let y=u[1+b],Q=E?E[b]:0,v=b>m?f[b-g]:0,I=Math.floor((v+Q)/2);f[b]=y+I}},c.prototype._unFilterType4=function(u,f,p){let g=this._xComparison,m=g-1,E=this._lastLine;for(let b=0;b<p;b++){let y=u[1+b],Q=E?E[b]:0,v=b>m?f[b-g]:0,I=b>m&&E?E[b-g]:0,F=o(v,Q,I);f[b]=y+F}},c.prototype._reverseFilterLine=function(u){let f=u[0],p,g=this._images[this._imageIndex],m=g.byteWidth;if(f===0)p=u.slice(1,m+1);else switch(p=Buffer.alloc(m),f){case 1:this._unFilterType1(u,p,m);break;case 2:this._unFilterType2(u,p,m);break;case 3:this._unFilterType3(u,p,m);break;case 4:this._unFilterType4(u,p,m);break;default:throw new Error("Unrecognised filter type - "+f)}this.write(p),g.lineIndex++,g.lineIndex>=g.height?(this._lastLine=null,this._imageIndex++,g=this._images[this._imageIndex]):this._lastLine=p,g?this.read(g.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}}),FF=Ge((r,e)=>{"use strict";var i=We("util"),o=t0(),A=n0(),c=e.exports=function(u){o.call(this);let f=[],p=this;this._filter=new A(u,{read:this.read.bind(this),write:function(g){f.push(g)},complete:function(){p.emit("complete",Buffer.concat(f))}}),this._filter.start()};i.inherits(c,o)}),es=Ge((r,e)=>{"use strict";e.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}}),s0=Ge((r,e)=>{"use strict";var i=[];(function(){for(let A=0;A<256;A++){let c=A;for(let u=0;u<8;u++)c&1?c=3988292384^c>>>1:c=c>>>1;i[A]=c}})();var o=e.exports=function(){this._crc=-1};o.prototype.write=function(A){for(let c=0;c<A.length;c++)this._crc=i[(this._crc^A[c])&255]^this._crc>>>8;return!0},o.prototype.crc32=function(){return this._crc^-1},o.crc32=function(A){let c=-1;for(let u=0;u<A.length;u++)c=i[(c^A[u])&255]^c>>>8;return c^-1}}),o0=Ge((r,e)=>{"use strict";var i=es(),o=s0(),A=e.exports=function(c,u){this._options=c,c.checkCRC=c.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[i.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[i.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[i.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[i.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[i.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[i.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=u.read,this.error=u.error,this.metadata=u.metadata,this.gamma=u.gamma,this.transColor=u.transColor,this.palette=u.palette,this.parsed=u.parsed,this.inflateData=u.inflateData,this.finished=u.finished,this.simpleTransparency=u.simpleTransparency,this.headersFinished=u.headersFinished||function(){}};A.prototype.start=function(){this.read(i.PNG_SIGNATURE.length,this._parseSignature.bind(this))},A.prototype._parseSignature=function(c){let u=i.PNG_SIGNATURE;for(let f=0;f<u.length;f++)if(c[f]!==u[f]){this.error(new Error("Invalid file signature"));return}this.read(8,this._parseChunkBegin.bind(this))},A.prototype._parseChunkBegin=function(c){let u=c.readUInt32BE(0),f=c.readUInt32BE(4),p="";for(let m=4;m<8;m++)p+=String.fromCharCode(c[m]);let g=!!(c[4]&32);if(!this._hasIHDR&&f!==i.TYPE_IHDR){this.error(new Error("Expected IHDR on beggining"));return}if(this._crc=new o,this._crc.write(Buffer.from(p)),this._chunks[f])return this._chunks[f](u);if(!g){this.error(new Error("Unsupported critical chunk type "+p));return}this.read(u+4,this._skipChunk.bind(this))},A.prototype._skipChunk=function(){this.read(8,this._parseChunkBegin.bind(this))},A.prototype._handleChunkEnd=function(){this.read(4,this._parseChunkEnd.bind(this))},A.prototype._parseChunkEnd=function(c){let u=c.readInt32BE(0),f=this._crc.crc32();if(this._options.checkCRC&&f!==u){this.error(new Error("Crc error - "+u+" - "+f));return}this._hasIEND||this.read(8,this._parseChunkBegin.bind(this))},A.prototype._handleIHDR=function(c){this.read(c,this._parseIHDR.bind(this))},A.prototype._parseIHDR=function(c){this._crc.write(c);let u=c.readUInt32BE(0),f=c.readUInt32BE(4),p=c[8],g=c[9],m=c[10],E=c[11],b=c[12];if(p!==8&&p!==4&&p!==2&&p!==1&&p!==16){this.error(new Error("Unsupported bit depth "+p));return}if(!(g in i.COLORTYPE_TO_BPP_MAP)){this.error(new Error("Unsupported color type"));return}if(m!==0){this.error(new Error("Unsupported compression method"));return}if(E!==0){this.error(new Error("Unsupported filter method"));return}if(b!==0&&b!==1){this.error(new Error("Unsupported interlace method"));return}this._colorType=g;let y=i.COLORTYPE_TO_BPP_MAP[this._colorType];this._hasIHDR=!0,this.metadata({width:u,height:f,depth:p,interlace:!!b,palette:!!(g&i.COLORTYPE_PALETTE),color:!!(g&i.COLORTYPE_COLOR),alpha:!!(g&i.COLORTYPE_ALPHA),bpp:y,colorType:g}),this._handleChunkEnd()},A.prototype._handlePLTE=function(c){this.read(c,this._parsePLTE.bind(this))},A.prototype._parsePLTE=function(c){this._crc.write(c);let u=Math.floor(c.length/3);for(let f=0;f<u;f++)this._palette.push([c[f*3],c[f*3+1],c[f*3+2],255]);this.palette(this._palette),this._handleChunkEnd()},A.prototype._handleTRNS=function(c){this.simpleTransparency(),this.read(c,this._parseTRNS.bind(this))},A.prototype._parseTRNS=function(c){if(this._crc.write(c),this._colorType===i.COLORTYPE_PALETTE_COLOR){if(this._palette.length===0){this.error(new Error("Transparency chunk must be after palette"));return}if(c.length>this._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let u=0;u<c.length;u++)this._palette[u][3]=c[u];this.palette(this._palette)}this._colorType===i.COLORTYPE_GRAYSCALE&&this.transColor([c.readUInt16BE(0)]),this._colorType===i.COLORTYPE_COLOR&&this.transColor([c.readUInt16BE(0),c.readUInt16BE(2),c.readUInt16BE(4)]),this._handleChunkEnd()},A.prototype._handleGAMA=function(c){this.read(c,this._parseGAMA.bind(this))},A.prototype._parseGAMA=function(c){this._crc.write(c),this.gamma(c.readUInt32BE(0)/i.GAMMA_DIVISION),this._handleChunkEnd()},A.prototype._handleIDAT=function(c){this._emittedHeadersFinished||(this._emittedHeadersFinished=!0,this.headersFinished()),this.read(-c,this._parseIDAT.bind(this,c))},A.prototype._parseIDAT=function(c,u){if(this._crc.write(u),this._colorType===i.COLORTYPE_PALETTE_COLOR&&this._palette.length===0)throw new Error("Expected palette not found");this.inflateData(u);let f=c-u.length;f>0?this._handleIDAT(f):this._handleChunkEnd()},A.prototype._handleIEND=function(c){this.read(c,this._parseIEND.bind(this))},A.prototype._parseIEND=function(c){this._crc.write(c),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}}),a0=Ge(r=>{"use strict";var e=r0(),i=[function(){},function(f,p,g,m){if(m===p.length)throw new Error("Ran out of data");let E=p[m];f[g]=E,f[g+1]=E,f[g+2]=E,f[g+3]=255},function(f,p,g,m){if(m+1>=p.length)throw new Error("Ran out of data");let E=p[m];f[g]=E,f[g+1]=E,f[g+2]=E,f[g+3]=p[m+1]},function(f,p,g,m){if(m+2>=p.length)throw new Error("Ran out of data");f[g]=p[m],f[g+1]=p[m+1],f[g+2]=p[m+2],f[g+3]=255},function(f,p,g,m){if(m+3>=p.length)throw new Error("Ran out of data");f[g]=p[m],f[g+1]=p[m+1],f[g+2]=p[m+2],f[g+3]=p[m+3]}],o=[function(){},function(f,p,g,m){let E=p[0];f[g]=E,f[g+1]=E,f[g+2]=E,f[g+3]=m},function(f,p,g){let m=p[0];f[g]=m,f[g+1]=m,f[g+2]=m,f[g+3]=p[1]},function(f,p,g,m){f[g]=p[0],f[g+1]=p[1],f[g+2]=p[2],f[g+3]=m},function(f,p,g){f[g]=p[0],f[g+1]=p[1],f[g+2]=p[2],f[g+3]=p[3]}];function A(f,p){let g=[],m=0;function E(){if(m===f.length)throw new Error("Ran out of data");let b=f[m];m++;let y,Q,v,I,F,k,_,M;switch(p){default:throw new Error("unrecognised depth");case 16:_=f[m],m++,g.push((b<<8)+_);break;case 4:_=b&15,M=b>>4,g.push(M,_);break;case 2:F=b&3,k=b>>2&3,_=b>>4&3,M=b>>6&3,g.push(M,_,k,F);break;case 1:y=b&1,Q=b>>1&1,v=b>>2&1,I=b>>3&1,F=b>>4&1,k=b>>5&1,_=b>>6&1,M=b>>7&1,g.push(M,_,k,F,I,v,Q,y);break}}return{get:function(b){for(;g.length<b;)E();let y=g.slice(0,b);return g=g.slice(b),y},resetAfterLine:function(){g.length=0},end:function(){if(m!==f.length)throw new Error("extra data found")}}}function c(f,p,g,m,E,b){let y=f.width,Q=f.height,v=f.index;for(let I=0;I<Q;I++)for(let F=0;F<y;F++){let k=g(F,I,v);i[m](p,E,k,b),b+=m}return b}function u(f,p,g,m,E,b){let y=f.width,Q=f.height,v=f.index;for(let I=0;I<Q;I++){for(let F=0;F<y;F++){let k=E.get(m),_=g(F,I,v);o[m](p,k,_,b)}E.resetAfterLine()}}r.dataToBitMap=function(f,p){let g=p.width,m=p.height,E=p.depth,b=p.bpp,y=p.interlace,Q;E!==8&&(Q=A(f,E));let v;E<=8?v=Buffer.alloc(g*m*4):v=new Uint16Array(g*m*4);let I=Math.pow(2,E)-1,F=0,k,_;if(y)k=e.getImagePasses(g,m),_=e.getInterlaceIterator(g,m);else{let M=0;_=function(){let O=M;return M+=4,O},k=[{width:g,height:m}]}for(let M=0;M<k.length;M++)E===8?F=c(k[M],v,_,b,f,F):u(k[M],v,_,b,Q,I);if(E===8){if(F!==f.length)throw new Error("extra data found")}else Q.end();return v}}),A0=Ge((r,e)=>{"use strict";function i(c,u,f,p,g){let m=0;for(let E=0;E<p;E++)for(let b=0;b<f;b++){let y=g[c[m]];if(!y)throw new Error("index "+c[m]+" not in palette");for(let Q=0;Q<4;Q++)u[m+Q]=y[Q];m+=4}}function o(c,u,f,p,g){let m=0;for(let E=0;E<p;E++)for(let b=0;b<f;b++){let y=!1;if(g.length===1?g[0]===c[m]&&(y=!0):g[0]===c[m]&&g[1]===c[m+1]&&g[2]===c[m+2]&&(y=!0),y)for(let Q=0;Q<4;Q++)u[m+Q]=0;m+=4}}function A(c,u,f,p,g){let m=255,E=Math.pow(2,g)-1,b=0;for(let y=0;y<p;y++)for(let Q=0;Q<f;Q++){for(let v=0;v<4;v++)u[b+v]=Math.floor(c[b+v]*m/E+.5);b+=4}}e.exports=function(c,u,f=!1){let p=u.depth,g=u.width,m=u.height,E=u.colorType,b=u.transColor,y=u.palette,Q=c;return E===3?i(c,Q,g,m,y):(b&&o(c,Q,g,m,b),p!==8&&!f&&(p===16&&(Q=Buffer.alloc(g*m*4)),A(c,Q,g,m,p))),Q}}),TF=Ge((r,e)=>{"use strict";var i=We("util"),o=We("zlib"),A=t0(),c=FF(),u=o0(),f=a0(),p=A0(),g=e.exports=function(m){A.call(this),this._parser=new u(m,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=m,this.writable=!0,this._parser.start()};i.inherits(g,A),g.prototype._handleError=function(m){this.emit("error",m),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0},g.prototype._inflateData=function(m){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=o.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let E=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,b=Math.max(E,o.Z_MIN_CHUNK);this._inflate=o.createInflate({chunkSize:b});let y=E,Q=this.emit.bind(this,"error");this._inflate.on("error",function(I){y&&Q(I)}),this._filter.on("complete",this._complete.bind(this));let v=this._filter.write.bind(this._filter);this._inflate.on("data",function(I){y&&(I.length>y&&(I=I.slice(0,y)),y-=I.length,v(I))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(m)},g.prototype._handleMetaData=function(m){this._metaData=m,this._bitmapInfo=Object.create(m),this._filter=new c(this._bitmapInfo)},g.prototype._handleTransColor=function(m){this._bitmapInfo.transColor=m},g.prototype._handlePalette=function(m){this._bitmapInfo.palette=m},g.prototype._simpleTransparency=function(){this._metaData.alpha=!0},g.prototype._headersFinished=function(){this.emit("metadata",this._metaData)},g.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))},g.prototype._complete=function(m){if(this.errord)return;let E;try{let b=f.dataToBitMap(m,this._bitmapInfo);E=p(b,this._bitmapInfo,this._options.skipRescale),b=null}catch(b){this._handleError(b);return}this.emit("parsed",E)}}),SF=Ge((r,e)=>{"use strict";var i=es();e.exports=function(o,A,c,u){let f=[i.COLORTYPE_COLOR_ALPHA,i.COLORTYPE_ALPHA].indexOf(u.colorType)!==-1;if(u.colorType===u.inputColorType){let F=(function(){let k=new ArrayBuffer(2);return new DataView(k).setInt16(0,256,!0),new Int16Array(k)[0]!==256})();if(u.bitDepth===8||u.bitDepth===16&&F)return o}let p=u.bitDepth!==16?o:new Uint16Array(o.buffer),g=255,m=i.COLORTYPE_TO_BPP_MAP[u.inputColorType];m===4&&!u.inputHasAlpha&&(m=3);let E=i.COLORTYPE_TO_BPP_MAP[u.colorType];u.bitDepth===16&&(g=65535,E*=2);let b=Buffer.alloc(A*c*E),y=0,Q=0,v=u.bgColor||{};v.red===void 0&&(v.red=g),v.green===void 0&&(v.green=g),v.blue===void 0&&(v.blue=g);function I(){let F,k,_,M=g;switch(u.inputColorType){case i.COLORTYPE_COLOR_ALPHA:M=p[y+3],F=p[y],k=p[y+1],_=p[y+2];break;case i.COLORTYPE_COLOR:F=p[y],k=p[y+1],_=p[y+2];break;case i.COLORTYPE_ALPHA:M=p[y+1],F=p[y],k=F,_=F;break;case i.COLORTYPE_GRAYSCALE:F=p[y],k=F,_=F;break;default:throw new Error("input color type:"+u.inputColorType+" is not supported at present")}return u.inputHasAlpha&&(f||(M/=g,F=Math.min(Math.max(Math.round((1-M)*v.red+M*F),0),g),k=Math.min(Math.max(Math.round((1-M)*v.green+M*k),0),g),_=Math.min(Math.max(Math.round((1-M)*v.blue+M*_),0),g))),{red:F,green:k,blue:_,alpha:M}}for(let F=0;F<c;F++)for(let k=0;k<A;k++){let _=I(p,y);switch(u.colorType){case i.COLORTYPE_COLOR_ALPHA:case i.COLORTYPE_COLOR:u.bitDepth===8?(b[Q]=_.red,b[Q+1]=_.green,b[Q+2]=_.blue,f&&(b[Q+3]=_.alpha)):(b.writeUInt16BE(_.red,Q),b.writeUInt16BE(_.green,Q+2),b.writeUInt16BE(_.blue,Q+4),f&&b.writeUInt16BE(_.alpha,Q+6));break;case i.COLORTYPE_ALPHA:case i.COLORTYPE_GRAYSCALE:{let M=(_.red+_.green+_.blue)/3;u.bitDepth===8?(b[Q]=M,f&&(b[Q+1]=_.alpha)):(b.writeUInt16BE(M,Q),f&&b.writeUInt16BE(_.alpha,Q+2));break}default:throw new Error("unrecognised color Type "+u.colorType)}y+=m,Q+=E}return b}}),DF=Ge((r,e)=>{"use strict";var i=i0();function o(v,I,F,k,_){for(let M=0;M<F;M++)k[_+M]=v[I+M]}function A(v,I,F){let k=0,_=I+F;for(let M=I;M<_;M++)k+=Math.abs(v[M]);return k}function c(v,I,F,k,_,M){for(let O=0;O<F;O++){let P=O>=M?v[I+O-M]:0,R=v[I+O]-P;k[_+O]=R}}function u(v,I,F,k){let _=0;for(let M=0;M<F;M++){let O=M>=k?v[I+M-k]:0,P=v[I+M]-O;_+=Math.abs(P)}return _}function f(v,I,F,k,_){for(let M=0;M<F;M++){let O=I>0?v[I+M-F]:0,P=v[I+M]-O;k[_+M]=P}}function p(v,I,F){let k=0,_=I+F;for(let M=I;M<_;M++){let O=I>0?v[M-F]:0,P=v[M]-O;k+=Math.abs(P)}return k}function g(v,I,F,k,_,M){for(let O=0;O<F;O++){let P=O>=M?v[I+O-M]:0,R=I>0?v[I+O-F]:0,re=v[I+O]-(P+R>>1);k[_+O]=re}}function m(v,I,F,k){let _=0;for(let M=0;M<F;M++){let O=M>=k?v[I+M-k]:0,P=I>0?v[I+M-F]:0,R=v[I+M]-(O+P>>1);_+=Math.abs(R)}return _}function E(v,I,F,k,_,M){for(let O=0;O<F;O++){let P=O>=M?v[I+O-M]:0,R=I>0?v[I+O-F]:0,re=I>0&&O>=M?v[I+O-(F+M)]:0,q=v[I+O]-i(P,R,re);k[_+O]=q}}function b(v,I,F,k){let _=0;for(let M=0;M<F;M++){let O=M>=k?v[I+M-k]:0,P=I>0?v[I+M-F]:0,R=I>0&&M>=k?v[I+M-(F+k)]:0,re=v[I+M]-i(O,P,R);_+=Math.abs(re)}return _}var y={0:o,1:c,2:f,3:g,4:E},Q={0:A,1:u,2:p,3:m,4:b};e.exports=function(v,I,F,k,_){let M;if(!("filterType"in k)||k.filterType===-1)M=[0,1,2,3,4];else if(typeof k.filterType=="number")M=[k.filterType];else throw new Error("unrecognised filter types");k.bitDepth===16&&(_*=2);let O=I*_,P=0,R=0,re=Buffer.alloc((O+1)*F),q=M[0];for(let le=0;le<F;le++){if(M.length>1){let Ae=1/0;for(let ie=0;ie<M.length;ie++){let se=Q[M[ie]](v,R,O,_);se<Ae&&(q=M[ie],Ae=se)}}re[P]=q,P++,y[q](v,R,O,re,P,_),P+=O,R+=O}return re}}),l0=Ge((r,e)=>{"use strict";var i=es(),o=s0(),A=SF(),c=DF(),u=We("zlib"),f=e.exports=function(p){if(this._options=p,p.deflateChunkSize=p.deflateChunkSize||32*1024,p.deflateLevel=p.deflateLevel!=null?p.deflateLevel:9,p.deflateStrategy=p.deflateStrategy!=null?p.deflateStrategy:3,p.inputHasAlpha=p.inputHasAlpha!=null?p.inputHasAlpha:!0,p.deflateFactory=p.deflateFactory||u.createDeflate,p.bitDepth=p.bitDepth||8,p.colorType=typeof p.colorType=="number"?p.colorType:i.COLORTYPE_COLOR_ALPHA,p.inputColorType=typeof p.inputColorType=="number"?p.inputColorType:i.COLORTYPE_COLOR_ALPHA,[i.COLORTYPE_GRAYSCALE,i.COLORTYPE_COLOR,i.COLORTYPE_COLOR_ALPHA,i.COLORTYPE_ALPHA].indexOf(p.colorType)===-1)throw new Error("option color type:"+p.colorType+" is not supported at present");if([i.COLORTYPE_GRAYSCALE,i.COLORTYPE_COLOR,i.COLORTYPE_COLOR_ALPHA,i.COLORTYPE_ALPHA].indexOf(p.inputColorType)===-1)throw new Error("option input color type:"+p.inputColorType+" is not supported at present");if(p.bitDepth!==8&&p.bitDepth!==16)throw new Error("option bit depth:"+p.bitDepth+" is not supported at present")};f.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}},f.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())},f.prototype.filterData=function(p,g,m){let E=A(p,g,m,this._options),b=i.COLORTYPE_TO_BPP_MAP[this._options.colorType];return c(E,g,m,this._options,b)},f.prototype._packChunk=function(p,g){let m=g?g.length:0,E=Buffer.alloc(m+12);return E.writeUInt32BE(m,0),E.writeUInt32BE(p,4),g&&g.copy(E,8),E.writeInt32BE(o.crc32(E.slice(4,E.length-4)),E.length-4),E},f.prototype.packGAMA=function(p){let g=Buffer.alloc(4);return g.writeUInt32BE(Math.floor(p*i.GAMMA_DIVISION),0),this._packChunk(i.TYPE_gAMA,g)},f.prototype.packIHDR=function(p,g){let m=Buffer.alloc(13);return m.writeUInt32BE(p,0),m.writeUInt32BE(g,4),m[8]=this._options.bitDepth,m[9]=this._options.colorType,m[10]=0,m[11]=0,m[12]=0,this._packChunk(i.TYPE_IHDR,m)},f.prototype.packIDAT=function(p){return this._packChunk(i.TYPE_IDAT,p)},f.prototype.packIEND=function(){return this._packChunk(i.TYPE_IEND,null)}}),MF=Ge((r,e)=>{"use strict";var i=We("util"),o=We("stream"),A=es(),c=l0(),u=e.exports=function(f){o.call(this);let p=f||{};this._packer=new c(p),this._deflate=this._packer.createDeflate(),this.readable=!0};i.inherits(u,o),u.prototype.pack=function(f,p,g,m){this.emit("data",Buffer.from(A.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(p,g)),m&&this.emit("data",this._packer.packGAMA(m));let E=this._packer.filterData(f,p,g);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(b){this.emit("data",this._packer.packIDAT(b))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(E)}}),UF=Ge((r,e)=>{"use strict";var i=We("assert").ok,o=We("zlib"),A=We("util"),c=We("buffer").kMaxLength;function u(E){if(!(this instanceof u))return new u(E);E&&E.chunkSize<o.Z_MIN_CHUNK&&(E.chunkSize=o.Z_MIN_CHUNK),o.Inflate.call(this,E),this._offset=this._offset===void 0?this._outOffset:this._offset,this._buffer=this._buffer||this._outBuffer,E&&E.maxLength!=null&&(this._maxLength=E.maxLength)}function f(E){return new u(E)}function p(E,b){b&&process.nextTick(b),E._handle&&(E._handle.close(),E._handle=null)}u.prototype._processChunk=function(E,b,y){if(typeof y=="function")return o.Inflate._processChunk.call(this,E,b,y);let Q=this,v=E&&E.length,I=this._chunkSize-this._offset,F=this._maxLength,k=0,_=[],M=0,O;this.on("error",function(q){O=q});function P(q,le){if(Q._hadError)return;let Ae=I-le;if(i(Ae>=0,"have should not go down"),Ae>0){let ie=Q._buffer.slice(Q._offset,Q._offset+Ae);if(Q._offset+=Ae,ie.length>F&&(ie=ie.slice(0,F)),_.push(ie),M+=ie.length,F-=ie.length,F===0)return!1}return(le===0||Q._offset>=Q._chunkSize)&&(I=Q._chunkSize,Q._offset=0,Q._buffer=Buffer.allocUnsafe(Q._chunkSize)),le===0?(k+=v-q,v=q,!0):!1}i(this._handle,"zlib binding closed");let R;do R=this._handle.writeSync(b,E,k,v,this._buffer,this._offset,I),R=R||this._writeState;while(!this._hadError&&P(R[0],R[1]));if(this._hadError)throw O;if(M>=c)throw p(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+c.toString(16)+" bytes");let re=Buffer.concat(_,M);return p(this),re},A.inherits(u,o.Inflate);function g(E,b){if(typeof b=="string"&&(b=Buffer.from(b)),!(b instanceof Buffer))throw new TypeError("Not a string or buffer");let y=E._finishFlushFlag;return y==null&&(y=o.Z_FINISH),E._processChunk(b,y)}function m(E,b){return g(new u(b),E)}e.exports=r=m,r.Inflate=u,r.createInflate=f,r.inflateSync=m}),c0=Ge((r,e)=>{"use strict";var i=e.exports=function(o){this._buffer=o,this._reads=[]};i.prototype.read=function(o,A){this._reads.push({length:Math.abs(o),allowLess:o<0,func:A})},i.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let o=this._reads[0];if(this._buffer.length&&(this._buffer.length>=o.length||o.allowLess)){this._reads.shift();let A=this._buffer;this._buffer=A.slice(o.length),o.func.call(this,A.slice(0,o.length))}else break}if(this._reads.length>0)throw new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw new Error("unrecognised content at end of stream")}}),kF=Ge(r=>{"use strict";var e=c0(),i=n0();r.process=function(o,A){let c=[],u=new e(o);return new i(A,{read:u.read.bind(u),write:function(f){c.push(f)},complete:function(){}}).start(),u.process(),Buffer.concat(c)}}),YF=Ge((r,e)=>{"use strict";var i=!0,o=We("zlib"),A=UF();o.deflateSync||(i=!1);var c=c0(),u=kF(),f=o0(),p=a0(),g=A0();e.exports=function(m,E){if(!i)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let b;function y(se){b=se}let Q;function v(se){Q=se}function I(se){Q.transColor=se}function F(se){Q.palette=se}function k(){Q.alpha=!0}let _;function M(se){_=se}let O=[];function P(se){O.push(se)}let R=new c(m);if(new f(E,{read:R.read.bind(R),error:y,metadata:v,gamma:M,palette:F,transColor:I,inflateData:P,simpleTransparency:k}).start(),R.process(),b)throw b;let re=Buffer.concat(O);O.length=0;let q;if(Q.interlace)q=o.inflateSync(re);else{let se=((Q.width*Q.bpp*Q.depth+7>>3)+1)*Q.height;q=A(re,{chunkSize:se,maxLength:se})}if(re=null,!q||!q.length)throw new Error("bad png - invalid inflate data response");let le=u.process(q,Q);re=null;let Ae=p.dataToBitMap(le,Q);le=null;let ie=g(Ae,Q,E.skipRescale);return Q.data=ie,Q.gamma=_||0,Q}}),OF=Ge((r,e)=>{"use strict";var i=!0,o=We("zlib");o.deflateSync||(i=!1);var A=es(),c=l0();e.exports=function(u,f){if(!i)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let p=f||{},g=new c(p),m=[];m.push(Buffer.from(A.PNG_SIGNATURE)),m.push(g.packIHDR(u.width,u.height)),u.gamma&&m.push(g.packGAMA(u.gamma));let E=g.filterData(u.data,u.width,u.height),b=o.deflateSync(E,g.getDeflateOptions());if(E=null,!b||!b.length)throw new Error("bad png - invalid compressed data response");return m.push(g.packIDAT(b)),m.push(g.packIEND()),Buffer.concat(m)}}),NF=Ge(r=>{"use strict";var e=YF(),i=OF();r.read=function(o,A){return e(o,A||{})},r.write=function(o,A){return i(o,A)}}),RF=Ge(r=>{"use strict";var e=We("util"),i=We("stream"),o=TF(),A=MF(),c=NF(),u=r.PNG=function(f){i.call(this),f=f||{},this.width=f.width|0,this.height=f.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,f.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new o(f),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(p){this.data=p,this.emit("parsed",p)}.bind(this)),this._packer=new A(f),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};e.inherits(u,i),u.sync=c,u.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)},u.prototype.parse=function(f,p){if(p){let g,m;g=function(E){this.removeListener("error",m),this.data=E,p(null,this)}.bind(this),m=function(E){this.removeListener("parsed",g),p(E,null)}.bind(this),this.once("parsed",g),this.once("error",m)}return this.end(f),this},u.prototype.write=function(f){return this._parser.write(f),!0},u.prototype.end=function(f){this._parser.end(f)},u.prototype._metadata=function(f){this.width=f.width,this.height=f.height,this.emit("metadata",f)},u.prototype._gamma=function(f){this.gamma=f},u.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")},u.bitblt=function(f,p,g,m,E,b,y,Q){if(g|=0,m|=0,E|=0,b|=0,y|=0,Q|=0,g>f.width||m>f.height||g+E>f.width||m+b>f.height)throw new Error("bitblt reading outside image");if(y>p.width||Q>p.height||y+E>p.width||Q+b>p.height)throw new Error("bitblt writing outside image");for(let v=0;v<b;v++)f.data.copy(p.data,(Q+v)*p.width+y<<2,(m+v)*f.width+g<<2,(m+v)*f.width+g+E<<2)},u.prototype.bitblt=function(f,p,g,m,E,b,y){return u.bitblt(this,f,p,g,m,E,b,y),this},u.adjustGamma=function(f){if(f.gamma){for(let p=0;p<f.height;p++)for(let g=0;g<f.width;g++){let m=f.width*p+g<<2;for(let E=0;E<3;E++){let b=f.data[m+E]/255;b=Math.pow(b,1/2.2/f.gamma),f.data[m+E]=Math.round(b*255)}}f.gamma=0}},u.prototype.adjustGamma=function(){u.adjustGamma(this)}}),GF=Ge((r,e)=>{var i=i||function(c){return Buffer.from(c).toString("base64")};function o(c){var u=this,f=Math.round,p=Math.floor,g=new Array(64),m=new Array(64),E=new Array(64),b=new Array(64),y,Q,v,I,F=new Array(65535),k=new Array(65535),_=new Array(64),M=new Array(64),O=[],P=0,R=7,re=new Array(64),q=new Array(64),le=new Array(64),Ae=new Array(256),ie=new Array(2048),se,ye=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],fe=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],Pe=[0,1,2,3,4,5,6,7,8,9,10,11],Be=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],Ee=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],me=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],ke=[0,1,2,3,4,5,6,7,8,9,10,11],Fe=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],W=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function N(te){for(var ve=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99],be=0;be<64;be++){var ue=p((ve[be]*te+50)/100);ue<1?ue=1:ue>255&&(ue=255),g[ye[be]]=ue}for(var Me=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99],He=0;He<64;He++){var Le=p((Me[He]*te+50)/100);Le<1?Le=1:Le>255&&(Le=255),m[ye[He]]=Le}for(var Ne=[1,1.387039845,1.306562965,1.175875602,1,.785694958,.5411961,.275899379],de=0,ge=0;ge<8;ge++)for(var ae=0;ae<8;ae++)E[de]=1/(g[ye[de]]*Ne[ge]*Ne[ae]*8),b[de]=1/(m[ye[de]]*Ne[ge]*Ne[ae]*8),de++}function J(te,ve){for(var be=0,ue=0,Me=new Array,He=1;He<=16;He++){for(var Le=1;Le<=te[He];Le++)Me[ve[ue]]=[],Me[ve[ue]][0]=be,Me[ve[ue]][1]=He,ue++,be++;be*=2}return Me}function z(){y=J(fe,Pe),Q=J(me,ke),v=J(Be,Ee),I=J(Fe,W)}function j(){for(var te=1,ve=2,be=1;be<=15;be++){for(var ue=te;ue<ve;ue++)k[32767+ue]=be,F[32767+ue]=[],F[32767+ue][1]=be,F[32767+ue][0]=ue;for(var Me=-(ve-1);Me<=-te;Me++)k[32767+Me]=be,F[32767+Me]=[],F[32767+Me][1]=be,F[32767+Me][0]=ve-1+Me;te<<=1,ve<<=1}}function K(){for(var te=0;te<256;te++)ie[te]=19595*te,ie[te+256>>0]=38470*te,ie[te+512>>0]=7471*te+32768,ie[te+768>>0]=-11059*te,ie[te+1024>>0]=-21709*te,ie[te+1280>>0]=32768*te+8421375,ie[te+1536>>0]=-27439*te,ie[te+1792>>0]=-5329*te}function G(te){for(var ve=te[0],be=te[1]-1;be>=0;)ve&1<<be&&(P|=1<<R),be--,R--,R<0&&(P==255?(X(255),X(0)):X(P),R=7,P=0)}function X(te){O.push(te)}function D(te){X(te>>8&255),X(te&255)}function pe(te,ve){var be,ue,Me,He,Le,Ne,de,ge,ae=0,Ye,$=8,_e=64;for(Ye=0;Ye<$;++Ye){be=te[ae],ue=te[ae+1],Me=te[ae+2],He=te[ae+3],Le=te[ae+4],Ne=te[ae+5],de=te[ae+6],ge=te[ae+7];var Ue=be+ge,je=be-ge,at=ue+de,Ke=ue-de,ut=Me+Ne,bt=Me-Ne,xt=He+Le,Ir=He-Le,hr=Ue+xt,Fr=Ue-xt,Tr=at+ut,ht=at-ut;te[ae]=hr+Tr,te[ae+4]=hr-Tr;var V=(ht+Fr)*.707106781;te[ae+2]=Fr+V,te[ae+6]=Fr-V,hr=Ir+bt,Tr=bt+Ke,ht=Ke+je;var Vr=(hr-ht)*.382683433,he=.5411961*hr+Vr,fr=1.306562965*ht+Vr,un=Tr*.707106781,rs=je+un,hn=je-un;te[ae+5]=hn+he,te[ae+3]=hn-he,te[ae+1]=rs+fr,te[ae+7]=rs-fr,ae+=8}for(ae=0,Ye=0;Ye<$;++Ye){be=te[ae],ue=te[ae+8],Me=te[ae+16],He=te[ae+24],Le=te[ae+32],Ne=te[ae+40],de=te[ae+48],ge=te[ae+56];var is=be+ge,li=be-ge,ns=ue+de,ss=ue-de,Fi=Me+Ne,fn=Me-Ne,os=He+Le,Yo=He-Le,pr=is+os,Ti=is-os,Si=ns+Fi,ci=ns-Fi;te[ae]=pr+Si,te[ae+32]=pr-Si;var as=(ci+Ti)*.707106781;te[ae+16]=Ti+as,te[ae+48]=Ti-as,pr=Yo+fn,Si=fn+ss,ci=ss+li;var ui=(pr-ci)*.382683433,pn=.5411961*pr+ui,As=1.306562965*ci+ui,ls=Si*.707106781,cs=li+ls,us=li-ls;te[ae+40]=us+pn,te[ae+24]=us-pn,te[ae+8]=cs+As,te[ae+56]=cs-As,ae++}var Di;for(Ye=0;Ye<_e;++Ye)Di=te[Ye]*ve[Ye],_[Ye]=Di>0?Di+.5|0:Di-.5|0;return _}function ce(){D(65504),D(16),X(74),X(70),X(73),X(70),X(0),X(1),X(1),X(0),D(1),D(1),X(0),X(0)}function Qe(te){if(te){D(65505),te[0]===69&&te[1]===120&&te[2]===105&&te[3]===102?D(te.length+2):(D(te.length+5+2),X(69),X(120),X(105),X(102),X(0));for(var ve=0;ve<te.length;ve++)X(te[ve])}}function Z(te,ve){D(65472),D(17),X(8),D(ve),D(te),X(3),X(1),X(17),X(0),X(2),X(17),X(1),X(3),X(17),X(1)}function H(){D(65499),D(132),X(0);for(var te=0;te<64;te++)X(g[te]);X(1);for(var ve=0;ve<64;ve++)X(m[ve])}function ne(){D(65476),D(418),X(0);for(var te=0;te<16;te++)X(fe[te+1]);for(var ve=0;ve<=11;ve++)X(Pe[ve]);X(16);for(var be=0;be<16;be++)X(Be[be+1]);for(var ue=0;ue<=161;ue++)X(Ee[ue]);X(1);for(var Me=0;Me<16;Me++)X(me[Me+1]);for(var He=0;He<=11;He++)X(ke[He]);X(17);for(var Le=0;Le<16;Le++)X(Fe[Le+1]);for(var Ne=0;Ne<=161;Ne++)X(W[Ne])}function Oe(te){typeof te>"u"||te.constructor!==Array||te.forEach(ve=>{if(typeof ve=="string"){D(65534);var be=ve.length;D(be+2);var ue;for(ue=0;ue<be;ue++)X(ve.charCodeAt(ue))}})}function De(){D(65498),D(12),X(3),X(1),X(0),X(2),X(17),X(3),X(17),X(0),X(63),X(0)}function it(te,ve,be,ue,Me){for(var He=Me[0],Le=Me[240],Ne,de=16,ge=63,ae=64,Ye=pe(te,ve),$=0;$<ae;++$)M[ye[$]]=Ye[$];var _e=M[0]-be;be=M[0],_e==0?G(ue[0]):(Ne=32767+_e,G(ue[k[Ne]]),G(F[Ne]));for(var Ue=63;Ue>0&&M[Ue]==0;Ue--);if(Ue==0)return G(He),be;for(var je=1,at;je<=Ue;){for(var Ke=je;M[je]==0&&je<=Ue;++je);var ut=je-Ke;if(ut>=de){at=ut>>4;for(var bt=1;bt<=at;++bt)G(Le);ut=ut&15}Ne=32767+M[je],G(Me[(ut<<4)+k[Ne]]),G(F[Ne]),je++}return Ue!=ge&&G(He),be}function Ze(){for(var te=String.fromCharCode,ve=0;ve<256;ve++)Ae[ve]=te(ve)}this.encode=function(te,ve){var be=new Date().getTime();ve&&Xe(ve),O=new Array,P=0,R=7,D(65496),ce(),Oe(te.comments),Qe(te.exifBuffer),H(),Z(te.width,te.height),ne(),De();var ue=0,Me=0,He=0;P=0,R=7,this.encode.displayName="_encode_";for(var Le=te.data,Ne=te.width,de=te.height,ge=Ne*4,ae=Ne*3,Ye,$=0,_e,Ue,je,at,Ke,ut,bt,xt;$<de;){for(Ye=0;Ye<ge;){for(at=ge*$+Ye,Ke=at,ut=-1,bt=0,xt=0;xt<64;xt++)bt=xt>>3,ut=(xt&7)*4,Ke=at+bt*ge+ut,$+bt>=de&&(Ke-=ge*($+1+bt-de)),Ye+ut>=ge&&(Ke-=Ye+ut-ge+4),_e=Le[Ke++],Ue=Le[Ke++],je=Le[Ke++],re[xt]=(ie[_e]+ie[Ue+256>>0]+ie[je+512>>0]>>16)-128,q[xt]=(ie[_e+768>>0]+ie[Ue+1024>>0]+ie[je+1280>>0]>>16)-128,le[xt]=(ie[_e+1280>>0]+ie[Ue+1536>>0]+ie[je+1792>>0]>>16)-128;ue=it(re,E,ue,y,v),Me=it(q,b,Me,Q,I),He=it(le,b,He,Q,I),Ye+=32}$+=8}if(R>=0){var Ir=[];Ir[1]=R+1,Ir[0]=(1<<R+1)-1,G(Ir)}if(D(65497),typeof e>"u")return new Uint8Array(O);return Buffer.from(O);var hr,Fr};function Xe(te){if(te<=0&&(te=1),te>100&&(te=100),se!=te){var ve=0;te<50?ve=Math.floor(5e3/te):ve=Math.floor(200-te*2),N(ve),se=te}}function wt(){var te=new Date().getTime();c||(c=50),Ze(),z(),j(),K(),Xe(c);var ve=new Date().getTime()-te}wt()}typeof e<"u"?e.exports=A:typeof window<"u"&&(window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=A);function A(c,u){typeof u>"u"&&(u=50);var f=new o(u),p=f.encode(c,u);return{data:p,width:c.width,height:c.height}}}),LF=Ge((r,e)=>{var i=(function(){"use strict";var A=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),c=4017,u=799,f=3406,p=2276,g=1567,m=3784,E=5793,b=2896;function y(){}function Q(O,P){for(var R=0,re=[],q,le,Ae=16;Ae>0&&!O[Ae-1];)Ae--;re.push({children:[],index:0});var ie=re[0],se;for(q=0;q<Ae;q++){for(le=0;le<O[q];le++){for(ie=re.pop(),ie.children[ie.index]=P[R];ie.index>0;){if(re.length===0)throw new Error("Could not recreate Huffman Table");ie=re.pop()}for(ie.index++,re.push(ie);re.length<=q;)re.push(se={children:[],index:0}),ie.children[ie.index]=se.children,ie=se;R++}q+1<Ae&&(re.push(se={children:[],index:0}),ie.children[ie.index]=se.children,ie=se)}return re[0].children}function v(O,P,R,re,q,le,Ae,ie,se,ye){var fe=R.precision,Pe=R.samplesPerLine,Be=R.scanLines,Ee=R.mcusPerLine,me=R.progressive,ke=R.maxH,Fe=R.maxV,W=P,N=0,J=0;function z(){if(J>0)return J--,N>>J&1;if(N=O[P++],N==255){var de=O[P++];if(de)throw new Error("unexpected marker: "+(N<<8|de).toString(16))}return J=7,N>>>7}function j(de){for(var ge=de,ae;(ae=z())!==null;){if(ge=ge[ae],typeof ge=="number")return ge;if(typeof ge!="object")throw new Error("invalid huffman sequence")}return null}function K(de){for(var ge=0;de>0;){var ae=z();if(ae===null)return;ge=ge<<1|ae,de--}return ge}function G(de){var ge=K(de);return ge>=1<<de-1?ge:ge+(-1<<de)+1}function X(de,ge){var ae=j(de.huffmanTableDC),Ye=ae===0?0:G(ae);ge[0]=de.pred+=Ye;for(var $=1;$<64;){var _e=j(de.huffmanTableAC),Ue=_e&15,je=_e>>4;if(Ue===0){if(je<15)break;$+=16;continue}$+=je;var at=A[$];ge[at]=G(Ue),$++}}function D(de,ge){var ae=j(de.huffmanTableDC),Ye=ae===0?0:G(ae)<<se;ge[0]=de.pred+=Ye}function pe(de,ge){ge[0]|=z()<<se}var ce=0;function Qe(de,ge){if(ce>0){ce--;return}for(var ae=le,Ye=Ae;ae<=Ye;){var $=j(de.huffmanTableAC),_e=$&15,Ue=$>>4;if(_e===0){if(Ue<15){ce=K(Ue)+(1<<Ue)-1;break}ae+=16;continue}ae+=Ue;var je=A[ae];ge[je]=G(_e)*(1<<se),ae++}}var Z=0,H;function ne(de,ge){for(var ae=le,Ye=Ae,$=0;ae<=Ye;){var _e=A[ae],Ue=ge[_e]<0?-1:1;switch(Z){case 0:var je=j(de.huffmanTableAC),at=je&15,$=je>>4;if(at===0)$<15?(ce=K($)+(1<<$),Z=4):($=16,Z=1);else{if(at!==1)throw new Error("invalid ACn encoding");H=G(at),Z=$?2:3}continue;case 1:case 2:ge[_e]?ge[_e]+=(z()<<se)*Ue:($--,$===0&&(Z=Z==2?3:0));break;case 3:ge[_e]?ge[_e]+=(z()<<se)*Ue:(ge[_e]=H<<se,Z=0);break;case 4:ge[_e]&&(ge[_e]+=(z()<<se)*Ue);break}ae++}Z===4&&(ce--,ce===0&&(Z=0))}function Oe(de,ge,ae,Ye,$){var _e=ae/Ee|0,Ue=ae%Ee,je=_e*de.v+Ye,at=Ue*de.h+$;de.blocks[je]===void 0&&ye.tolerantDecoding||ge(de,de.blocks[je][at])}function De(de,ge,ae){var Ye=ae/de.blocksPerLine|0,$=ae%de.blocksPerLine;de.blocks[Ye]===void 0&&ye.tolerantDecoding||ge(de,de.blocks[Ye][$])}var it=re.length,Ze,Xe,wt,te,ve,be;me?le===0?be=ie===0?D:pe:be=ie===0?Qe:ne:be=X;var ue=0,Me,He;it==1?He=re[0].blocksPerLine*re[0].blocksPerColumn:He=Ee*R.mcusPerColumn,q||(q=He);for(var Le,Ne;ue<He;){for(Xe=0;Xe<it;Xe++)re[Xe].pred=0;if(ce=0,it==1)for(Ze=re[0],ve=0;ve<q;ve++)De(Ze,be,ue),ue++;else for(ve=0;ve<q;ve++){for(Xe=0;Xe<it;Xe++)for(Ze=re[Xe],Le=Ze.h,Ne=Ze.v,wt=0;wt<Ne;wt++)for(te=0;te<Le;te++)Oe(Ze,be,ue,wt,te);if(ue++,ue===He)break}if(ue===He)do{if(O[P]===255&&O[P+1]!==0)break;P+=1}while(P<O.length-2);if(J=0,Me=O[P]<<8|O[P+1],Me<65280)throw new Error("marker was not found");if(Me>=65488&&Me<=65495)P+=2;else break}return P-W}function I(O,P){var R=[],re=P.blocksPerLine,q=P.blocksPerColumn,le=re<<3,Ae=new Int32Array(64),ie=new Uint8Array(64);function se(W,N,J){var z=P.quantizationTable,j,K,G,X,D,pe,ce,Qe,Z,H=J,ne;for(ne=0;ne<64;ne++)H[ne]=W[ne]*z[ne];for(ne=0;ne<8;++ne){var Oe=8*ne;if(H[1+Oe]==0&&H[2+Oe]==0&&H[3+Oe]==0&&H[4+Oe]==0&&H[5+Oe]==0&&H[6+Oe]==0&&H[7+Oe]==0){Z=E*H[0+Oe]+512>>10,H[0+Oe]=Z,H[1+Oe]=Z,H[2+Oe]=Z,H[3+Oe]=Z,H[4+Oe]=Z,H[5+Oe]=Z,H[6+Oe]=Z,H[7+Oe]=Z;continue}j=E*H[0+Oe]+128>>8,K=E*H[4+Oe]+128>>8,G=H[2+Oe],X=H[6+Oe],D=b*(H[1+Oe]-H[7+Oe])+128>>8,Qe=b*(H[1+Oe]+H[7+Oe])+128>>8,pe=H[3+Oe]<<4,ce=H[5+Oe]<<4,Z=j-K+1>>1,j=j+K+1>>1,K=Z,Z=G*m+X*g+128>>8,G=G*g-X*m+128>>8,X=Z,Z=D-ce+1>>1,D=D+ce+1>>1,ce=Z,Z=Qe+pe+1>>1,pe=Qe-pe+1>>1,Qe=Z,Z=j-X+1>>1,j=j+X+1>>1,X=Z,Z=K-G+1>>1,K=K+G+1>>1,G=Z,Z=D*p+Qe*f+2048>>12,D=D*f-Qe*p+2048>>12,Qe=Z,Z=pe*u+ce*c+2048>>12,pe=pe*c-ce*u+2048>>12,ce=Z,H[0+Oe]=j+Qe,H[7+Oe]=j-Qe,H[1+Oe]=K+ce,H[6+Oe]=K-ce,H[2+Oe]=G+pe,H[5+Oe]=G-pe,H[3+Oe]=X+D,H[4+Oe]=X-D}for(ne=0;ne<8;++ne){var De=ne;if(H[8+De]==0&&H[16+De]==0&&H[24+De]==0&&H[32+De]==0&&H[40+De]==0&&H[48+De]==0&&H[56+De]==0){Z=E*J[ne+0]+8192>>14,H[0+De]=Z,H[8+De]=Z,H[16+De]=Z,H[24+De]=Z,H[32+De]=Z,H[40+De]=Z,H[48+De]=Z,H[56+De]=Z;continue}j=E*H[0+De]+2048>>12,K=E*H[32+De]+2048>>12,G=H[16+De],X=H[48+De],D=b*(H[8+De]-H[56+De])+2048>>12,Qe=b*(H[8+De]+H[56+De])+2048>>12,pe=H[24+De],ce=H[40+De],Z=j-K+1>>1,j=j+K+1>>1,K=Z,Z=G*m+X*g+2048>>12,G=G*g-X*m+2048>>12,X=Z,Z=D-ce+1>>1,D=D+ce+1>>1,ce=Z,Z=Qe+pe+1>>1,pe=Qe-pe+1>>1,Qe=Z,Z=j-X+1>>1,j=j+X+1>>1,X=Z,Z=K-G+1>>1,K=K+G+1>>1,G=Z,Z=D*p+Qe*f+2048>>12,D=D*f-Qe*p+2048>>12,Qe=Z,Z=pe*u+ce*c+2048>>12,pe=pe*c-ce*u+2048>>12,ce=Z,H[0+De]=j+Qe,H[56+De]=j-Qe,H[8+De]=K+ce,H[48+De]=K-ce,H[16+De]=G+pe,H[40+De]=G-pe,H[24+De]=X+D,H[32+De]=X-D}for(ne=0;ne<64;++ne){var it=128+(H[ne]+8>>4);N[ne]=it<0?0:it>255?255:it}}M(le*q*8);for(var ye,fe,Pe=0;Pe<q;Pe++){var Be=Pe<<3;for(ye=0;ye<8;ye++)R.push(new Uint8Array(le));for(var Ee=0;Ee<re;Ee++){se(P.blocks[Pe][Ee],ie,Ae);var me=0,ke=Ee<<3;for(fe=0;fe<8;fe++){var Fe=R[Be+fe];for(ye=0;ye<8;ye++)Fe[ke+ye]=ie[me++]}}}return R}function F(O){return O<0?0:O>255?255:O}y.prototype={load:function(O){var P=new XMLHttpRequest;P.open("GET",O,!0),P.responseType="arraybuffer",P.onload=function(){var R=new Uint8Array(P.response||P.mozResponseArrayBuffer);this.parse(R),this.onload&&this.onload()}.bind(this),P.send(null)},parse:function(O){var P=this.opts.maxResolutionInMP*1e3*1e3,R=0,re=O.length;function q(){var Ue=O[R]<<8|O[R+1];return R+=2,Ue}function le(){var Ue=q(),je=O.subarray(R,R+Ue-2);return R+=je.length,je}function Ae(Ue){var je=1,at=1,Ke,ut;for(ut in Ue.components)Ue.components.hasOwnProperty(ut)&&(Ke=Ue.components[ut],je<Ke.h&&(je=Ke.h),at<Ke.v&&(at=Ke.v));var bt=Math.ceil(Ue.samplesPerLine/8/je),xt=Math.ceil(Ue.scanLines/8/at);for(ut in Ue.components)if(Ue.components.hasOwnProperty(ut)){Ke=Ue.components[ut];var Ir=Math.ceil(Math.ceil(Ue.samplesPerLine/8)*Ke.h/je),hr=Math.ceil(Math.ceil(Ue.scanLines/8)*Ke.v/at),Fr=bt*Ke.h,Tr=xt*Ke.v,ht=Tr*Fr,V=[];M(ht*256);for(var Vr=0;Vr<Tr;Vr++){for(var he=[],fr=0;fr<Fr;fr++)he.push(new Int32Array(64));V.push(he)}Ke.blocksPerLine=Ir,Ke.blocksPerColumn=hr,Ke.blocks=V}Ue.maxH=je,Ue.maxV=at,Ue.mcusPerLine=bt,Ue.mcusPerColumn=xt}var ie=null,se=null,ye=null,fe,Pe,Be=[],Ee=[],me=[],ke=[],Fe=q(),W=-1;if(this.comments=[],Fe!=65496)throw new Error("SOI not found");for(Fe=q();Fe!=65497;){var N,J,z;switch(Fe){case 65280:break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:var j=le();if(Fe===65534){var K=String.fromCharCode.apply(null,j);this.comments.push(K)}Fe===65504&&j[0]===74&&j[1]===70&&j[2]===73&&j[3]===70&&j[4]===0&&(ie={version:{major:j[5],minor:j[6]},densityUnits:j[7],xDensity:j[8]<<8|j[9],yDensity:j[10]<<8|j[11],thumbWidth:j[12],thumbHeight:j[13],thumbData:j.subarray(14,14+3*j[12]*j[13])}),Fe===65505&&j[0]===69&&j[1]===120&&j[2]===105&&j[3]===102&&j[4]===0&&(this.exifBuffer=j.subarray(5,j.length)),Fe===65518&&j[0]===65&&j[1]===100&&j[2]===111&&j[3]===98&&j[4]===101&&j[5]===0&&(se={version:j[6],flags0:j[7]<<8|j[8],flags1:j[9]<<8|j[10],transformCode:j[11]});break;case 65499:for(var G=q(),X=G+R-2;R<X;){var D=O[R++];M(256);var pe=new Int32Array(64);if(D>>4)if(D>>4===1)for(J=0;J<64;J++){var ce=A[J];pe[ce]=q()}else throw new Error("DQT: invalid table spec");else for(J=0;J<64;J++){var ce=A[J];pe[ce]=O[R++]}Be[D&15]=pe}break;case 65472:case 65473:case 65474:q(),fe={},fe.extended=Fe===65473,fe.progressive=Fe===65474,fe.precision=O[R++],fe.scanLines=q(),fe.samplesPerLine=q(),fe.components={},fe.componentsOrder=[];var Qe=fe.scanLines*fe.samplesPerLine;if(Qe>P){var Z=Math.ceil((Qe-P)/1e6);throw new Error(`maxResolutionInMP limit exceeded by ${Z}MP`)}var H=O[R++],ne,Oe=0,De=0;for(N=0;N<H;N++){ne=O[R];var it=O[R+1]>>4,Ze=O[R+1]&15,Xe=O[R+2];if(it<=0||Ze<=0)throw new Error("Invalid sampling factor, expected values above 0");fe.componentsOrder.push(ne),fe.components[ne]={h:it,v:Ze,quantizationIdx:Xe},R+=3}Ae(fe),Ee.push(fe);break;case 65476:var wt=q();for(N=2;N<wt;){var te=O[R++],ve=new Uint8Array(16),be=0;for(J=0;J<16;J++,R++)be+=ve[J]=O[R];M(16+be);var ue=new Uint8Array(be);for(J=0;J<be;J++,R++)ue[J]=O[R];N+=17+be,(te>>4?me:ke)[te&15]=Q(ve,ue)}break;case 65501:q(),Pe=q();break;case 65500:q(),q();break;case 65498:var Me=q(),He=O[R++],Le=[],Ne;for(N=0;N<He;N++){Ne=fe.components[O[R++]];var de=O[R++];Ne.huffmanTableDC=ke[de>>4],Ne.huffmanTableAC=me[de&15],Le.push(Ne)}var ge=O[R++],ae=O[R++],Ye=O[R++],$=v(O,R,fe,Le,Pe,ge,ae,Ye>>4,Ye&15,this.opts);R+=$;break;case 65535:O[R]!==255&&R--;break;default:if(O[R-3]==255&&O[R-2]>=192&&O[R-2]<=254){R-=3;break}else if(Fe===224||Fe==225){if(W!==-1)throw new Error(`first unknown JPEG marker at offset ${W.toString(16)}, second unknown JPEG marker ${Fe.toString(16)} at offset ${(R-1).toString(16)}`);W=R-1;let Ue=q();if(O[R+Ue-2]===255){R+=Ue-2;break}}throw new Error("unknown JPEG marker "+Fe.toString(16))}Fe=q()}if(Ee.length!=1)throw new Error("only single frame JPEGs supported");for(var N=0;N<Ee.length;N++){var _e=Ee[N].components;for(var J in _e)_e[J].quantizationTable=Be[_e[J].quantizationIdx],delete _e[J].quantizationIdx}this.width=fe.samplesPerLine,this.height=fe.scanLines,this.jfif=ie,this.adobe=se,this.components=[];for(var N=0;N<fe.componentsOrder.length;N++){var Ne=fe.components[fe.componentsOrder[N]];this.components.push({lines:I(fe,Ne),scaleX:Ne.h/fe.maxH,scaleY:Ne.v/fe.maxV})}},getData:function(O,P){var R=this.width/O,re=this.height/P,q,le,Ae,ie,se,ye,fe,Pe,Be,Ee,me=0,ke,Fe,W,N,J,z,j,K,G,X,D,pe=O*P*this.components.length;M(pe);var ce=new Uint8Array(pe);switch(this.components.length){case 1:for(q=this.components[0],Ee=0;Ee<P;Ee++)for(se=q.lines[0|Ee*q.scaleY*re],Be=0;Be<O;Be++)ke=se[0|Be*q.scaleX*R],ce[me++]=ke;break;case 2:for(q=this.components[0],le=this.components[1],Ee=0;Ee<P;Ee++)for(se=q.lines[0|Ee*q.scaleY*re],ye=le.lines[0|Ee*le.scaleY*re],Be=0;Be<O;Be++)ke=se[0|Be*q.scaleX*R],ce[me++]=ke,ke=ye[0|Be*le.scaleX*R],ce[me++]=ke;break;case 3:for(D=!0,this.adobe&&this.adobe.transformCode?D=!0:typeof this.opts.colorTransform<"u"&&(D=!!this.opts.colorTransform),q=this.components[0],le=this.components[1],Ae=this.components[2],Ee=0;Ee<P;Ee++)for(se=q.lines[0|Ee*q.scaleY*re],ye=le.lines[0|Ee*le.scaleY*re],fe=Ae.lines[0|Ee*Ae.scaleY*re],Be=0;Be<O;Be++)D?(ke=se[0|Be*q.scaleX*R],Fe=ye[0|Be*le.scaleX*R],W=fe[0|Be*Ae.scaleX*R],K=F(ke+1.402*(W-128)),G=F(ke-.3441363*(Fe-128)-.71413636*(W-128)),X=F(ke+1.772*(Fe-128))):(K=se[0|Be*q.scaleX*R],G=ye[0|Be*le.scaleX*R],X=fe[0|Be*Ae.scaleX*R]),ce[me++]=K,ce[me++]=G,ce[me++]=X;break;case 4:if(!this.adobe)throw new Error("Unsupported color mode (4 components)");for(D=!1,this.adobe&&this.adobe.transformCode?D=!0:typeof this.opts.colorTransform<"u"&&(D=!!this.opts.colorTransform),q=this.components[0],le=this.components[1],Ae=this.components[2],ie=this.components[3],Ee=0;Ee<P;Ee++)for(se=q.lines[0|Ee*q.scaleY*re],ye=le.lines[0|Ee*le.scaleY*re],fe=Ae.lines[0|Ee*Ae.scaleY*re],Pe=ie.lines[0|Ee*ie.scaleY*re],Be=0;Be<O;Be++)D?(ke=se[0|Be*q.scaleX*R],Fe=ye[0|Be*le.scaleX*R],W=fe[0|Be*Ae.scaleX*R],N=Pe[0|Be*ie.scaleX*R],J=255-F(ke+1.402*(W-128)),z=255-F(ke-.3441363*(Fe-128)-.71413636*(W-128)),j=255-F(ke+1.772*(Fe-128))):(J=se[0|Be*q.scaleX*R],z=ye[0|Be*le.scaleX*R],j=fe[0|Be*Ae.scaleX*R],N=Pe[0|Be*ie.scaleX*R]),ce[me++]=255-J,ce[me++]=255-z,ce[me++]=255-j,ce[me++]=255-N;break;default:throw new Error("Unsupported color mode")}return ce},copyToImageData:function(O,P){var R=O.width,re=O.height,q=O.data,le=this.getData(R,re),Ae=0,ie=0,se,ye,fe,Pe,Be,Ee,me,ke,Fe;switch(this.components.length){case 1:for(ye=0;ye<re;ye++)for(se=0;se<R;se++)fe=le[Ae++],q[ie++]=fe,q[ie++]=fe,q[ie++]=fe,P&&(q[ie++]=255);break;case 3:for(ye=0;ye<re;ye++)for(se=0;se<R;se++)me=le[Ae++],ke=le[Ae++],Fe=le[Ae++],q[ie++]=me,q[ie++]=ke,q[ie++]=Fe,P&&(q[ie++]=255);break;case 4:for(ye=0;ye<re;ye++)for(se=0;se<R;se++)Be=le[Ae++],Ee=le[Ae++],fe=le[Ae++],Pe=le[Ae++],me=255-F(Be*(1-Pe/255)+Pe),ke=255-F(Ee*(1-Pe/255)+Pe),Fe=255-F(fe*(1-Pe/255)+Pe),q[ie++]=me,q[ie++]=ke,q[ie++]=Fe,P&&(q[ie++]=255);break;default:throw new Error("Unsupported color mode")}}};var k=0,_=0;function M(O=0){var P=k+O;if(P>_){var R=Math.ceil((P-_)/1024/1024);throw new Error(`maxMemoryUsageInMB limit exceeded by at least ${R}MB`)}k=P}return y.resetMaxMemoryUsage=function(O){k=0,_=O},y.getBytesAllocated=function(){return k},y.requestMemoryAllocation=M,y})();typeof e<"u"?e.exports=o:typeof window<"u"&&(window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=o);function o(A,c={}){var u={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},f={...u,...c},p=new Uint8Array(A),g=new i;g.opts=f,i.resetMaxMemoryUsage(f.maxMemoryUsageInMB*1024*1024),g.parse(p);var m=f.formatAsRGBA?4:3,E=g.width*g.height*m;try{i.requestMemoryAllocation(E);var b={width:g.width,height:g.height,exifBuffer:g.exifBuffer,data:f.useTArray?new Uint8Array(E):Buffer.alloc(E)};g.comments.length>0&&(b.comments=g.comments)}catch(y){throw y instanceof RangeError?new Error("Could not allocate enough memory for the image. Required: "+E):y instanceof ReferenceError&&y.message==="Buffer is not defined"?new Error("Buffer is not globally defined in this environment. Consider setting useTArray to true"):y}return g.copyToImageData(b,f.formatAsRGBA),b}}),PF=Ge((r,e)=>{var i=GF(),o=LF();e.exports={encode:i,decode:o}}),u0={};mF(u0,{Bitmap:()=>Qo,Context:()=>g0,debug_list_of_fonts:()=>_F,decodeJPEGFromStream:()=>lT,decodePNGFromStream:()=>aT,encodeJPEGToStream:()=>AT,encodePNGToStream:()=>oT,make:()=>sT,measureText:()=>Gl,processTextPath:()=>Yl,registerFont:()=>jF});y0.exports=BF(u0);var Ml=(r=>(r[r.transparent=0]="transparent",r[r.aliceblue=4042850303]="aliceblue",r[r.antiquewhite=4209760255]="antiquewhite",r[r.aqua=16777215]="aqua",r[r.aquamarine=2147472639]="aquamarine",r[r.azure=4043309055]="azure",r[r.beige=4126530815]="beige",r[r.bisque=4293182719]="bisque",r[r.black=255]="black",r[r.blanchedalmond=4293643775]="blanchedalmond",r[r.blue=65535]="blue",r[r.blueviolet=2318131967]="blueviolet",r[r.brown=2771004159]="brown",r[r.burlywood=3736635391]="burlywood",r[r.cadetblue=1604231423]="cadetblue",r[r.chartreuse=2147418367]="chartreuse",r[r.chocolate=3530104575]="chocolate",r[r.coral=4286533887]="coral",r[r.cornflowerblue=1687547391]="cornflowerblue",r[r.cornsilk=4294499583]="cornsilk",r[r.crimson=3692313855]="crimson",r[r.cyan=16777215]="cyan",r[r.darkblue=35839]="darkblue",r[r.darkcyan=9145343]="darkcyan",r[r.darkgoldenrod=3095792639]="darkgoldenrod",r[r.darkgray=2846468607]="darkgray",r[r.darkgreen=6553855]="darkgreen",r[r.darkgrey=2846468607]="darkgrey",r[r.darkkhaki=3182914559]="darkkhaki",r[r.darkmagenta=2332068863]="darkmagenta",r[r.darkolivegreen=1433087999]="darkolivegreen",r[r.darkorange=4287365375]="darkorange",r[r.darkorchid=2570243327]="darkorchid",r[r.darkred=2332033279]="darkred",r[r.darksalmon=3918953215]="darksalmon",r[r.darkseagreen=2411499519]="darkseagreen",r[r.darkslateblue=1211993087]="darkslateblue",r[r.darkslategray=793726975]="darkslategray",r[r.darkslategrey=793726975]="darkslategrey",r[r.darkturquoise=13554175]="darkturquoise",r[r.darkviolet=2483082239]="darkviolet",r[r.deeppink=4279538687]="deeppink",r[r.deepskyblue=12582911]="deepskyblue",r[r.dimgray=1768516095]="dimgray",r[r.dimgrey=1768516095]="dimgrey",r[r.dodgerblue=512819199]="dodgerblue",r[r.firebrick=2988581631]="firebrick",r[r.floralwhite=4294635775]="floralwhite",r[r.forestgreen=579543807]="forestgreen",r[r.fuchsia=4278255615]="fuchsia",r[r.gainsboro=3705462015]="gainsboro",r[r.ghostwhite=4177068031]="ghostwhite",r[r.gold=4292280575]="gold",r[r.goldenrod=3668254975]="goldenrod",r[r.gray=2155905279]="gray",r[r.green=8388863]="green",r[r.greenyellow=2919182335]="greenyellow",r[r.grey=2155905279]="grey",r[r.honeydew=4043305215]="honeydew",r[r.hotpink=4285117695]="hotpink",r[r.indianred=3445382399]="indianred",r[r.indigo=1258324735]="indigo",r[r.ivory=4294963455]="ivory",r[r.khaki=4041641215]="khaki",r[r.lavender=3873897215]="lavender",r[r.lavenderblush=4293981695]="lavenderblush",r[r.lawngreen=2096890111]="lawngreen",r[r.lemonchiffon=4294626815]="lemonchiffon",r[r.lightblue=2916673279]="lightblue",r[r.lightcoral=4034953471]="lightcoral",r[r.lightcyan=3774873599]="lightcyan",r[r.lightgoldenrodyellow=4210742015]="lightgoldenrodyellow",r[r.lightgray=3553874943]="lightgray",r[r.lightgreen=2431553791]="lightgreen",r[r.lightgrey=3553874943]="lightgrey",r[r.lightpink=4290167295]="lightpink",r[r.lightsalmon=4288707327]="lightsalmon",r[r.lightseagreen=548580095]="lightseagreen",r[r.lightskyblue=2278488831]="lightskyblue",r[r.lightslategray=2005441023]="lightslategray",r[r.lightslategrey=2005441023]="lightslategrey",r[r.lightsteelblue=2965692159]="lightsteelblue",r[r.lightyellow=4294959359]="lightyellow",r[r.lime=16711935]="lime",r[r.limegreen=852308735]="limegreen",r[r.linen=4210091775]="linen",r[r.magenta=4278255615]="magenta",r[r.maroon=2147483903]="maroon",r[r.mediumaquamarine=1724754687]="mediumaquamarine",r[r.mediumblue=52735]="mediumblue",r[r.mediumorchid=3126187007]="mediumorchid",r[r.mediumpurple=2473647103]="mediumpurple",r[r.mediumseagreen=1018393087]="mediumseagreen",r[r.mediumslateblue=2070474495]="mediumslateblue",r[r.mediumspringgreen=16423679]="mediumspringgreen",r[r.mediumturquoise=1221709055]="mediumturquoise",r[r.mediumvioletred=3340076543]="mediumvioletred",r[r.midnightblue=421097727]="midnightblue",r[r.mintcream=4127193855]="mintcream",r[r.mistyrose=4293190143]="mistyrose",r[r.moccasin=4293178879]="moccasin",r[r.navajowhite=4292783615]="navajowhite",r[r.navy=33023]="navy",r[r.oldlace=4260751103]="oldlace",r[r.olive=2155872511]="olive",r[r.olivedrab=1804477439]="olivedrab",r[r.orange=4289003775]="orange",r[r.orangered=4282712319]="orangered",r[r.orchid=3664828159]="orchid",r[r.palegoldenrod=4008225535]="palegoldenrod",r[r.palegreen=2566625535]="palegreen",r[r.paleturquoise=2951671551]="paleturquoise",r[r.palevioletred=3681588223]="palevioletred",r[r.papayawhip=4293907967]="papayawhip",r[r.peachpuff=4292524543]="peachpuff",r[r.peru=3448061951]="peru",r[r.pink=4290825215]="pink",r[r.plum=3718307327]="plum",r[r.powderblue=2967529215]="powderblue",r[r.purple=2147516671]="purple",r[r.rebeccapurple=1714657791]="rebeccapurple",r[r.red=4278190335]="red",r[r.rosybrown=3163525119]="rosybrown",r[r.royalblue=1097458175]="royalblue",r[r.saddlebrown=2336560127]="saddlebrown",r[r.salmon=4202722047]="salmon",r[r.sandybrown=4104413439]="sandybrown",r[r.seagreen=780883967]="seagreen",r[r.seashell=4294307583]="seashell",r[r.sienna=2689740287]="sienna",r[r.silver=3233857791]="silver",r[r.skyblue=2278484991]="skyblue",r[r.slateblue=1784335871]="slateblue",r[r.slategray=1887473919]="slategray",r[r.slategrey=1887473919]="slategrey",r[r.snow=4294638335]="snow",r[r.springgreen=16744447]="springgreen",r[r.steelblue=1182971135]="steelblue",r[r.tan=3535047935]="tan",r[r.teal=8421631]="teal",r[r.thistle=3636451583]="thistle",r[r.tomato=4284696575]="tomato",r[r.turquoise=1088475391]="turquoise",r[r.violet=4001558271]="violet",r[r.wheat=4125012991]="wheat",r[r.white=4294967295]="white",r[r.whitesmoke=4126537215]="whitesmoke",r[r.yellow=4294902015]="yellow",r[r.yellowgreen=2597139199]="yellowgreen",r))(Ml||{}),ln=function(r,e,i,o){return(r<<24|e<<16|i<<8|o)>>>0},wo=function(r,e){return r>>>8*(3-e)&255},an=function(r){return[wo(r,0),wo(r,1),wo(r,2),wo(r,3)]},yo=function(r){return r>>>0},ai=function(r,...e){let i=r;for(let o=0;o<e.length;o+=1)i=i|e[o];return i>>>0},Co=function(r,...e){let i=r;for(let o=0;o<e.length;o+=1)i=i&e[o];return i>>>0},Fl=function(r,e){return r<<e>>>0};function Rl(r,e,i){return r<e?e:r>i?i:r}var HF=function(r,e,i){return r+(e-r)*i};function Ul(r){if(!r)return 0;if(r.indexOf("#")===0){if(r.length===4){let e=parseInt(r[1],16),i=e<<4|e,o=parseInt(r[2],16),A=o<<4|o,c=parseInt(r[3],16),u=c<<4|c,f=yo(i<<16|A<<8|u);return f=Fl(f,8),ai(f,255)}else if(r.length===5){let e=parseInt(r[1],16),i=e<<4|e,o=parseInt(r[2],16),A=o<<4|o,c=parseInt(r[3],16),u=c<<4|c,f=parseInt(r[4],16),p=f<<4|f,g=yo(i<<16|A<<8|u);return g=Fl(g,8),ai(g,p)}else if(r.length===7){let e=yo(parseInt(r.substring(1),16));return e=Fl(e,8),ai(e,255)}else if(r.length===9)return yo(parseInt(r.substring(1),16))}if(r.indexOf("rgba")===0){let e=r.trim().substring(4).replace("(","").replace(")","").split(",");return ln(parseInt(e[0]),parseInt(e[1]),parseInt(e[2]),Math.floor(parseFloat(e[3])*255))}if(r.indexOf("rgb")===0){let e=r.trim().substring(3).replace("(","").replace(")","").split(",");return ln(parseInt(e[0]),parseInt(e[1]),parseInt(e[2]),255)}if(Ai.call(Ml,r))return Ml[r];throw new Error("unknown style format: "+r)}var Ai=Object.hasOwnProperty;function WF(r,e=Uint8Array){let i=r.reduce((c,u)=>c+u.length,0);if(!r.length)return null;let o=new e(i),A=0;for(let c of r)o.set(c,A),A+=c.length;return o}var Tl=class{constructor(...r){if(r.length===4){this.start={},this.end={},[this.start.x,this.start.y,this.end.x,this.end.y]=r;for(let e in r)if(Ai.call(r,e)&&typeof r[e]!="number")throw TypeError("When passing 4 arguments, only numbers may be passed")}else if(r.length===2)[this.start,this.end]=r;else throw Error("Please pass either two Point objects, or 4 integers to the constructor")}getLength(){return Math.sqrt(Math.pow(this.start.x-this.end.x,2)+Math.pow(this.start.y-this.end.y,2))}is_invalid(){return!!(Number.isNaN(this.start.x)||Number.isNaN(this.end.x)||Number.isNaN(this.start.y)||Number.isNaN(this.end.y)||this.start.x>Number.MAX_SAFE_INTEGER||this.start.y>Number.MAX_SAFE_INTEGER||this.end.x>Number.MAX_SAFE_INTEGER||this.end.y>Number.MAX_SAFE_INTEGER)}},lt=class Wr{constructor(e,i){this.x=e,this.y=i}clone(){return new Wr(this.x,this.y)}distance(e){return Math.sqrt(Math.pow(e.x-this.x,2)+Math.pow(e.y-this.y,2))}add(e){return new Wr(this.x+e.x,this.y+e.y)}subtract(e){return new Wr(this.x-e.x,this.y-e.y)}magnitude(){return Math.sqrt(this.dotProduct(this))}dotProduct(e){return this.x*e.x+this.y*e.y}divide(e){return new Wr(this.x/e,this.y/e)}floor(){return new Wr(Math.floor(this.x),Math.floor(this.y))}round(){return new Wr(Math.round(this.x),Math.round(this.y))}unit(){return this.divide(this.magnitude())}rotate(e){return new Wr(Math.cos(e)*this.x-Math.sin(e)*this.y,Math.sin(e)*this.x+Math.cos(e)*this.y)}scale(e){return new Wr(this.x*e,this.y*e)}equals(e){return this.x===e.x&&this.y===e.y}},Rm=r=>Math.PI/180*r;function JF(r){let e=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,A=Number.NEGATIVE_INFINITY;return r.forEach(c=>{e=Math.min(e,c.x),i=Math.min(i,c.y),o=Math.max(o,c.x),A=Math.max(A,c.y)}),new kl(e,i,o,A)}var kl=class h0{constructor(e,i,o,A){this.x1=e,this.y1=i,this.x2=o,this.y2=A}contains(e){return!(e.x<this.x1||e.x>=this.x2||e.y<this.y1||e.y>=this.y2)}intersect(e){let i=Math.max(this.x1,e.x1),o=Math.max(this.y1,e.y1),A=Math.min(this.x2,e.x2),c=Math.min(this.y2,e.y2);return new h0(i,o,A,c)}},Gm=Ol(IF(),1),An={},VF=class{constructor(r,e,i,o,A){this.binary=r,this.family=e,this.weight=i,this.style=o,this.variant=A,this.loaded=!1,this.font=null}_load(r){if(this.loaded){r&&r();return}let e=function(i,o){if(i)throw new Error("Could not load font: "+i);this.loaded=!0,this.font=o,r&&r()}.bind(this);Gm.load(this.binary,e)}loadSync(){if(this.loaded)return this;try{return this.font=Gm.loadSync(this.binary),this.loaded=!0,this}catch(r){throw new Error("Could not load font: "+r)}}load(){return this.loadPromise()}loadPromise(){return new Promise((r,e)=>{this._load(()=>r())})}};function jF(r,e,i,o,A){return An[e]=new VF(r,e,i,o,A),An[e]}var _F=An;function f0(r){return An[r]||(r=Object.keys(An)[0]),An[r]}function Yl(r,e,i,o,A,c,u){let f=f0(r._font.family);if(!f){console.warn("Font missing",r._font);return}let p=Gl(r,e);(c==="end"||c==="right")&&(i=i-p.width),c==="center"&&(i=i-p.width/2),u==="top"&&(o=o+p.emHeightAscent),u==="middle"&&(o=o+p.emHeightAscent/2+p.emHeightDescent/2),u==="bottom"&&(o=o+p.emHeightDescent);let g=r._font.size;if(!f.loaded){console.warn("font not loaded yet",r._font);return}let m=f.font.getPath(e,i,o,g);r.beginPath(),m.commands.forEach(function(E){switch(E.type){case"M":r.moveTo(E.x,E.y);break;case"Q":r.quadraticCurveTo(E.x1,E.y1,E.x,E.y);break;case"L":r.lineTo(E.x,E.y);break;case"C":r.bezierCurveTo(E.x1,E.y1,E.x2,E.y2,E.x,E.y);break;case"Z":{r.closePath(),A?r.fill():r.stroke(),r.beginPath();break}}})}function Gl(r,e){let i=f0(r._font.family);if(!i)return console.warn("WARNING. Can't find font family ",r._font),{width:10,emHeightAscent:8,emHeightDescent:2};if(!i.font)return console.warn("WARNING. Can't find font family ",r._font),{width:10,emHeightAscent:8,emHeightDescent:2};let o=r._font.size,A=i.font.stringToGlyphs(e),c=0;return A.forEach(function(u){c+=u.advanceWidth}),{width:c/i.font.unitsPerEm*o,emHeightAscent:i.font.ascender/i.font.unitsPerEm*o,emHeightDescent:i.font.descender/i.font.unitsPerEm*o}}var Ii=class{constructor(){this.stops=[]}addColorStop(r,e){let i=Ul(""+e);this.stops.push({t:r,color:i})}_lerpStops(r){r<0&&(r+=1),r>1&&(r-=1);let e=this.stops.slice().reverse().find(p=>p.t<=r),i=this.stops.find(p=>p.t>r);i||(i=this.stops.at(-1));let o=p0(r,e.t,i.t,0,1),A=p=>an(p).map(g=>g/255),c=A(e.color),u=A(i.color),f=c.map((p,g)=>HF(p,u[g],o));return(p=>{let g=p.map(m=>m*255);return ln(g[0],g[1],g[2],255)})(f)}},ZF=class extends Ii{constructor(r,e,i,o){super(),this.start=new lt(r,e),this.end=new lt(i,o)}colorAt(r,e){let i=new lt(r,e),o=this.end.subtract(this.start),A=o.magnitude();o=o.divide(A);let c=i.subtract(this.start).dotProduct(o);return c=Rl(c/A,0,1),this._lerpStops(c)}},XF=class extends Ii{constructor(r,e,i,o){super(),this.start=new lt(r,e)}colorAt(r,e){let i=new lt(r,e).distance(this.start),o=Rl(i/10,0,1);return this._lerpStops(o)}};function p0(r,e,i,o,A){return(r-e)/(i-e)*(A-o)+o}var zF=class extends Ii{constructor(r,e,i){super(),this.angle=r,this.start=new lt(e,i)}colorAt(r,e){let i=this.start.subtract(new lt(r,e)),o=Math.atan2(i.y,i.x)-this.angle,A=p0(o,-Math.PI,Math.PI,0,1);return this._lerpStops(A)}},Lm=[1,0,0,1,0,0],qF=class d0{constructor(e){this.context=e,this.matrix=[1,0,0,1,0,0],this.stack=[]}getMatrix(){return this.matrix}setMatrix(e){this.matrix=[e[0],e[1],e[2],e[3],e[4],e[5]],this.setTransform()}cloneMatrix(e){return[e[0],e[1],e[2],e[3],e[4],e[5]]}cloneTransform(){let e=new d0;return e.setMatrix(this.getMatrix()),e}identity(){this.matrix=Lm,this.setTransform()}isIdentity(){for(let e=0;e<this.matrix.length;e++)if(this.matrix[e]!==Lm[e])return!1;return!0}fromDomMatrix(e){return[e.a,e.b,e.c,e.d,e.e,e.f]}asDomMatrix(){return{is2D:!0,isIdentity:!1,a:this.matrix[0],b:this.matrix[1],c:this.matrix[2],d:this.matrix[3],e:this.matrix[4]}}multiply(e){let i=this.matrix[0]*e[0]+this.matrix[2]*e[1],o=this.matrix[1]*e[0]+this.matrix[3]*e[1],A=this.matrix[0]*e[2]+this.matrix[2]*e[3],c=this.matrix[1]*e[2]+this.matrix[3]*e[3],u=this.matrix[0]*e[4]+this.matrix[2]*e[5]+this.matrix[4],f=this.matrix[1]*e[4]+this.matrix[3]*e[5]+this.matrix[5];this.matrix[0]=i,this.matrix[1]=o,this.matrix[2]=A,this.matrix[3]=c,this.matrix[4]=u,this.matrix[5]=f,this.setTransform()}invert(){let e=1/(this.matrix[0]*this.matrix[3]-this.matrix[1]*this.matrix[2]),i=this.matrix[3]*e,o=-this.matrix[1]*e,A=-this.matrix[2]*e,c=this.matrix[0]*e,u=e*(this.matrix[2]*this.matrix[5]-this.matrix[3]*this.matrix[4]),f=e*(this.matrix[1]*this.matrix[4]-this.matrix[0]*this.matrix[5]);this.matrix[0]=i,this.matrix[1]=o,this.matrix[2]=A,this.matrix[3]=c,this.matrix[4]=u,this.matrix[5]=f,this.setTransform()}save(){let e=this.cloneMatrix(this.getMatrix());this.stack.push(e),this.context&&this.context.save()}restore(){if(this.stack.length>0){let e=this.stack.pop();this.setMatrix(e)}this.context&&this.context.restore()}setTransform(){this.context}translate(e,i){this.matrix[4]+=this.matrix[0]*e+this.matrix[2]*i,this.matrix[5]+=this.matrix[1]*e+this.matrix[3]*i,this.setTransform()}rotate(e){let i=Math.cos(e),o=Math.sin(e),A=this.matrix[0]*i+this.matrix[2]*o,c=this.matrix[1]*i+this.matrix[3]*o,u=this.matrix[0]*-o+this.matrix[2]*i,f=this.matrix[1]*-o+this.matrix[3]*i;this.matrix[0]=A,this.matrix[1]=c,this.matrix[2]=u,this.matrix[3]=f,this.setTransform()}scale(e,i){this.matrix[0]*=e,this.matrix[1]*=e,this.matrix[2]*=i,this.matrix[3]*=i,this.setTransform()}transformPoint(e){let i=e.x,o=e.y;return new lt(i*this.matrix[0]+o*this.matrix[2]+this.matrix[4],i*this.matrix[1]+o*this.matrix[3]+this.matrix[5])}},g0=class{constructor(r){this._bitmap=r,this._fillColor=255,this._strokeColor=255,this._lineWidth=1,this._globalAlpha=1,this._transform=new qF,this._font={family:"invalid",size:12},this.textAlign="start",this.textBaseline="alphabetic",this.imageSmoothingEnabled=!0,this._clip=null,this._fillStyle_text="",this._strokeStyle_text="",this.states=[]}get canvas(){return this._bitmap}get lineWidth(){return this._lineWidth}set lineWidth(r){this._lineWidth=r}get globalAlpha(){return this._globalAlpha}set globalAlpha(r){this._globalAlpha=Rl(r,0,1)}get font(){return`${this._font.size} ${this._font.family}`}set font(r){let e=r.trim().indexOf(" ");this._font.size=parseInt(r.slice(0,e)),this._font.family=r.slice(e).trim()}get fillStyle(){return this._fillStyle_text}set fillStyle(r){r instanceof Ii?this._fillColor=r:(this._fillColor=Ul(r),this._fillStyle_text=r)}get strokeStyle(){return this._strokeStyle_text}set strokeStyle(r){r instanceof Ii?this._strokeStyle_text=r.toString():(this._strokeColor=Ul(r),this._strokeStyle_text=r)}createLinearGradient(r,e,i,o){return new ZF(r,e,i,o)}createRadialGradient(r,e){return new XF(r,e)}createConicGradient(r,e,i){return new zF(r,e,i)}save(){this.states.push({_clip:this._clip}),this._transform.save()}translate(r,e){this._transform.translate(r,e)}rotate(r){this._transform.rotate(r)}scale(r,e){this._transform.scale(r,e)}transform(...r){let e=[...r];this._transform.multiply(e)}setTransform(...r){if(this._transform.identity(),r[0].is2D){let e=this._transform.fromDomMatrix(r[0]);this._transform.multiply(e)}else this._transform.multiply([...r])}getTransform(){return this._transform.asDomMatrix()}restore(){this._transform.restore();let r=this.states.pop();r&&(this._clip=r._clip)}fillRect(r,e,i,o){if(this._transform.isIdentity()){if(typeof this._fillColor=="number"&&an(this._fillColor)[3]===255){for(let A=r;A<r+i;A++)for(let c=e;c<e+o;c++)this.pixelInsideClip(A,c)&&this._bitmap._isValidCoords(A,c)&&this._bitmap.setPixelRGBA(A,c,this._fillColor);return}for(let A=r;A<r+i;A++)for(let c=e;c<e+o;c++)this.fillPixelWithColor(A,c,this.calculateRGBA(A,c))}else{let A=this.path,c=this._closed;this.beginPath(),this.rect(r-1e-4,e-1e-4,i,o),this.closePath(),this.fill(),this.path=A,this._closed=c}}clearRect(r,e,i,o){for(let A=r;A<r+i;A++)for(let c=e;c<e+o;c++)this._bitmap._isValidCoords(r,e)&&this._bitmap.setPixelRGBA(A,c,0)}strokeRect(r,e,i,o){for(let A=r;A<r+i;A++)this.fillPixelWithColor(A,e,this.calculateRGBA_stroke(A,e)),this.fillPixelWithColor(A,e+o,this.calculateRGBA_stroke(A,e+o));for(let A=e;A<e+o;A++)this.fillPixelWithColor(r,A,this.calculateRGBA_stroke(r,A)),this.fillPixelWithColor(r+i,A,this.calculateRGBA_stroke(r+i,A))}strokePixel(r,e){if(!this.pixelInsideClip(r,e))return;let i=this.calculateRGBA_stroke(r,e),o=this._bitmap.getPixelRGBA(r,e),A=this.composite(o,i);this._bitmap.setPixelRGBA(r,e,A)}fillPixelWithColor(r,e,i){if(!this.pixelInsideClip(r,e)||!this._bitmap._isValidCoords(r,e))return;let o=i,A=this._bitmap.getPixelRGBA(r,e),c=this.composite(A,o);this._bitmap.setPixelRGBA(r,e,c)}composite(r,e){let i=an(r),o=an(e),A=o.map(p=>p/255),c=i.map(p=>p/255);A[3]=A[3]*this._globalAlpha;function u(p,g,m,E){return(p*m+g*E*(1-m))/(m+E*(1-m))}let f=A.slice(0,3).map((p,g)=>u(A[g],c[g],A[3],c[3])).map(p=>p*255);return ln(f[0],f[1],f[2],Math.max(i[3],o[3]))}calculateRGBA(r,e){return this._fillColor instanceof Ii?this._fillColor.colorAt(r,e):this._fillColor}calculateRGBA_stroke(r,e){return this._strokeColor instanceof Ii?this._strokeColor.colorAt(r,e):this._strokeColor}getImageData(r,e,i,o){return this._bitmap._copySubBitmap(r,e,i,o)}putImageData(r,e,i){this._bitmap._pasteSubBitmap(r,e,i)}drawImage(r,e,i,o,A,c,u,f,p){if(typeof o>"u")return this.drawImage(r,0,0,r.width,r.height,e,i,r.width,r.height);if(typeof c>"u")return this.drawImage(r,0,0,r.width,r.height,e,i,o,A);let g=new kl(e,i,e+o,i+A),m=[new lt(c,u),new lt(c+f,u),new lt(c+f,u+p),new lt(c,u+p)];m=m.map(v=>this._transform.transformPoint(v));let E=JF(m),b=new kl(0,0,this._bitmap.width,this._bitmap.height);E=E.intersect(b);let y=this._transform.cloneTransform();y.invert();function Q(v,I,F,k,_){return(v-I)/(F-I)*(_-k)+k}for(let v=E.x1;v<E.x2;v++)for(let I=E.y1;I<E.y2;I++){let F=new lt(v,I),k=y.transformPoint(F).round();if(k=new lt(Q(k.x,c,c+f,e,e+o),Q(k.y,u,u+p,i,i+A)),g.contains(k)&&this.pixelInsideClip(F.x,F.y)&&this._bitmap._isValidCoords(F.x,F.y)){let _=r.getPixelRGBA(k.x,k.y),M=this._bitmap.getPixelRGBA(F.x,F.y),O=this.composite(M,_);this._bitmap.setPixelRGBA(F.x,F.y,O)}}}beginPath(){this.path=[],this._closed=!1}moveTo(r,e){return this._moveTo(new lt(r,e))}_moveTo(r){r=this._transform.transformPoint(r),this.pathstart=r,this.path.push(["m",r])}lineTo(r,e){return this._lineTo(new lt(r,e))}_lineTo(r){this.path.push(["l",this._transform.transformPoint(r)])}quadraticCurveTo(r,e,i,o){let A=this._transform.transformPoint(new lt(r,e)),c=this._transform.transformPoint(new lt(i,o));this.path.push(["q",A,c])}bezierCurveTo(r,e,i,o,A,c){this._bezierCurveTo(new lt(r,e),new lt(i,o),new lt(A,c))}_bezierCurveTo(r,e,i){r=this._transform.transformPoint(r),e=this._transform.transformPoint(e),i=this._transform.transformPoint(i),this.path.push(["b",r,e,i])}arc(r,e,i,o,A,c){function u(p){let g=r+Math.cos(p)*i,m=e+Math.sin(p)*i;return new lt(g,m)}o>A&&(A+=Math.PI*2);let f=Math.PI/16;if(c){let p=A;A=o+Math.PI*2,o=p}this._moveTo(u(o));for(let p=o;p<=A;p+=f)this._lineTo(u(p));this._lineTo(u(A))}arcTo(){throw new Error("arcTo not yet supported")}rect(r,e,i,o){this.moveTo(r,e),this.lineTo(r+i,e),this.lineTo(r+i,e+o),this.lineTo(r,e+o),this.lineTo(r,e)}roundRect(r,e,i,o,A){let c={bl:0,br:0,tr:0,tl:0};typeof A>"u"&&(c={bl:0,br:0,tr:0,tl:0}),typeof A=="number"&&(c={tl:A,tr:A,br:A,bl:A}),Array.isArray(A)&&(A.length===0&&(c={bl:0,br:0,tr:0,tl:0}),A.length===1&&(c={tl:A[0],tr:A[0],br:A[0],bl:A[0]}),A.length===2&&(c={tl:A[0],tr:A[1],br:A[0],bl:A[1]}),A.length===3&&(c={tl:A[0],tr:A[1],br:A[2],bl:A[1]}),A.length===4&&(c={tl:A[0],tr:A[1],br:A[2],bl:A[3]})),this.moveTo(r+c.tl,e),this.lineTo(r+i-c.tr,e),this.quadraticCurveTo(r+i,e,r+i,e+c.tr),this.lineTo(r+i,e+o-c.br),this.quadraticCurveTo(r+i,e+o,r+i-c.br,e+o),this.lineTo(r+c.bl,e+o),this.quadraticCurveTo(r,e+o,r,e+o-c.bl),this.lineTo(r,e+c.tl),this.quadraticCurveTo(r,e,r+c.tl,e),this.lineTo(r+c.tl,e)}ellipse(){throw new Error("ellipse not yet supported")}clip(){this._clip=on(this.path)}measureText(r){return Gl(this,r)}closePath(){if(!this._closed){if(!this.pathstart){console.warn("missing path start");let r=this.path[0];r[0]==="l"&&(this.pathstart=r[1])}this.path.push(["l",this.pathstart]),this._closed=!0}}stroke(){let r=KF(this.path),e=$F(r,this.lineWidth/2),i=on(e),o=this.fillStyle;if(this.fillStyle=this.strokeStyle,this.imageSmoothingEnabled?this.fill_aa(i):this.fill_noaa(i),this.fillStyle=o,this.debug){this.save();let A=this.strokeStyle,c=this.lineWidth;this.strokeStyle="red",this.lineWidth=1,console.log("path is",this.path),on(this.path).forEach(u=>this.drawLine(u)),console.log("flat path is",r),on(r).forEach(u=>this.drawLine(u)),console.log("stroke path is",e),on(e).forEach(u=>this.drawLine(u)),console.log("final lines are",i),this.strokeStyle=A,this.lineWidth=c,this.restore()}}drawLine(r){if(r.is_invalid())return console.error("cannot draw line",r);this.imageSmoothingEnabled?this.drawLine_aa(r):this.drawLine_noaa(r)}drawLine_noaa(r){let e=Math.floor(r.start.x),i=Math.floor(r.start.y),o=Math.floor(r.end.x),A=Math.floor(r.end.y),c=Math.abs(o-e),u=e<o?1:-1,f=Math.abs(A-i),p=i<A?1:-1,g=(c>f?c:-f)/2;for(;this.strokePixel(e,i),!(e===o&&i===A);){let m=g;m>-c&&(g-=f,e+=u),m<f&&(g+=c,i+=p)}}drawLine_aa(r){let e=this._lineWidth,i=Math.floor(r.start.x),o=Math.floor(r.start.y),A=Math.floor(r.end.x),c=Math.floor(r.end.y),u=Math.abs(A-i),f=i<A?1:-1,p=Math.abs(c-o),g=o<c?1:-1,m=u-p,E,b,y,Q=u+p===0?1:Math.sqrt(u*u+p*p),v=Co(this.calculateRGBA_stroke(i,o),4294967040),I=Co(this.calculateRGBA_stroke(i,o),255);for(e=(e+1)/2;;){let F=255-~~Math.max(0,255*(Math.abs(m-u+p)/Q-e+1)),k=ai(v,I*F/255);if(this.fillPixelWithColor(i,o,k),E=m,b=i,2*E>=-u){for(E+=p,y=o;E<Q*e&&(c!==y||u>p);E+=u){let _=255-~~Math.max(0,255*(Math.abs(E)/Q-e+1)),M=ai(v,I*_/255);this.fillPixelWithColor(i,y+=g,M)}if(i===A)break;E=m,m-=p,i+=f}if(2*E<=p){for(E=u-E;E<Q*e&&(A!==b||u<p);E+=p){let _=255-~~Math.max(0,255*(Math.abs(E)/Q-e+1)),M=ai(v,I*_/255);this.fillPixelWithColor(b+=f,o,M)}if(o===c)break;m+=u,o+=g}}}fill(){this._closed||this.closePath();let r=on(this.path);this.imageSmoothingEnabled?this.fill_aa(r):this.fill_noaa(r)}fill_aa(r){let e=Hm(r),i=Math.min(e.y2+1,this._bitmap.height),o=Math.max(e.y-1,0);for(let A=i;A>=o;A--){let c=Sl(r,A);for(let u=0;u<c.length;u+=2){let f=Pm(c[u]),p=Pm(c[u+1]),g=Math.floor(c[u]),m=Math.floor(c[u+1]);for(let E=g;E<=m;E++){let b=Co(this.calculateRGBA(E,A),4294967040),y=Co(this.calculateRGBA(E,A),255),Q=this.calculateRGBA(E,A);if(E===g){let v=ai(b,(1-f)*y);this.fillPixelWithColor(E,A,v);continue}if(E===m){let v=ai(b,p*y);this.fillPixelWithColor(E,A,v);continue}this.fillPixelWithColor(E,A,Q)}}}}fill_noaa(r){let e=Hm(r),i=Math.min(e.y2+1,this._bitmap.height),o=Math.max(e.y-1,0);for(let A=i;A>=o;A--){let c=Sl(r,A);for(let u=0;u<c.length;u+=2){let f=Math.floor(c[u]),p=Math.floor(c[u+1]);for(let g=f;g<=p;g++){let m=this.calculateRGBA(g,A);if(g===f){this.fillPixelWithColor(g,A,m);continue}if(g===p){this.fillPixelWithColor(g,A,m);continue}this.fillPixelWithColor(g,A,m)}}}}pixelInsideClip(r,e){return this._clip?Sl(this._clip,e).filter(i=>i<r).length%2!==0:!0}fillText(r,e,i){Yl(this,r,e,i,!0,this.textAlign,this.textBaseline)}strokeText(r,e,i){Yl(this,r,e,i,!1,this.textAlign,this.textBaseline)}};function Pm(r){return r-Math.floor(r)}function on(r){let e=[],i=null;return r.forEach(function(o){if(o[0]==="m"&&(i=o[1]),o[0]==="l"){let A=o[1];e.push(new Tl(i,A)),i=A}if(o[0]==="q"){let A=[i,o[1],o[2]];for(let c=0;c<1;c+=.1){let u=tT(A,c);e.push(new Tl(i,u)),i=u}}if(o[0]==="b"){let A=[i,o[1],o[2],o[3]];m0(A,10).forEach(c=>{e.push(new Tl(i,c)),i=c})}}),e}function KF(r){let e=[],i=null;return r.forEach(o=>{if(o[0]==="m"){i=o[1],e.push(["m",new lt(i.x,i.y)]);return}if(o[0]==="l"){i=o[1],e.push(["l",new lt(i.x,i.y)]);return}if(o[0]==="b"){let A=[i,o[1],o[2],o[3]],c=m0(A,10);for(let u=1;u<c.length;u+=2)e.push(["l",new lt(c[u].x,c[u].y)]);i=o[3]}}),e}function $F(r,e){let i=[],o=[];r.forEach(u=>{u[0]==="m"&&(o.length>0&&i.push(o),o=[]),o.push(u)}),o.length>0&&i.push(o),i.forEach(u=>{u[0][0]!=="m"&&console.warn("missing a starting move command!")});let A=i.map(u=>eT(u,e)),c=[];return A.forEach(u=>u.forEach(f=>c.push(f))),c}function eT(r,e){let i=null,o=[],A=[],c=null;function u(m,E,b){m.equals(E)&&console.log("same points!",m,E);let y=m.subtract(E).unit(),Q=y.rotate(Rm(90)),v=y.rotate(Rm(-90));return[Q.scale(b).add(E),v.scale(b).add(E)]}let f=null;function p(m){return m<-Math.PI?m+Math.PI*2:m>+Math.PI?m-Math.PI*2:m}r.forEach(function(m,E){if(m[0]==="m"&&(i=m[1],f=m,c=i.clone(),o.push(["m",c.clone()])),m[0]==="l"){let b=i,y=m[1];if(b.equals(y))return console.warn("can't project the same paths",E,m,b,y);let Q=r[E+1];if(f[0]==="m"){let R=u(y,b,e);o.push(["l",R[1]]),A.push(["l",R[0]])}if(f=m,!Q){let R=u(b,y,e);o.push(["l",R[0]]),A.push(["l",R[1]]);return}let v=Q[1];if(v.equals(y))return console.warn("can't project the same paths",E,m,b,y);let I=b.subtract(y),F=v.subtract(y),k=Math.atan2(I.y,I.x),_=Math.atan2(F.y,F.x),M=p(_-k),O=u(b,y,e),P=u(v,y,e);if(M<0){o.push(["l",O[0]]),o.push(["l",P[1]]);let R=e/Math.cos((Math.PI+M)/2),re=b.subtract(y).unit().rotate(M/2).scale(R).add(y);A.push(["l",re])}else{let R=e/Math.cos(-(Math.PI-M)/2);R>10&&(R=10);let re=v.subtract(y).unit().rotate(-M/2).scale(R).add(y);o.push(["l",re]),A.push(["l",O[1]]),A.push(["l",P[0]])}i=y}}),A.reverse();let g=[].concat(o).concat(A);return g.push(["l",c]),g}function tT(r,e){let i=(1-e)*(1-e)*r[0].x+2*(1-e)*e*r[1].x+e*e*r[2].x,o=(1-e)*(1-e)*r[0].y+2*(1-e)*e*r[1].y+e*e*r[2].y;return new lt(i,o)}function m0(r,e){function i(o){if(iT(o)<e)return[o[0],o[3]];let A=rT(o,.5);return i(A[0]).concat(i(A[1]))}return i(r)}function rT(r,e){let i=r[0],o=r[1],A=r[2],c=r[3],u=Kn(i,o,e),f=Kn(o,A,e),p=Kn(c,A,e),g=Kn(u,f,e),m=Kn(f,p,e),E={x:(m.x-g.x)*e+g.x,y:(m.y-g.y)*e+g.y};return[[i,u,g,E],[E,m,p,c]]}function iT(r){let e=r[0],i=r[1],o=r[2],A=r[3],c=Math.pow(3*i.x-2*e.x-A.x,2),u=Math.pow(3*i.y-2*e.y-A.y,2),f=Math.pow(3*o.x-2*A.x-e.x,2),p=Math.pow(3*o.y-2*A.y-e.y,2);return c<f&&(c=f),u<p&&(u=p),c+u}function Kn(r,e,i){return{x:(e.x-r.x)*i+r.x,y:(e.y-r.y)*i+r.y}}function Hm(r){let e={x:Number.MAX_VALUE,y:Number.MAX_VALUE,x2:Number.MIN_VALUE,y2:Number.MIN_VALUE};function i(o){e.x=Math.min(e.x,o.x),e.y=Math.min(e.y,o.y),e.x2=Math.max(e.x2,o.x),e.y2=Math.max(e.y2,o.y)}return r.forEach(function(o){i(o.start),i(o.end)}),e}function Sl(r,e){let i=[];for(let o=0;o<r.length;o++){let A=r[o].start,c=r[o].end;if(A.y<e&&c.y>=e||c.y<e&&A.y>=e){let u=A.x+(e-A.y)/(c.y-A.y)*(c.x-A.x);i.push(u)}}return i.sort(function(o,A){return o-A})}var Qo=class B0{constructor(e,i){this.width=Math.floor(e),this.height=Math.floor(i),this.data=new Uint8Array(this.width*this.height*4);let o=255;for(let A=0;A<this.height;A++)for(let c=0;c<this.width;c++)this.setPixelRGBA(c,A,o);this._context=new g0(this)}calculateIndex(e,i){return e=Math.floor(e),i=Math.floor(i),e<0||i<0||e>=this.width||i>=this.height?0:(this.width*i+e)*4}setPixelRGBA(e,i,o){this.validate_coords(e,i);let A=this.calculateIndex(e,i),c=an(o);this.data[A+0]=c[0],this.data[A+1]=c[1],this.data[A+2]=c[2],this.data[A+3]=c[3]}setPixelRGBA_i(e,i,o,A,c,u){let f=this.calculateIndex(e,i);this.data[f+0]=o,this.data[f+1]=A,this.data[f+2]=c,this.data[f+3]=u}getPixelRGBA(e,i){this.validate_coords(e,i);let o=this.calculateIndex(e,i);return ln(this.data[o+0],this.data[o+1],this.data[o+2],this.data[o+3])}getDebugPixelRGBA(e,i){let o=this.calculateIndex(e,i),A=this.width,c=this.height,u=this.data;return console.dir({i:o,width:A,height:c,data:u}),ln(this.data[o+0],this.data[o+1],this.data[o+2],this.data[o+3])}getPixelRGBA_separate(e,i){let o=this.calculateIndex(e,i);return this.data.slice(o,o+4)}getContext(e){return e==="2d"?this._context:null}_copySubBitmap(e,i,o,A){let c=new B0(o,A);for(let u=0;u<o;u++)for(let f=0;f<A;f++){let p=this.calculateIndex(e+u,i+f),g=c.calculateIndex(u,f);for(let m=0;m<4;m++)c.data[g+m]=this.data[p+m]}return c}_pasteSubBitmap(e,i,o){for(let A=0;A<e.width;A++)for(let c=0;c<e.height;c++){let u=this.calculateIndex(i+A,o+c),f=e.calculateIndex(A,c);for(let p=0;p<4;p++)this.data[u+p]=e.data[f+p]}}_isValidCoords(e,i){return!(e<0||i<0||e>=this.width||i>=this.height)}validate_coords(e,i){if(e<0)throw new Error(`Invalid Index: x ${e} <0`);if(i<0)throw new Error(`Invalid Index: y ${i} <0`);if(e>=this.width)throw new Error(`Invalid Index: x ${e} >= width ${this.width}`);if(i>=this.height)throw new Error(`Invalid Index: y ${i} >= height ${this.height}`)}},nT=Ol(RF(),1),E0=Ol(PF(),1),{PNG:w0}=nT;function sT(r,e){return new Qo(r,e)}function oT(r,e,i={}){return new Promise((o,A)=>{if(!Ai.call(r,"data")||!Ai.call(r,"width")||!Ai.call(r,"height"))return A(new TypeError("Invalid bitmap image provided"));let c=new w0({width:r.width,height:r.height,deflateLevel:i.deflateLevel||9,deflateStrategy:i.deflateStrategy||3});for(let u=0;u<r.width;u++)for(let f=0;f<r.height;f++){let p=r.getPixelRGBA(u,f),g=(f*r.width+u)*4,m=an(p);for(let E=0;E<4;E++)c.data[g+E]=m[E]}c.on("error",u=>{A(u)}).pack().pipe(e).on("finish",()=>{o()}).on("error",u=>{A(u)})})}function aT(r){return new Promise((e,i)=>{r.pipe(new w0).on("parsed",function(){let o=new Qo(this.width,this.height);for(let A=0;A<o.data.length;A++)o.data[A]=this.data[A];e(o)}).on("error",function(o){i(o)})})}function AT(r,e,i=90){return new Promise((o,A)=>{if(!Ai.call(r,"data")||!Ai.call(r,"width")||!Ai.call(r,"height"))return A(new TypeError("Invalid bitmap image provided"));let c={data:r.data,width:r.width,height:r.height};e.on("error",u=>A(u)),e.write(E0.encode(c,i).data,()=>{e.end(),o()})})}function lT(r,e){return new Promise((i,o)=>{try{let A=[];r.on("data",c=>A.push(c)),r.on("end",()=>{let c=WF(A),u=null;try{u=E0.decode(c,e)}catch(p){o(p);return}let f=new Qo(u.width,u.height);for(let p=0;p<u.width;p++)for(let g=0;g<u.height;g++){let m=(g*u.width+p)*4;f.setPixelRGBA_i(p,g,u.data[m+0],u.data[m+1],u.data[m+2],u.data[m+3])}i(f)}),r.on("error",c=>{o(c)})}catch(A){console.log(A),o(A)}})}});var Q0=oe((x0,vo)=>{var b0=(()=>{var r=Object.defineProperty,e=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,A=(t,n)=>{for(var s in n)r(t,s,{get:n[s],enumerable:!0})},c=(t,n,s,a)=>{if(n&&typeof n=="object"||typeof n=="function")for(let l of i(n))!o.call(t,l)&&l!==s&&r(t,l,{get:()=>n[l],enumerable:!(a=e(n,l))||a.enumerable});return t},u=t=>c(r({},"__esModule",{value:!0}),t),f={};A(f,{BoundingBox:()=>Ee,Font:()=>pu,Glyph:()=>Ui,Path:()=>z,_parse:()=>he,load:()=>jy,loadSync:()=>_y,parse:()=>Vy});var p=0,g=-3;function m(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function E(t,n){this.source=t,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=n,this.destLen=0,this.ltree=new m,this.dtree=new m}var b=new m,y=new m,Q=new Uint8Array(30),v=new Uint16Array(30),I=new Uint8Array(30),F=new Uint16Array(30),k=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),_=new m,M=new Uint8Array(320);function O(t,n,s,a){var l,h;for(l=0;l<s;++l)t[l]=0;for(l=0;l<30-s;++l)t[l+s]=l/s|0;for(h=a,l=0;l<30;++l)n[l]=h,h+=1<<t[l]}function P(t,n){var s;for(s=0;s<7;++s)t.table[s]=0;for(t.table[7]=24,t.table[8]=152,t.table[9]=112,s=0;s<24;++s)t.trans[s]=256+s;for(s=0;s<144;++s)t.trans[24+s]=s;for(s=0;s<8;++s)t.trans[168+s]=280+s;for(s=0;s<112;++s)t.trans[176+s]=144+s;for(s=0;s<5;++s)n.table[s]=0;for(n.table[5]=32,s=0;s<32;++s)n.trans[s]=s}var R=new Uint16Array(16);function re(t,n,s,a){var l,h;for(l=0;l<16;++l)t.table[l]=0;for(l=0;l<a;++l)t.table[n[s+l]]++;for(t.table[0]=0,h=0,l=0;l<16;++l)R[l]=h,h+=t.table[l];for(l=0;l<a;++l)n[s+l]&&(t.trans[R[n[s+l]]++]=l)}function q(t){t.bitcount--||(t.tag=t.source[t.sourceIndex++],t.bitcount=7);var n=t.tag&1;return t.tag>>>=1,n}function le(t,n,s){if(!n)return s;for(;t.bitcount<24;)t.tag|=t.source[t.sourceIndex++]<<t.bitcount,t.bitcount+=8;var a=t.tag&65535>>>16-n;return t.tag>>>=n,t.bitcount-=n,a+s}function Ae(t,n){for(;t.bitcount<24;)t.tag|=t.source[t.sourceIndex++]<<t.bitcount,t.bitcount+=8;var s=0,a=0,l=0,h=t.tag;do a=2*a+(h&1),h>>>=1,++l,s+=n.table[l],a-=n.table[l];while(a>=0);return t.tag=h,t.bitcount-=l,n.trans[s+a]}function ie(t,n,s){var a,l,h,d,B,w;for(a=le(t,5,257),l=le(t,5,1),h=le(t,4,4),d=0;d<19;++d)M[d]=0;for(d=0;d<h;++d){var x=le(t,3,0);M[k[d]]=x}for(re(_,M,0,19),B=0;B<a+l;){var C=Ae(t,_);switch(C){case 16:var S=M[B-1];for(w=le(t,2,3);w;--w)M[B++]=S;break;case 17:for(w=le(t,3,3);w;--w)M[B++]=0;break;case 18:for(w=le(t,7,11);w;--w)M[B++]=0;break;default:M[B++]=C;break}}re(n,M,0,a),re(s,M,a,l)}function se(t,n,s){for(;;){var a=Ae(t,n);if(a===256)return p;if(a<256)t.dest[t.destLen++]=a;else{var l,h,d,B;for(a-=257,l=le(t,Q[a],v[a]),h=Ae(t,s),d=t.destLen-le(t,I[h],F[h]),B=d;B<d+l;++B)t.dest[t.destLen++]=t.dest[B]}}}function ye(t){for(var n,s,a;t.bitcount>8;)t.sourceIndex--,t.bitcount-=8;if(n=t.source[t.sourceIndex+1],n=256*n+t.source[t.sourceIndex],s=t.source[t.sourceIndex+3],s=256*s+t.source[t.sourceIndex+2],n!==(~s&65535))return g;for(t.sourceIndex+=4,a=n;a;--a)t.dest[t.destLen++]=t.source[t.sourceIndex++];return t.bitcount=0,p}function fe(t,n){var s=new E(t,n),a,l,h;do{switch(a=q(s),l=le(s,2,0),l){case 0:h=ye(s);break;case 1:h=se(s,b,y);break;case 2:ie(s,s.ltree,s.dtree),h=se(s,s.ltree,s.dtree);break;default:h=g}if(h!==p)throw new Error("Data error")}while(!a);return s.destLen<s.dest.length?typeof s.dest.slice=="function"?s.dest.slice(0,s.destLen):s.dest.subarray(0,s.destLen):s.dest}P(b,y),O(Q,v,4,3),O(I,F,2,1),Q[28]=0,v[28]=258;function Pe(t,n,s,a,l){return Math.pow(1-l,3)*t+3*Math.pow(1-l,2)*l*n+3*(1-l)*Math.pow(l,2)*s+Math.pow(l,3)*a}function Be(){this.x1=Number.NaN,this.y1=Number.NaN,this.x2=Number.NaN,this.y2=Number.NaN}Be.prototype.isEmpty=function(){return isNaN(this.x1)||isNaN(this.y1)||isNaN(this.x2)||isNaN(this.y2)},Be.prototype.addPoint=function(t,n){typeof t=="number"&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=t,this.x2=t),t<this.x1&&(this.x1=t),t>this.x2&&(this.x2=t)),typeof n=="number"&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=n,this.y2=n),n<this.y1&&(this.y1=n),n>this.y2&&(this.y2=n))},Be.prototype.addX=function(t){this.addPoint(t,null)},Be.prototype.addY=function(t){this.addPoint(null,t)},Be.prototype.addBezier=function(t,n,s,a,l,h,d,B){let w=[t,n],x=[s,a],C=[l,h],S=[d,B];this.addPoint(t,n),this.addPoint(d,B);for(let T=0;T<=1;T++){let Y=6*w[T]-12*x[T]+6*C[T],U=-3*w[T]+9*x[T]-9*C[T]+3*S[T],L=3*x[T]-3*w[T];if(U===0){if(Y===0)continue;let Re=-L/Y;0<Re&&Re<1&&(T===0&&this.addX(Pe(w[T],x[T],C[T],S[T],Re)),T===1&&this.addY(Pe(w[T],x[T],C[T],S[T],Re)));continue}let ee=Math.pow(Y,2)-4*L*U;if(ee<0)continue;let Te=(-Y+Math.sqrt(ee))/(2*U);0<Te&&Te<1&&(T===0&&this.addX(Pe(w[T],x[T],C[T],S[T],Te)),T===1&&this.addY(Pe(w[T],x[T],C[T],S[T],Te)));let xe=(-Y-Math.sqrt(ee))/(2*U);0<xe&&xe<1&&(T===0&&this.addX(Pe(w[T],x[T],C[T],S[T],xe)),T===1&&this.addY(Pe(w[T],x[T],C[T],S[T],xe)))}},Be.prototype.addQuad=function(t,n,s,a,l,h){let d=t+.6666666666666666*(s-t),B=n+2/3*(a-n),w=d+1/3*(l-t),x=B+1/3*(h-n);this.addBezier(t,n,d,B,w,x,l,h)};var Ee=Be;function me(){this.commands=[],this.fill="black",this.stroke=null,this.strokeWidth=1}var ke={};function Fe(t,n){let s=Math.floor(t),a=t-s;if(ke[n]||(ke[n]={}),ke[n][a]!==void 0){let h=ke[n][a];return s+h}let l=+(Math.round(a+"e+"+n)+"e-"+n);return ke[n][a]=l,s+l}function W(t){let n=[[]],s=0,a=0;for(let l=0;l<t.length;l+=1){let h=n[n.length-1],d=t[l],B=h[0],w=h[1],x=h[h.length-1],C=t[l+1];h.push(d),d.type==="M"?(s=d.x,a=d.y):d.type==="L"&&(!C||C.type==="Z")?Math.abs(d.x-s)>1||Math.abs(d.y-a)>1||h.pop():d.type==="L"&&x&&x.x===d.x&&x.y===d.y?h.pop():d.type==="Z"&&(B&&w&&x&&B.type==="M"&&w.type==="L"&&x.type==="L"&&x.x===B.x&&x.y===B.y&&(h.shift(),h[0].type="M"),l+1<t.length&&n.push([]))}return t=[].concat.apply([],n),t}function N(t){return Object.assign({},{decimalPlaces:2,optimize:!0,flipY:!0,flipYBase:void 0,scale:1,x:0,y:0},t)}function J(t){return parseInt(t)===t&&(t={decimalPlaces:t,flipY:!1}),Object.assign({},{decimalPlaces:2,optimize:!0,flipY:!0,flipYBase:void 0},t)}me.prototype.fromSVG=function(t,n={}){typeof SVGPathElement<"u"&&t instanceof SVGPathElement&&(t=t.getAttribute("d")),n=N(n),this.commands=[];let s="0123456789",a="MmLlQqCcZzHhVv",l="SsTtAa",h="-+",d={},B=[""],w=!1;function x(U){return U.filter(L=>L.length).map(L=>{let ee=parseFloat(L);return(n.decimalPlaces||n.decimalPlaces===0)&&(ee=Fe(ee,n.decimalPlaces)),ee})}function C(U){if(!this.commands.length)return U;let L=this.commands[this.commands.length-1];for(let ee=0;ee<U.length;ee++)U[ee]+=L[ee&1?"y":"x"];return U}function S(){if(d.type===void 0)return;let U=d.type.toUpperCase(),L=U!=="Z"&&d.type.toUpperCase()!==d.type,ee=x(B);if(B=[""],!ee.length&&U!=="Z")return;L&&U!=="H"&&U!=="V"&&(ee=C.apply(this,[ee]));let Te=this.commands.length&&this.commands[this.commands.length-1].x||0,xe=this.commands.length&&this.commands[this.commands.length-1].y||0;switch(U){case"M":this.moveTo(...ee);break;case"L":this.lineTo(...ee);break;case"V":for(let Re=0;Re<ee.length;Re++){let Je=0;L&&(Je=this.commands.length&&this.commands[this.commands.length-1].y||0),this.lineTo(Te,ee[Re]+Je)}break;case"H":for(let Re=0;Re<ee.length;Re++){let Je=0;L&&(Je=this.commands.length&&this.commands[this.commands.length-1].x||0),this.lineTo(ee[Re]+Je,xe)}break;case"C":this.bezierCurveTo(...ee);break;case"Q":this.quadraticCurveTo(...ee);break;case"Z":(this.commands.length<1||this.commands[this.commands.length-1].type!=="Z")&&this.close();break}if(this.commands.length)for(let Re in this.commands[this.commands.length-1])this.commands[this.commands.length-1][Re]===void 0&&(this.commands[this.commands.length-1][Re]=0)}for(let U=0;U<t.length;U++){let L=t.charAt(U),ee=B[B.length-1];if(s.indexOf(L)>-1)B[B.length-1]+=L;else if(h.indexOf(L)>-1)if(!d.type&&!this.commands.length&&(d.type="L"),L==="-")!d.type||ee.indexOf("-")>0?w=!0:ee.length?B.push("-"):B[B.length-1]=L;else if(!d.type||ee.length>0)w=!0;else continue;else if(a.indexOf(L)>-1)d.type?(S.apply(this),d={type:L}):d.type=L;else{if(l.indexOf(L)>-1)throw new Error("Unsupported path command: "+L+". Currently supported commands are "+a.split("").join(", ")+".");` ,
130
+ \r\f\v`.indexOf(L)>-1?B.push(""):L==="."?!d.type||ee.indexOf(L)>-1?w=!0:B[B.length-1]+=L:w=!0}if(w)throw new Error("Unexpected character: "+L+" at offset "+U)}S.apply(this),n.optimize&&(this.commands=W(this.commands));let T=n.flipY,Y=n.flipYBase;if(T===!0&&n.flipYBase===void 0){let U=this.getBoundingBox();Y=U.y1+U.y2}for(let U in this.commands){let L=this.commands[U];for(let ee in L)["x","x1","x2"].includes(ee)?this.commands[U][ee]=n.x+L[ee]*n.scale:["y","y1","y2"].includes(ee)&&(this.commands[U][ee]=n.y+(T?Y-L[ee]:L[ee])*n.scale)}return this},me.fromSVG=function(t,n){return new me().fromSVG(t,n)},me.prototype.moveTo=function(t,n){this.commands.push({type:"M",x:t,y:n})},me.prototype.lineTo=function(t,n){this.commands.push({type:"L",x:t,y:n})},me.prototype.curveTo=me.prototype.bezierCurveTo=function(t,n,s,a,l,h){this.commands.push({type:"C",x1:t,y1:n,x2:s,y2:a,x:l,y:h})},me.prototype.quadTo=me.prototype.quadraticCurveTo=function(t,n,s,a){this.commands.push({type:"Q",x1:t,y1:n,x:s,y:a})},me.prototype.close=me.prototype.closePath=function(){this.commands.push({type:"Z"})},me.prototype.extend=function(t){if(t.commands)t=t.commands;else if(t instanceof Ee){let n=t;this.moveTo(n.x1,n.y1),this.lineTo(n.x2,n.y1),this.lineTo(n.x2,n.y2),this.lineTo(n.x1,n.y2),this.close();return}Array.prototype.push.apply(this.commands,t)},me.prototype.getBoundingBox=function(){let t=new Ee,n=0,s=0,a=0,l=0;for(let h=0;h<this.commands.length;h++){let d=this.commands[h];switch(d.type){case"M":t.addPoint(d.x,d.y),n=a=d.x,s=l=d.y;break;case"L":t.addPoint(d.x,d.y),a=d.x,l=d.y;break;case"Q":t.addQuad(a,l,d.x1,d.y1,d.x,d.y),a=d.x,l=d.y;break;case"C":t.addBezier(a,l,d.x1,d.y1,d.x2,d.y2,d.x,d.y),a=d.x,l=d.y;break;case"Z":a=n,l=s;break;default:throw new Error("Unexpected path command "+d.type)}}return t.isEmpty()&&t.addPoint(0,0),t},me.prototype.draw=function(t){let n=this._layers;if(n&&n.length){for(let a=0;a<n.length;a++)this.draw.call(n[a],t);return}let s=this._image;if(s){t.drawImage(s.image,s.x,s.y,s.width,s.height);return}t.beginPath();for(let a=0;a<this.commands.length;a+=1){let l=this.commands[a];l.type==="M"?t.moveTo(l.x,l.y):l.type==="L"?t.lineTo(l.x,l.y):l.type==="C"?t.bezierCurveTo(l.x1,l.y1,l.x2,l.y2,l.x,l.y):l.type==="Q"?t.quadraticCurveTo(l.x1,l.y1,l.x,l.y):l.type==="Z"&&this.stroke&&this.strokeWidth&&t.closePath()}this.fill&&(t.fillStyle=this.fill,t.fill()),this.stroke&&(t.strokeStyle=this.stroke,t.lineWidth=this.strokeWidth,t.stroke())},me.prototype.toPathData=function(t){t=J(t);function n(B){let w=Fe(B,t.decimalPlaces);return Math.round(B)===w?""+w:w.toFixed(t.decimalPlaces)}function s(){let B="";for(let w=0;w<arguments.length;w+=1){let x=arguments[w];x>=0&&w>0&&(B+=" "),B+=n(x)}return B}let a=this.commands;t.optimize&&(a=JSON.parse(JSON.stringify(this.commands)),a=W(a));let l=t.flipY,h=t.flipYBase;if(l===!0&&h===void 0){let B=new me;B.extend(a);let w=B.getBoundingBox();h=w.y1+w.y2}let d="";for(let B=0;B<a.length;B+=1){let w=a[B];w.type==="M"?d+="M"+s(w.x,l?h-w.y:w.y):w.type==="L"?d+="L"+s(w.x,l?h-w.y:w.y):w.type==="C"?d+="C"+s(w.x1,l?h-w.y1:w.y1,w.x2,l?h-w.y2:w.y2,w.x,l?h-w.y:w.y):w.type==="Q"?d+="Q"+s(w.x1,l?h-w.y1:w.y1,w.x,l?h-w.y:w.y):w.type==="Z"&&(d+="Z")}return d},me.prototype.toSVG=function(t,n){this._layers&&this._layers.length&&console.warn("toSVG() does not support colr font layers yet"),this._image&&console.warn("toSVG() does not support SVG glyphs yet"),n||(n=this.toPathData(t));let s='<path d="';return s+=n,s+='"',this.fill!==void 0&&this.fill!=="black"&&(this.fill===null?s+=' fill="none"':s+=' fill="'+this.fill+'"'),this.stroke&&(s+=' stroke="'+this.stroke+'" stroke-width="'+this.strokeWidth+'"'),s+="/>",s},me.prototype.toDOMElement=function(t,n){this._layers&&this._layers.length&&console.warn("toDOMElement() does not support colr font layers yet"),n||(n=this.toPathData(t));let s=document.createElementNS("http://www.w3.org/2000/svg","path");return s.setAttribute("d",n),this.fill!==void 0&&this.fill!=="black"&&(this.fill===null?s.setAttribute("fill","none"):s.setAttribute("fill",this.fill)),this.stroke&&(s.setAttribute("stroke",this.stroke),s.setAttribute("stroke-width",this.strokeWidth)),s};var z=me;function j(t){throw new Error(t)}function K(t,n){t||j(n)}var G={fail:j,argument:K,assert:K},X=32768,D=2147483648,pe=-32768,ce=32767+1/65536,Qe={},Z={},H={};function ne(t){return function(){return t}}Z.BYTE=function(t){return G.argument(t>=0&&t<=255,"Byte value should be between 0 and 255."),[t]},H.BYTE=ne(1),Z.CHAR=function(t){return[t.charCodeAt(0)]},H.CHAR=ne(1),Z.CHARARRAY=function(t){(t===null||typeof t>"u")&&(t="",console.warn("CHARARRAY with undefined or null value encountered and treated as an empty string. This is probably caused by a missing glyph name."));let n=[];for(let s=0;s<t.length;s+=1)n[s]=t.charCodeAt(s);return n},H.CHARARRAY=function(t){return typeof t>"u"?0:t.length},Z.USHORT=function(t){return[t>>8&255,t&255]},H.USHORT=ne(2),Z.SHORT=function(t){return t>=X&&(t=-(2*X-t)),[t>>8&255,t&255]},H.SHORT=ne(2),Z.UINT24=function(t){return[t>>16&255,t>>8&255,t&255]},H.UINT24=ne(3),Z.ULONG=function(t){return[t>>24&255,t>>16&255,t>>8&255,t&255]},H.ULONG=ne(4),Z.LONG=function(t){return t>=D&&(t=-(2*D-t)),[t>>24&255,t>>16&255,t>>8&255,t&255]},H.LONG=ne(4),Z.FLOAT=function(t){if(t>ce||t<pe)throw new Error(`Value ${t} is outside the range of representable values in 16.16 format`);let n=Math.round(t*65536)<<0;return Z.ULONG(n)},H.FLOAT=H.ULONG,Z.FIXED=Z.ULONG,H.FIXED=H.ULONG,Z.FWORD=Z.SHORT,H.FWORD=H.SHORT,Z.UFWORD=Z.USHORT,H.UFWORD=H.USHORT,Z.F2DOT14=function(t){return Z.USHORT(t*16384)},H.F2DOT14=H.USHORT,Z.LONGDATETIME=function(t){return[0,0,0,0,t>>24&255,t>>16&255,t>>8&255,t&255]},H.LONGDATETIME=ne(8),Z.TAG=function(t){return G.argument(t.length===4,"Tag should be exactly 4 ASCII characters."),[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3)]},H.TAG=ne(4),Z.Card8=Z.BYTE,H.Card8=H.BYTE,Z.Card16=Z.USHORT,H.Card16=H.USHORT,Z.OffSize=Z.BYTE,H.OffSize=H.BYTE,Z.SID=Z.USHORT,H.SID=H.USHORT,Z.NUMBER=function(t){return t>=-107&&t<=107?[t+139]:t>=108&&t<=1131?(t=t-108,[(t>>8)+247,t&255]):t>=-1131&&t<=-108?(t=-t-108,[(t>>8)+251,t&255]):t>=-32768&&t<=32767?Z.NUMBER16(t):Z.NUMBER32(t)},H.NUMBER=function(t){return Z.NUMBER(t).length},Z.NUMBER16=function(t){return[28,t>>8&255,t&255]},H.NUMBER16=ne(3),Z.NUMBER32=function(t){return[29,t>>24&255,t>>16&255,t>>8&255,t&255]},H.NUMBER32=ne(5),Z.REAL=function(t){let n=t.toString(),s=/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/.exec(n);if(s){let h=parseFloat("1e"+((s[2]?+s[2]:0)+s[1].length));n=(Math.round(t*h)/h).toString()}let a="";for(let h=0,d=n.length;h<d;h+=1){let B=n[h];B==="e"?a+=n[++h]==="-"?"c":"b":B==="."?a+="a":B==="-"?a+="e":a+=B}a+=a.length&1?"f":"ff";let l=[30];for(let h=0,d=a.length;h<d;h+=2)l.push(parseInt(a.substr(h,2),16));return l},H.REAL=function(t){return Z.REAL(t).length},Z.NAME=Z.CHARARRAY,H.NAME=H.CHARARRAY,Z.STRING=Z.CHARARRAY,H.STRING=H.CHARARRAY,Qe.UTF8=function(t,n,s){let a=[],l=s;for(let h=0;h<l;h++,n+=1)a[h]=t.getUint8(n);return String.fromCharCode.apply(null,a)},Qe.UTF16=function(t,n,s){let a=[],l=s/2;for(let h=0;h<l;h++,n+=2)a[h]=t.getUint16(n);return String.fromCharCode.apply(null,a)},Z.UTF16=function(t){let n=[];for(let s=0;s<t.length;s+=1){let a=t.charCodeAt(s);n[n.length]=a>>8&255,n[n.length]=a&255}return n},H.UTF16=function(t){return t.length*2};var Oe={"x-mac-croatian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u03A9\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uF8FF\xA9\u2044\u20AC\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7","x-mac-cyrillic":"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E","x-mac-gaelic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u1E02\xB1\u2264\u2265\u1E03\u010A\u010B\u1E0A\u1E0B\u1E1E\u1E1F\u0120\u0121\u1E40\xE6\xF8\u1E41\u1E56\u1E57\u027C\u0192\u017F\u1E60\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\u1E61\u1E9B\xFF\u0178\u1E6A\u20AC\u2039\u203A\u0176\u0177\u1E6B\xB7\u1EF2\u1EF3\u204A\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u2663\xD2\xDA\xDB\xD9\u0131\xDD\xFD\u0174\u0175\u1E84\u1E85\u1E80\u1E81\u1E82\u1E83","x-mac-greek":"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\u20AC\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\xB7\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\xAD","x-mac-icelandic":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-inuit":"\u1403\u1404\u1405\u1406\u140A\u140B\u1431\u1432\u1433\u1434\u1438\u1439\u1449\u144E\u144F\u1450\u1451\u1455\u1456\u1466\u146D\u146E\u146F\u1470\u1472\u1473\u1483\u148B\u148C\u148D\u148E\u1490\u1491\xB0\u14A1\u14A5\u14A6\u2022\xB6\u14A7\xAE\xA9\u2122\u14A8\u14AA\u14AB\u14BB\u14C2\u14C3\u14C4\u14C5\u14C7\u14C8\u14D0\u14EF\u14F0\u14F1\u14F2\u14F4\u14F5\u1505\u14D5\u14D6\u14D7\u14D8\u14DA\u14DB\u14EA\u1528\u1529\u152A\u152B\u152D\u2026\xA0\u152E\u153E\u1555\u1556\u1557\u2013\u2014\u201C\u201D\u2018\u2019\u1558\u1559\u155A\u155D\u1546\u1547\u1548\u1549\u154B\u154C\u1550\u157F\u1580\u1581\u1582\u1583\u1584\u1585\u158F\u1590\u1591\u1592\u1593\u1594\u1595\u1671\u1672\u1673\u1674\u1675\u1676\u1596\u15A0\u15A1\u15A2\u15A3\u15A4\u15A5\u15A6\u157C\u0141\u0142","x-mac-ce":"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7",macintosh:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-romanian":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u0218\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\u0103\u0219\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\u20AC\u2039\u203A\u021A\u021B\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7","x-mac-turkish":"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u03A9\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uF8FF\xD2\xDA\xDB\xD9\uF8A0\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"};Qe.MACSTRING=function(t,n,s,a){let l=Oe[a];if(l===void 0)return;let h="";for(let d=0;d<s;d++){let B=t.getUint8(n+d);B<=127?h+=String.fromCharCode(B):h+=l[B&127]}return h};var De=typeof WeakMap=="function"&&new WeakMap,it,Ze=function(t){if(!it){it={};for(let l in Oe)it[l]=new String(l)}let n=it[t];if(n===void 0)return;if(De){let l=De.get(n);if(l!==void 0)return l}let s=Oe[t];if(s===void 0)return;let a={};for(let l=0;l<s.length;l++)a[s.charCodeAt(l)]=l+128;return De&&De.set(n,a),a};Z.MACSTRING=function(t,n){let s=Ze(n);if(s===void 0)return;let a=[];for(let l=0;l<t.length;l++){let h=t.charCodeAt(l);if(h>=128&&(h=s[h],h===void 0))return;a[l]=h}return a},H.MACSTRING=function(t,n){let s=Z.MACSTRING(t,n);return s!==void 0?s.length:0};function Xe(t){return t>=-128&&t<=127}function wt(t,n,s){let a=0,l=t.length;for(;n<l&&a<64&&t[n]===0;)++n,++a;return s.push(128|a-1),n}function te(t,n,s){let a=0,l=t.length,h=n;for(;h<l&&a<64;){let d=t[h];if(!Xe(d)||d===0&&h+1<l&&t[h+1]===0)break;++h,++a}s.push(a-1);for(let d=n;d<h;++d)s.push(t[d]+256&255);return h}function ve(t,n,s){let a=0,l=t.length,h=n;for(;h<l&&a<64;){let d=t[h];if(d===0||Xe(d)&&h+1<l&&Xe(t[h+1]))break;++h,++a}s.push(64|a-1);for(let d=n;d<h;++d){let B=t[d];s.push(B+65536>>8&255,B+256&255)}return h}Z.VARDELTAS=function(t){let n=0,s=[];for(;n<t.length;){let a=t[n];a===0?n=wt(t,n,s):a>=-128&&a<=127?n=te(t,n,s):n=ve(t,n,s)}return s},Z.INDEX=function(t){let n=1,s=[n],a=[];for(let B=0;B<t.length;B+=1){let w=Z.OBJECT(t[B]);Array.prototype.push.apply(a,w),n+=w.length,s.push(n)}if(a.length===0)return[0,0];let l=[],h=1+Math.floor(Math.log(n)/Math.log(2))/8|0,d=[void 0,Z.BYTE,Z.USHORT,Z.UINT24,Z.ULONG][h];for(let B=0;B<s.length;B+=1){let w=d(s[B]);Array.prototype.push.apply(l,w)}return Array.prototype.concat(Z.Card16(t.length),Z.OffSize(h),l,a)},H.INDEX=function(t){return Z.INDEX(t).length},Z.DICT=function(t){let n=[],s=Object.keys(t),a=s.length;for(let l=0;l<a;l+=1){let h=parseInt(s[l],0),d=t[h],B=Z.OPERAND(d.value,d.type),w=Z.OPERATOR(h);for(let x=0;x<B.length;x++)n.push(B[x]);for(let x=0;x<w.length;x++)n.push(w[x])}return n},H.DICT=function(t){return Z.DICT(t).length},Z.OPERATOR=function(t){return t<1200?[t]:[12,t-1200]},Z.OPERAND=function(t,n){let s=[];if(Array.isArray(n))for(let a=0;a<n.length;a+=1){G.argument(t.length===n.length,"Not enough arguments given for type"+n);let l=Z.OPERAND(t[a],n[a]);for(let h=0;h<l.length;h++)s.push(l[h])}else if(n==="SID"){let a=Z.NUMBER(t);for(let l=0;l<a.length;l++)s.push(a[l])}else if(n==="offset"){let a=Z.NUMBER32(t);for(let l=0;l<a.length;l++)s.push(a[l])}else if(n==="number"){let a=Z.NUMBER(t);for(let l=0;l<a.length;l++)s.push(a[l])}else if(n==="real"){let a=Z.REAL(t);for(let l=0;l<a.length;l++)s.push(a[l])}else throw new Error("Unknown operand type "+n);return s},Z.OP=Z.BYTE,H.OP=H.BYTE;var be=typeof WeakMap=="function"&&new WeakMap;Z.CHARSTRING=function(t){if(be){let a=be.get(t);if(a!==void 0)return a}let n=[],s=t.length;for(let a=0;a<s;a+=1){let l=t[a],h=Z[l.type](l.value);for(let d=0;d<h.length;d++)n.push(h[d])}return be&&be.set(t,n),n},H.CHARSTRING=function(t){return Z.CHARSTRING(t).length},Z.OBJECT=function(t){let n=Z[t.type];return G.argument(n!==void 0,"No encoding function for type "+t.type),n(t.value)},H.OBJECT=function(t){let n=H[t.type];return G.argument(n!==void 0,"No sizeOf function for type "+t.type),n(t.value)},Z.TABLE=function(t){let n=[],s=(t.fields||[]).length,a=[],l=[];for(let h=0;h<s;h+=1){let d=t.fields[h],B=Z[d.type];G.argument(B!==void 0,"No encoding function for field type "+d.type+" ("+d.name+")");let w=t[d.name];w===void 0&&(w=d.value);let x=B(w);if(d.type==="TABLE")w.fields!==null&&(l.push(n.length),a.push(x)),n.push(0,0);else for(let C=0;C<x.length;C++)n.push(x[C])}for(let h=0;h<a.length;h+=1){let d=l[h],B=n.length;G.argument(B<65536,"Table "+t.tableName+" too big."),n[d]=B>>8,n[d+1]=B&255;for(let w=0;w<a[h].length;w++)n.push(a[h][w])}return n},H.TABLE=function(t){let n=0,s=(t.fields||[]).length;for(let a=0;a<s;a+=1){let l=t.fields[a],h=H[l.type];G.argument(h!==void 0,"No sizeOf function for field type "+l.type+" ("+l.name+")");let d=t[l.name];d===void 0&&(d=l.value),n+=h(d),l.type==="TABLE"&&(n+=2)}return n},Z.RECORD=Z.TABLE,H.RECORD=H.TABLE,Z.LITERAL=function(t){return t},H.LITERAL=function(t){return t.length};function ue(t,n,s){if(n&&n.length)for(let a=0;a<n.length;a+=1){let l=n[a];this[l.name]=l.value}if(this.tableName=t,this.fields=n,s){let a=Object.keys(s);for(let l=0;l<a.length;l+=1){let h=a[l],d=s[h];this[h]!==void 0&&(this[h]=d)}}}ue.prototype.encode=function(){return Z.TABLE(this)},ue.prototype.sizeOf=function(){return H.TABLE(this)};function Me(t,n,s){s===void 0&&(s=n.length);let a=new Array(n.length+1);a[0]={name:t+"Count",type:"USHORT",value:s};for(let l=0;l<n.length;l++)a[l+1]={name:t+l,type:"USHORT",value:n[l]};return a}function He(t,n,s){let a=n.length,l=new Array(a+1);l[0]={name:t+"Count",type:"USHORT",value:a};for(let h=0;h<a;h++)l[h+1]={name:t+h,type:"TABLE",value:s(n[h],h)};return l}function Le(t,n,s){let a=n.length,l=[];l[0]={name:t+"Count",type:"USHORT",value:a};for(let h=0;h<a;h++)l=l.concat(s(n[h],h));return l}function Ne(t){t.format===1?ue.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:1}].concat(Me("glyph",t.glyphs))):t.format===2?ue.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:2}].concat(Le("rangeRecord",t.ranges,function(n,s){return[{name:"startGlyphID"+s,type:"USHORT",value:n.start},{name:"endGlyphID"+s,type:"USHORT",value:n.end},{name:"startCoverageIndex"+s,type:"USHORT",value:n.index}]}))):G.assert(!1,"Coverage format must be 1 or 2.")}Ne.prototype=Object.create(ue.prototype),Ne.prototype.constructor=Ne;function de(t){ue.call(this,"scriptListTable",Le("scriptRecord",t,function(n,s){let a=n.script,l=a.defaultLangSys;return G.assert(!!l,"Unable to write GSUB: script "+n.tag+" has no default language system."),[{name:"scriptTag"+s,type:"TAG",value:n.tag},{name:"script"+s,type:"TABLE",value:new ue("scriptTable",[{name:"defaultLangSys",type:"TABLE",value:new ue("defaultLangSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:l.reqFeatureIndex}].concat(Me("featureIndex",l.featureIndexes)))}].concat(Le("langSys",a.langSysRecords,function(h,d){let B=h.langSys;return[{name:"langSysTag"+d,type:"TAG",value:h.tag},{name:"langSys"+d,type:"TABLE",value:new ue("langSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:B.reqFeatureIndex}].concat(Me("featureIndex",B.featureIndexes)))}]})))}]}))}de.prototype=Object.create(ue.prototype),de.prototype.constructor=de;function ge(t){ue.call(this,"featureListTable",Le("featureRecord",t,function(n,s){let a=n.feature;return[{name:"featureTag"+s,type:"TAG",value:n.tag},{name:"feature"+s,type:"TABLE",value:new ue("featureTable",[{name:"featureParams",type:"USHORT",value:a.featureParams}].concat(Me("lookupListIndex",a.lookupListIndexes)))}]}))}ge.prototype=Object.create(ue.prototype),ge.prototype.constructor=ge;function ae(t,n){ue.call(this,"lookupListTable",He("lookup",t,function(s){let a=n[s.lookupType];return G.assert(!!a,"Unable to write GSUB lookup type "+s.lookupType+" tables."),new ue("lookupTable",[{name:"lookupType",type:"USHORT",value:s.lookupType},{name:"lookupFlag",type:"USHORT",value:s.lookupFlag}].concat(He("subtable",s.subtables,a)))}))}ae.prototype=Object.create(ue.prototype),ae.prototype.constructor=ae;function Ye(t){t.format===1?ue.call(this,"classDefTable",[{name:"classFormat",type:"USHORT",value:1},{name:"startGlyphID",type:"USHORT",value:t.startGlyph}].concat(Me("glyph",t.classes))):t.format===2?ue.call(this,"classDefTable",[{name:"classFormat",type:"USHORT",value:2}].concat(Le("rangeRecord",t.ranges,function(n,s){return[{name:"startGlyphID"+s,type:"USHORT",value:n.start},{name:"endGlyphID"+s,type:"USHORT",value:n.end},{name:"class"+s,type:"USHORT",value:n.classId}]}))):G.assert(!1,"Class format must be 1 or 2.")}Ye.prototype=Object.create(ue.prototype),Ye.prototype.constructor=Ye;var $={Table:ue,Record:ue,Coverage:Ne,ClassDef:Ye,ScriptList:de,FeatureList:ge,LookupList:ae,ushortList:Me,tableList:He,recordList:Le};function _e(t,n){return t.getUint8(n)}function Ue(t,n){return t.getUint16(n,!1)}function je(t,n){return t.getInt16(n,!1)}function at(t,n){return(t.getUint16(n)<<8)+t.getUint8(n+2)}function Ke(t,n){return t.getUint32(n,!1)}function ut(t,n){return t.getInt32(n,!1)}function bt(t,n){let s=t.getInt16(n,!1),a=t.getUint16(n+2,!1);return s+a/65535}function xt(t,n){let s="";for(let a=n;a<n+4;a+=1)s+=String.fromCharCode(t.getInt8(a));return s}function Ir(t,n,s){let a=0;for(let l=0;l<s;l+=1)a<<=8,a+=t.getUint8(n+l);return a}function hr(t,n,s){let a=[];for(let l=n;l<s;l+=1)a.push(t.getUint8(l));return a}function Fr(t){let n="";for(let s=0;s<t.length;s+=1)n+=String.fromCharCode(t[s]);return n}var Tr={byte:1,uShort:2,f2dot14:2,short:2,uInt24:3,uLong:4,fixed:4,longDateTime:8,tag:4},ht={LONG_WORDS:32768,WORD_DELTA_COUNT_MASK:32767,SHARED_POINT_NUMBERS:32768,COUNT_MASK:4095,EMBEDDED_PEAK_TUPLE:32768,INTERMEDIATE_REGION:16384,PRIVATE_POINT_NUMBERS:8192,TUPLE_INDEX_MASK:4095,POINTS_ARE_WORDS:128,POINT_RUN_COUNT_MASK:127,DELTAS_ARE_ZERO:128,DELTAS_ARE_WORDS:64,DELTA_RUN_COUNT_MASK:63,INNER_INDEX_BIT_COUNT_MASK:15,MAP_ENTRY_SIZE_MASK:48};function V(t,n){this.data=t,this.offset=n,this.relativeOffset=0}V.prototype.parseByte=function(){let t=this.data.getUint8(this.offset+this.relativeOffset);return this.relativeOffset+=1,t},V.prototype.parseChar=function(){let t=this.data.getInt8(this.offset+this.relativeOffset);return this.relativeOffset+=1,t},V.prototype.parseCard8=V.prototype.parseByte,V.prototype.parseUShort=function(){let t=this.data.getUint16(this.offset+this.relativeOffset);return this.relativeOffset+=2,t},V.prototype.parseCard16=V.prototype.parseUShort,V.prototype.parseSID=V.prototype.parseUShort,V.prototype.parseOffset16=V.prototype.parseUShort,V.prototype.parseShort=function(){let t=this.data.getInt16(this.offset+this.relativeOffset);return this.relativeOffset+=2,t},V.prototype.parseF2Dot14=function(){let t=this.data.getInt16(this.offset+this.relativeOffset)/16384;return this.relativeOffset+=2,t},V.prototype.parseUInt24=function(){let t=at(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=3,t},V.prototype.parseULong=function(){let t=Ke(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,t},V.prototype.parseLong=function(){let t=ut(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,t},V.prototype.parseOffset32=V.prototype.parseULong,V.prototype.parseFixed=function(){let t=bt(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,t},V.prototype.parseString=function(t){let n=this.data,s=this.offset+this.relativeOffset,a="";this.relativeOffset+=t;for(let l=0;l<t;l++)a+=String.fromCharCode(n.getUint8(s+l));return a},V.prototype.parseTag=function(){return this.parseString(4)},V.prototype.parseLongDateTime=function(){let t=Ke(this.data,this.offset+this.relativeOffset+4);return t-=2082844800,this.relativeOffset+=8,t},V.prototype.parseVersion=function(t){let n=Ue(this.data,this.offset+this.relativeOffset),s=Ue(this.data,this.offset+this.relativeOffset+2);return this.relativeOffset+=4,t===void 0&&(t=4096),n+s/t/10},V.prototype.skip=function(t,n){n===void 0&&(n=1),this.relativeOffset+=Tr[t]*n},V.prototype.parseULongList=function(t){t===void 0&&(t=this.parseULong());let n=new Array(t),s=this.data,a=this.offset+this.relativeOffset;for(let l=0;l<t;l++)n[l]=s.getUint32(a),a+=4;return this.relativeOffset+=t*4,n},V.prototype.parseOffset16List=V.prototype.parseUShortList=function(t){t===void 0&&(t=this.parseUShort());let n=new Array(t),s=this.data,a=this.offset+this.relativeOffset;for(let l=0;l<t;l++)n[l]=s.getUint16(a),a+=2;return this.relativeOffset+=t*2,n},V.prototype.parseShortList=function(t){let n=new Array(t),s=this.data,a=this.offset+this.relativeOffset;for(let l=0;l<t;l++)n[l]=s.getInt16(a),a+=2;return this.relativeOffset+=t*2,n},V.prototype.parseByteList=function(t){let n=new Array(t),s=this.data,a=this.offset+this.relativeOffset;for(let l=0;l<t;l++)n[l]=s.getUint8(a++);return this.relativeOffset+=t,n},V.prototype.parseList=function(t,n){n||(n=t,t=this.parseUShort());let s=new Array(t);for(let a=0;a<t;a++)s[a]=n.call(this);return s},V.prototype.parseList32=function(t,n){n||(n=t,t=this.parseULong());let s=new Array(t);for(let a=0;a<t;a++)s[a]=n.call(this);return s},V.prototype.parseRecordList=function(t,n){n||(n=t,t=this.parseUShort());let s=new Array(t),a=Object.keys(n);for(let l=0;l<t;l++){let h={};for(let d=0;d<a.length;d++){let B=a[d],w=n[B];h[B]=w.call(this)}s[l]=h}return s},V.prototype.parseRecordList32=function(t,n){n||(n=t,t=this.parseULong());let s=new Array(t),a=Object.keys(n);for(let l=0;l<t;l++){let h={};for(let d=0;d<a.length;d++){let B=a[d],w=n[B];h[B]=w.call(this)}s[l]=h}return s},V.prototype.parseTupleRecords=function(t,n){let s=[];for(let a=0;a<t;a++){let l=[];for(let h=0;h<n;h++)l.push(this.parseF2Dot14());s.push(l)}return s},V.prototype.parseStruct=function(t){if(typeof t=="function")return t.call(this);{let n=Object.keys(t),s={};for(let a=0;a<n.length;a++){let l=n[a],h=t[l];s[l]=h.call(this)}return s}},V.prototype.parseValueRecord=function(t){if(t===void 0&&(t=this.parseUShort()),t===0)return;let n={};return t&1&&(n.xPlacement=this.parseShort()),t&2&&(n.yPlacement=this.parseShort()),t&4&&(n.xAdvance=this.parseShort()),t&8&&(n.yAdvance=this.parseShort()),t&16&&(n.xPlaDevice=void 0,this.parseShort()),t&32&&(n.yPlaDevice=void 0,this.parseShort()),t&64&&(n.xAdvDevice=void 0,this.parseShort()),t&128&&(n.yAdvDevice=void 0,this.parseShort()),n},V.prototype.parseValueRecordList=function(){let t=this.parseUShort(),n=this.parseUShort(),s=new Array(n);for(let a=0;a<n;a++)s[a]=this.parseValueRecord(t);return s},V.prototype.parsePointer=function(t){let n=this.parseOffset16();if(n>0)return new V(this.data,this.offset+n).parseStruct(t)},V.prototype.parsePointer32=function(t){let n=this.parseOffset32();if(n>0)return new V(this.data,this.offset+n).parseStruct(t)},V.prototype.parseListOfLists=function(t){let n=this.parseOffset16List(),s=n.length,a=this.relativeOffset,l=new Array(s);for(let h=0;h<s;h++){let d=n[h];if(d===0){l[h]=void 0;continue}if(this.relativeOffset=d,t){let B=this.parseOffset16List(),w=new Array(B.length);for(let x=0;x<B.length;x++)this.relativeOffset=d+B[x],w[x]=t.call(this);l[h]=w}else l[h]=this.parseUShortList()}return this.relativeOffset=a,l},V.prototype.parseCoverage=function(){let t=this.offset+this.relativeOffset,n=this.parseUShort(),s=this.parseUShort();if(n===1)return{format:1,glyphs:this.parseUShortList(s)};if(n===2){let a=new Array(s);for(let l=0;l<s;l++)a[l]={start:this.parseUShort(),end:this.parseUShort(),index:this.parseUShort()};return{format:2,ranges:a}}throw new Error("0x"+t.toString(16)+": Coverage format must be 1 or 2.")},V.prototype.parseClassDef=function(){let t=this.offset+this.relativeOffset,n=this.parseUShort();return n===1?{format:1,startGlyph:this.parseUShort(),classes:this.parseUShortList()}:n===2?{format:2,ranges:this.parseRecordList({start:V.uShort,end:V.uShort,classId:V.uShort})}:(console.warn(`0x${t.toString(16)}: This font file uses an invalid ClassDef format of ${n}. It might be corrupted and should be reacquired if it doesn't display as intended.`),{format:n})},V.list=function(t,n){return function(){return this.parseList(t,n)}},V.list32=function(t,n){return function(){return this.parseList32(t,n)}},V.recordList=function(t,n){return function(){return this.parseRecordList(t,n)}},V.recordList32=function(t,n){return function(){return this.parseRecordList32(t,n)}},V.pointer=function(t){return function(){return this.parsePointer(t)}},V.pointer32=function(t){return function(){return this.parsePointer32(t)}},V.tag=V.prototype.parseTag,V.byte=V.prototype.parseByte,V.uShort=V.offset16=V.prototype.parseUShort,V.uShortList=V.prototype.parseUShortList,V.uInt24=V.prototype.parseUInt24,V.uLong=V.offset32=V.prototype.parseULong,V.uLongList=V.prototype.parseULongList,V.fixed=V.prototype.parseFixed,V.f2Dot14=V.prototype.parseF2Dot14,V.struct=V.prototype.parseStruct,V.coverage=V.prototype.parseCoverage,V.classDef=V.prototype.parseClassDef;var Vr={reserved:V.uShort,reqFeatureIndex:V.uShort,featureIndexes:V.uShortList};V.prototype.parseScriptList=function(){return this.parsePointer(V.recordList({tag:V.tag,script:V.pointer({defaultLangSys:V.pointer(Vr),langSysRecords:V.recordList({tag:V.tag,langSys:V.pointer(Vr)})})}))||[]},V.prototype.parseFeatureList=function(){return this.parsePointer(V.recordList({tag:V.tag,feature:V.pointer({featureParams:V.offset16,lookupListIndexes:V.uShortList})}))||[]},V.prototype.parseLookupList=function(t){return this.parsePointer(V.list(V.pointer(function(){let n=this.parseUShort();G.argument(1<=n&&n<=9,"GPOS/GSUB lookup type "+n+" unknown.");let s=this.parseUShort(),a=s&16;return{lookupType:n,lookupFlag:s,subtables:this.parseList(V.pointer(t[n])),markFilteringSet:a?this.parseUShort():void 0}})))||[]},V.prototype.parseFeatureVariationsList=function(){return this.parsePointer32(function(){let t=this.parseUShort(),n=this.parseUShort();return G.argument(t===1&&n<1,"GPOS/GSUB feature variations table unknown."),this.parseRecordList32({conditionSetOffset:V.offset32,featureTableSubstitutionOffset:V.offset32})})||[]},V.prototype.parseVariationStore=function(){let t=this.relativeOffset,n=this.parseUShort(),s={itemVariationStore:this.parseItemVariationStore()};return this.relativeOffset=t+n+2,s},V.prototype.parseItemVariationStore=function(){let t=this.relativeOffset,n={format:this.parseUShort(),variationRegions:[],itemVariationSubtables:[]},s=this.parseOffset32(),a=this.parseUShort(),l=this.parseULongList(a);this.relativeOffset=t+s,n.variationRegions=this.parseVariationRegionList();for(let h=0;h<a;h++){let d=l[h];this.relativeOffset=t+d,n.itemVariationSubtables.push(this.parseItemVariationSubtable())}return n},V.prototype.parseVariationRegionList=function(){let t=this.parseUShort(),n=this.parseUShort();return this.parseRecordList(n,{regionAxes:V.recordList(t,{startCoord:V.f2Dot14,peakCoord:V.f2Dot14,endCoord:V.f2Dot14})})},V.prototype.parseItemVariationSubtable=function(){let t=this.parseUShort(),n=this.parseUShort(),s=this.parseUShortList(),a=s.length;return{regionIndexes:s,deltaSets:t&&a?this.parseDeltaSets(t,n,a):[]}},V.prototype.parseDeltaSetIndexMap=function(){let t=this.parseByte(),n=this.parseByte(),s=[],a=0;switch(t){case 0:a=this.parseUShort();break;case 1:a=this.parseULong();break;default:console.error(`unsupported DeltaSetIndexMap format ${t}`)}if(!a)return{format:t,entryFormat:n};let l=(n&ht.INNER_INDEX_BIT_COUNT_MASK)+1,h=((n&ht.MAP_ENTRY_SIZE_MASK)>>4)+1;for(let d=0;d<a;d++){let B;if(h===1)B=this.parseByte();else if(h===2)B=this.parseUShort();else if(h===3)B=this.parseUInt24();else if(h===4)B=this.parseULong();else throw new Error(`Invalid entry size of ${h}`);let w=B>>l,x=B&(1<<l)-1;s.push({outerIndex:w,innerIndex:x})}return{format:t,entryFormat:n,map:s}},V.prototype.parseDeltaSets=function(t,n,s){let a=Array.from({length:t},()=>[]),l=n&ht.LONG_WORDS,h=n&ht.WORD_DELTA_COUNT_MASK;if(h>s)throw Error("wordCount must be less than or equal to regionIndexCount");let d=(l?this.parseLong:this.parseShort).bind(this),B=(l?this.parseShort:this.parseChar).bind(this);for(let w=0;w<t;w++)for(let x=0;x<s;x++)x<h?a[w].push(d()):a[w].push(B());return a},V.prototype.parseTupleVariationStoreList=function(t,n,s){let a=this.parseUShort(),h=this.parseUShort()&1,d=this.parseOffset32(),B=(h?this.parseULong:this.parseUShort).bind(this),w={},x=B();h||(x*=2);let C;for(let S=0;S<a;S++){C=B(),h||(C*=2);let T=C-x;w[S]=T?this.parseTupleVariationStore(d+x,t,n,s,S):void 0,x=C}return w},V.prototype.parseTupleVariationStore=function(t,n,s,a,l){let h=this.relativeOffset;this.relativeOffset=t,s==="cvar"&&(this.relativeOffset+=4);let d=this.parseUShort(),B=!!(d&ht.SHARED_POINT_NUMBERS),w=d&ht.COUNT_MASK,x=this.parseOffset16(),C=[],S=[];for(let U=0;U<w;U++){let L=this.parseTupleVariationHeader(n,s);C.push(L)}this.relativeOffset!==t+x&&(console.warn(`Unexpected offset after parsing tuple variation headers! Expected ${t+x}, actually ${this.relativeOffset}`),this.relativeOffset=t+x),B&&(S=this.parsePackedPointNumbers());let T=this.relativeOffset;for(let U=0;U<w;U++){let L=C[U];L.privatePoints=[],this.relativeOffset=T,s==="cvar"&&!L.peakTuple&&console.warn("An embedded peak tuple is required in TupleVariationHeaders for the cvar table."),L.flags.privatePointNumbers&&(L.privatePoints=this.parsePackedPointNumbers()),delete L.flags;let ee=this.offset,Te=this.relativeOffset,xe=Re=>{let Je,$e,nt=()=>{let st=0;if(s==="gvar"){if(st=L.privatePoints.length||S.length,!st){let Bt=a.get(l);Bt.path,st=Bt.points.length,st+=4}}else s==="cvar"&&(st=a.length);this.offset=ee,this.relativeOffset=Te,Je=this.parsePackedDeltas(st),s==="gvar"&&($e=this.parsePackedDeltas(st))};return{configurable:!0,get:function(){return Je===void 0&&nt(),Re==="deltasY"?$e:Je},set:function(st){Je===void 0&&nt(),Re==="deltasY"?$e=st:Je=st}}};Object.defineProperty(L,"deltas",xe.call(this,"deltas")),s==="gvar"&&Object.defineProperty(L,"deltasY",xe.call(this,"deltasY")),T+=L.variationDataSize,delete L.variationDataSize}this.relativeOffset=h;let Y={headers:C};return Y.sharedPoints=S,Y},V.prototype.parseTupleVariationHeader=function(t,n){let s=this.parseUShort(),a=this.parseUShort(),l=!!(a&ht.EMBEDDED_PEAK_TUPLE),h=!!(a&ht.INTERMEDIATE_REGION),d=!!(a&ht.PRIVATE_POINT_NUMBERS),B=l?void 0:a&ht.TUPLE_INDEX_MASK,w=l?this.parseTupleRecords(1,t)[0]:void 0,x=h?this.parseTupleRecords(1,t)[0]:void 0,C=h?this.parseTupleRecords(1,t)[0]:void 0,S={variationDataSize:s,peakTuple:w,intermediateStartTuple:x,intermediateEndTuple:C,flags:{embeddedPeakTuple:l,intermediateRegion:h,privatePointNumbers:d}};return n==="gvar"&&(S.sharedTupleRecordsIndex=B),S},V.prototype.parsePackedPointNumbers=function(){let t=this.parseByte(),n=[],s=t;if(t>=128){let l=this.parseByte();s=(t&ht.POINT_RUN_COUNT_MASK)<<8|l}let a=0;for(;n.length<s;){let l=this.parseByte(),h=!!(l&ht.POINTS_ARE_WORDS),d=(l&ht.POINT_RUN_COUNT_MASK)+1;for(let B=0;B<d&&n.length<s;B++){let w;h?w=this.parseUShort():w=this.parseByte(),a=a+w,n.push(a)}}return n},V.prototype.parsePackedDeltas=function(t){let n=[];for(;n.length<t;){let s=this.parseByte(),a=!!(s&ht.DELTAS_ARE_ZERO),l=!!(s&ht.DELTAS_ARE_WORDS),h=(s&ht.DELTA_RUN_COUNT_MASK)+1;for(let d=0;d<h&&n.length<t;d++)a?n.push(0):l?n.push(this.parseShort()):n.push(this.parseChar())}return n};var he={getByte:_e,getCard8:_e,getUShort:Ue,getCard16:Ue,getShort:je,getUInt24:at,getULong:Ke,getFixed:bt,getTag:xt,getOffset:Ir,getBytes:hr,bytesToString:Fr,Parser:V},fr=["copyright","fontFamily","fontSubfamily","uniqueID","fullName","version","postScriptName","trademark","manufacturer","designer","description","manufacturerURL","designerURL","license","licenseURL","reserved","preferredFamily","preferredSubfamily","compatibleFullName","sampleText","postScriptFindFontName","wwsFamily","wwsSubfamily"],un={0:"en",1:"fr",2:"de",3:"it",4:"nl",5:"sv",6:"es",7:"da",8:"pt",9:"no",10:"he",11:"ja",12:"ar",13:"fi",14:"el",15:"is",16:"mt",17:"tr",18:"hr",19:"zh-Hant",20:"ur",21:"hi",22:"th",23:"ko",24:"lt",25:"pl",26:"hu",27:"es",28:"lv",29:"se",30:"fo",31:"fa",32:"ru",33:"zh",34:"nl-BE",35:"ga",36:"sq",37:"ro",38:"cz",39:"sk",40:"si",41:"yi",42:"sr",43:"mk",44:"bg",45:"uk",46:"be",47:"uz",48:"kk",49:"az-Cyrl",50:"az-Arab",51:"hy",52:"ka",53:"mo",54:"ky",55:"tg",56:"tk",57:"mn-CN",58:"mn",59:"ps",60:"ks",61:"ku",62:"sd",63:"bo",64:"ne",65:"sa",66:"mr",67:"bn",68:"as",69:"gu",70:"pa",71:"or",72:"ml",73:"kn",74:"ta",75:"te",76:"si",77:"my",78:"km",79:"lo",80:"vi",81:"id",82:"tl",83:"ms",84:"ms-Arab",85:"am",86:"ti",87:"om",88:"so",89:"sw",90:"rw",91:"rn",92:"ny",93:"mg",94:"eo",128:"cy",129:"eu",130:"ca",131:"la",132:"qu",133:"gn",134:"ay",135:"tt",136:"ug",137:"dz",138:"jv",139:"su",140:"gl",141:"af",142:"br",143:"iu",144:"gd",145:"gv",146:"ga",147:"to",148:"el-polyton",149:"kl",150:"az",151:"nn"},rs={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:5,11:1,12:4,13:0,14:6,15:0,16:0,17:0,18:0,19:2,20:4,21:9,22:21,23:3,24:29,25:29,26:29,27:29,28:29,29:0,30:0,31:4,32:7,33:25,34:0,35:0,36:0,37:0,38:29,39:29,40:0,41:5,42:7,43:7,44:7,45:7,46:7,47:7,48:7,49:7,50:4,51:24,52:23,53:7,54:7,55:7,56:7,57:27,58:7,59:4,60:4,61:4,62:4,63:26,64:9,65:9,66:9,67:13,68:13,69:11,70:10,71:12,72:17,73:16,74:14,75:15,76:18,77:19,78:20,79:22,80:30,81:0,82:0,83:0,84:4,85:28,86:28,87:28,88:0,89:0,90:0,91:0,92:0,93:0,94:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:7,136:4,137:26,138:0,139:0,140:0,141:0,142:0,143:28,144:0,145:0,146:0,147:0,148:6,149:0,150:0,151:0},hn={1078:"af",1052:"sq",1156:"gsw",1118:"am",5121:"ar-DZ",15361:"ar-BH",3073:"ar",2049:"ar-IQ",11265:"ar-JO",13313:"ar-KW",12289:"ar-LB",4097:"ar-LY",6145:"ary",8193:"ar-OM",16385:"ar-QA",1025:"ar-SA",10241:"ar-SY",7169:"aeb",14337:"ar-AE",9217:"ar-YE",1067:"hy",1101:"as",2092:"az-Cyrl",1068:"az",1133:"ba",1069:"eu",1059:"be",2117:"bn",1093:"bn-IN",8218:"bs-Cyrl",5146:"bs",1150:"br",1026:"bg",1027:"ca",3076:"zh-HK",5124:"zh-MO",2052:"zh",4100:"zh-SG",1028:"zh-TW",1155:"co",1050:"hr",4122:"hr-BA",1029:"cs",1030:"da",1164:"prs",1125:"dv",2067:"nl-BE",1043:"nl",3081:"en-AU",10249:"en-BZ",4105:"en-CA",9225:"en-029",16393:"en-IN",6153:"en-IE",8201:"en-JM",17417:"en-MY",5129:"en-NZ",13321:"en-PH",18441:"en-SG",7177:"en-ZA",11273:"en-TT",2057:"en-GB",1033:"en",12297:"en-ZW",1061:"et",1080:"fo",1124:"fil",1035:"fi",2060:"fr-BE",3084:"fr-CA",1036:"fr",5132:"fr-LU",6156:"fr-MC",4108:"fr-CH",1122:"fy",1110:"gl",1079:"ka",3079:"de-AT",1031:"de",5127:"de-LI",4103:"de-LU",2055:"de-CH",1032:"el",1135:"kl",1095:"gu",1128:"ha",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig",1057:"id",1117:"iu",2141:"iu-Latn",2108:"ga",1076:"xh",1077:"zu",1040:"it",2064:"it-CH",1041:"ja",1099:"kn",1087:"kk",1107:"km",1158:"quc",1159:"rw",1089:"sw",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1062:"lv",1063:"lt",2094:"dsb",1134:"lb",1071:"mk",2110:"ms-BN",1086:"ms",1100:"ml",1082:"mt",1153:"mi",1146:"arn",1102:"mr",1148:"moh",1104:"mn",2128:"mn-CN",1121:"ne",1044:"nb",2068:"nn",1154:"oc",1096:"or",1123:"ps",1045:"pl",1046:"pt",2070:"pt-PT",1094:"pa",1131:"qu-BO",2155:"qu-EC",3179:"qu",1048:"ro",1047:"rm",1049:"ru",9275:"smn",4155:"smj-NO",5179:"smj",3131:"se-FI",1083:"se",2107:"se-SE",8251:"sms",6203:"sma-NO",7227:"sms",1103:"sa",7194:"sr-Cyrl-BA",3098:"sr",6170:"sr-Latn-BA",2074:"sr-Latn",1132:"nso",1074:"tn",1115:"si",1051:"sk",1060:"sl",11274:"es-AR",16394:"es-BO",13322:"es-CL",9226:"es-CO",5130:"es-CR",7178:"es-DO",12298:"es-EC",17418:"es-SV",4106:"es-GT",18442:"es-HN",2058:"es-MX",19466:"es-NI",6154:"es-PA",15370:"es-PY",10250:"es-PE",20490:"es-PR",3082:"es",1034:"es",21514:"es-US",14346:"es-UY",8202:"es-VE",2077:"sv-FI",1053:"sv",1114:"syr",1064:"tg",2143:"tzm",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1055:"tr",1090:"tk",1152:"ug",1058:"uk",1070:"hsb",1056:"ur",2115:"uz-Cyrl",1091:"uz",1066:"vi",1106:"cy",1160:"wo",1157:"sah",1144:"ii",1130:"yo"};function is(t,n,s){switch(t){case 0:if(n===65535)return"und";if(s)return s[n];break;case 1:return un[n];case 3:return hn[n]}}var li="utf-16",ns={0:"macintosh",1:"x-mac-japanese",2:"x-mac-chinesetrad",3:"x-mac-korean",6:"x-mac-greek",7:"x-mac-cyrillic",9:"x-mac-devanagai",10:"x-mac-gurmukhi",11:"x-mac-gujarati",12:"x-mac-oriya",13:"x-mac-bengali",14:"x-mac-tamil",15:"x-mac-telugu",16:"x-mac-kannada",17:"x-mac-malayalam",18:"x-mac-sinhalese",19:"x-mac-burmese",20:"x-mac-khmer",21:"x-mac-thai",22:"x-mac-lao",23:"x-mac-georgian",24:"x-mac-armenian",25:"x-mac-chinesesimp",26:"x-mac-tibetan",27:"x-mac-mongolian",28:"x-mac-ethiopic",29:"x-mac-ce",30:"x-mac-vietnamese",31:"x-mac-extarabic"},ss={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"};function Fi(t,n,s){switch(t){case 0:return li;case 1:return ss[s]||ns[n];case 3:if(n===1||n===10)return li;break}}var fn={0:"unicode",1:"macintosh",2:"reserved",3:"windows"};function os(t){return fn[t]}function Yo(t,n,s){let a={},l=new he.Parser(t,n),h=l.parseUShort(),d=l.parseUShort(),B=l.offset+l.parseUShort();for(let w=0;w<d;w++){let x=l.parseUShort(),C=l.parseUShort(),S=l.parseUShort(),T=l.parseUShort(),Y=fr[T]||T,U=l.parseUShort(),L=l.parseUShort(),ee=is(x,S,s),Te=Fi(x,C,S),xe=os(x);if(Te!==void 0&&ee!==void 0&&xe!==void 0){let Re;if(Te===li?Re=Qe.UTF16(t,B+L,U):Re=Qe.MACSTRING(t,B+L,U,Te),Re){let Je=a[xe];Je===void 0&&(Je=a[xe]={});let $e=Je[Y];$e===void 0&&($e=Je[Y]={}),$e[ee]=Re}}}return h===1&&l.parseUShort(),a}function pr(t){let n={};for(let s in t)n[t[s]]=parseInt(s);return n}function Ti(t,n,s,a,l,h){return new $.Record("NameRecord",[{name:"platformID",type:"USHORT",value:t},{name:"encodingID",type:"USHORT",value:n},{name:"languageID",type:"USHORT",value:s},{name:"nameID",type:"USHORT",value:a},{name:"length",type:"USHORT",value:l},{name:"offset",type:"USHORT",value:h}])}function Si(t,n){let s=t.length,a=n.length-s+1;e:for(let l=0;l<a;l++)for(;l<a;l++){for(let h=0;h<s;h++)if(n[l+h]!==t[h])continue e;return l}return-1}function ci(t,n){let s=Si(t,n);if(s<0){s=n.length;let a=0,l=t.length;for(;a<l;++a)n.push(t[a])}return s}function as(t,n){let s=pr(fn),a=pr(un),l=pr(hn),h=[],d=[];for(let w in t){let x,C=[],S={},T=pr(fr),Y=s[w];for(let U in t[w]){let L=T[U];if(L===void 0&&(L=U),x=parseInt(L),isNaN(x))throw new Error('Name table entry "'+U+'" does not exist, see nameTableNames for complete list.');S[x]=t[w][U],C.push(x)}for(let U=0;U<C.length;U++){x=C[U];let L=S[x];for(let ee in L){let Te=L[ee];if(Y===1||Y===0){let xe=a[ee],Re=rs[xe],Je=Fi(Y,Re,xe),$e=Z.MACSTRING(Te,Je);if(Y===0&&(xe=n.indexOf(ee),xe<0&&(xe=n.length,n.push(ee)),Re=4,$e=Z.UTF16(Te)),$e!==void 0){let nt=ci($e,d);h.push(Ti(Y,Re,xe,x,$e.length,nt))}}if(Y===3){let xe=l[ee];if(xe!==void 0){let Re=Z.UTF16(Te),Je=ci(Re,d);h.push(Ti(3,1,xe,x,Re.length,Je))}}}}}h.sort(function(w,x){return w.platformID-x.platformID||w.encodingID-x.encodingID||w.languageID-x.languageID||w.nameID-x.nameID});let B=new $.Table("name",[{name:"format",type:"USHORT",value:0},{name:"count",type:"USHORT",value:h.length},{name:"stringOffset",type:"USHORT",value:6+h.length*12}]);for(let w=0;w<h.length;w++)B.fields.push({name:"record_"+w,type:"RECORD",value:h[w]});return B.fields.push({name:"strings",type:"LITERAL",value:d}),B}function ui(t,n,s=[]){if(n<256&&n in fr){if(s.length&&!s.includes(parseInt(n)))return;n=fr[n]}for(let a in t)for(let l in t[a])if(l===n||parseInt(l)===n)return t[a][l]}var pn={parse:Yo,make:as,getNameByID:ui};function As(t,n,s,a){t.length=n.parseUShort(),t.language=n.parseUShort()-1;let l=n.parseByteList(t.length),h=Object.assign({},l),d=Fi(s,a,t.language),B=Oe[d];for(let w=0;w<B.length;w++)h[B.charCodeAt(w)]=l[128+w];t.glyphIndexMap=h}function ls(t,n,s){n.parseUShort(),t.length=n.parseULong(),t.language=n.parseULong();let a;t.groupCount=a=n.parseULong(),t.glyphIndexMap={};for(let l=0;l<a;l+=1){let h=n.parseULong(),d=n.parseULong(),B=n.parseULong();for(let w=h;w<=d;w+=1)t.glyphIndexMap[w]=B,s===12&&B++}}function cs(t,n,s,a,l){t.length=n.parseUShort(),t.language=n.parseUShort();let h;t.segCount=h=n.parseUShort()>>1,n.skip("uShort",3),t.glyphIndexMap={};let d=new he.Parser(s,a+l+14),B=new he.Parser(s,a+l+16+h*2),w=new he.Parser(s,a+l+16+h*4),x=new he.Parser(s,a+l+16+h*6),C=a+l+16+h*8;for(let S=0;S<h-1;S+=1){let T,Y=d.parseUShort(),U=B.parseUShort(),L=w.parseShort(),ee=x.parseUShort();for(let Te=U;Te<=Y;Te+=1)ee!==0?(C=x.offset+x.relativeOffset-2,C+=ee,C+=(Te-U)*2,T=he.getUShort(s,C),T!==0&&(T=T+L&65535)):T=Te+L&65535,t.glyphIndexMap[Te]=T}}function us(t,n){let s={};n.skip("uLong");let a=n.parseULong();for(let l=0;l<a;l+=1){let h=n.parseUInt24(),d={varSelector:h},B=n.parseOffset32(),w=n.parseOffset32(),x=n.relativeOffset;B&&(n.relativeOffset=B,d.defaultUVS=n.parseStruct({ranges:function(){return n.parseRecordList32({startUnicodeValue:n.parseUInt24,additionalCount:n.parseByte})}})),w&&(n.relativeOffset=w,d.nonDefaultUVS=n.parseStruct({uvsMappings:function(){let C={},S=n.parseRecordList32({unicodeValue:n.parseUInt24,glyphID:n.parseUShort});for(let T=0;T<S.length;T+=1)C[S[T].unicodeValue]=S[T];return C}})),s[h]=d,n.relativeOffset=x}t.varSelectorList=s}function Di(t,n){let s={};s.version=he.getUShort(t,n),G.argument(s.version===0,"cmap table version should be 0."),s.numTables=he.getUShort(t,n+2);let a=null,l=-1,h=-1,d=null,B=null,w=[0,1,2,3,4,6],x=[0,1,10];for(let S=s.numTables-1;S>=0;S-=1)if(d=he.getUShort(t,n+4+S*8),B=he.getUShort(t,n+4+S*8+2),d===3&&x.includes(B)||d===0&&w.includes(B)||d===1&&B===0){if(h>0)continue;if(h=he.getULong(t,n+4+S*8+4),a)break}else if(d===0&&B===5){if(l=he.getULong(t,n+4+S*8+4),a=new he.Parser(t,n+l),a.parseUShort()!==14)l=-1,a=null;else if(h>0)break}if(h===-1)throw new Error("No valid cmap sub-tables found.");let C=new he.Parser(t,n+h);if(s.format=C.parseUShort(),s.format===0)As(s,C,d,B);else if(s.format===12||s.format===13)ls(s,C,s.format);else if(s.format===4)cs(s,C,t,n,h);else throw new Error("Only format 0 (platformId 1, encodingId 0), 4, 12 and 14 cmap tables are supported (found format "+s.format+", platformId "+d+", encodingId "+B+").");return a&&us(s,a),s}function U0(t,n,s){t.segments.push({end:n,start:n,delta:-(n-s),offset:0,glyphIndex:s})}function k0(t){t.segments.push({end:65535,start:65535,delta:1,offset:0})}function Y0(t){if(t.length===0)return t;let n=[t[0]];for(let s=1;s<t.length;s++){let a=n[n.length-1],l=t[s];a.end+1===l.start&&a.delta===l.delta&&l.end!==65535?a.end=l.end:n.push(l)}return n}function O0(t){let n=!0,s;for(s=t.length-1;s>0;s-=1)if(t.get(s).unicode>65535){n=!1;break}let a=[{name:"version",type:"USHORT",value:0},{name:"numTables",type:"USHORT",value:n?1:2},{name:"platformID",type:"USHORT",value:3},{name:"encodingID",type:"USHORT",value:1},{name:"offset",type:"ULONG",value:n?12:20}];n||a.push({name:"cmap12PlatformID",type:"USHORT",value:3},{name:"cmap12EncodingID",type:"USHORT",value:10},{name:"cmap12Offset",type:"ULONG",value:0}),a.push({name:"format",type:"USHORT",value:4},{name:"cmap4Length",type:"USHORT",value:0},{name:"language",type:"USHORT",value:0},{name:"segCountX2",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0});let l=new $.Table("cmap",a);for(l.segments=[],s=0;s<t.length;s+=1){let Y=t.get(s);for(let U=0;U<Y.unicodes.length;U+=1)U0(l,Y.unicodes[U],s)}l.segments.sort(function(Y,U){return Y.start-U.start}),l.segments=Y0(l.segments),k0(l);let h=l.segments.length,d=0,B=[],w=[],x=[],C=[],S=[],T=[];for(s=0;s<h;s+=1){let Y=l.segments[s];Y.end<=65535&&Y.start<=65535?(B.push({name:"end_"+s,type:"USHORT",value:Y.end}),w.push({name:"start_"+s,type:"USHORT",value:Y.start}),x.push({name:"idDelta_"+s,type:"SHORT",value:Y.delta}),C.push({name:"idRangeOffset_"+s,type:"USHORT",value:Y.offset}),Y.glyphId!==void 0&&S.push({name:"glyph_"+s,type:"USHORT",value:Y.glyphId})):d+=1,!n&&Y.glyphIndex!==void 0&&(T.push({name:"cmap12Start_"+s,type:"ULONG",value:Y.start}),T.push({name:"cmap12End_"+s,type:"ULONG",value:Y.end}),T.push({name:"cmap12Glyph_"+s,type:"ULONG",value:Y.glyphIndex}))}l.segCountX2=(h-d)*2,l.searchRange=Math.pow(2,Math.floor(Math.log(h-d)/Math.log(2)))*2,l.entrySelector=Math.log(l.searchRange/2)/Math.log(2),l.rangeShift=l.segCountX2-l.searchRange;for(let Y=0;Y<B.length;Y++)l.fields.push(B[Y]);l.fields.push({name:"reservedPad",type:"USHORT",value:0});for(let Y=0;Y<w.length;Y++)l.fields.push(w[Y]);for(let Y=0;Y<x.length;Y++)l.fields.push(x[Y]);for(let Y=0;Y<C.length;Y++)l.fields.push(C[Y]);for(let Y=0;Y<S.length;Y++)l.fields.push(S[Y]);if(l.cmap4Length=14+B.length*2+2+w.length*2+x.length*2+C.length*2+S.length*2,!n){let Y=16+T.length*4;l.cmap12Offset=20+l.cmap4Length,l.fields.push({name:"cmap12Format",type:"USHORT",value:12},{name:"cmap12Reserved",type:"USHORT",value:0},{name:"cmap12Length",type:"ULONG",value:Y},{name:"cmap12Language",type:"ULONG",value:0},{name:"cmap12nGroups",type:"ULONG",value:T.length/3});for(let U=0;U<T.length;U++)l.fields.push(T[U])}return l}var Wl={parse:Di,make:O0},hs=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","266 ff","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],N0=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron"],R0=[".notdef","space","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],G0=[".notdef","space","dollaroldstyle","dollarsuperior","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","hyphensuperior","colonmonetary","onefitted","rupiah","centoldstyle","figuredash","hypheninferior","onequarter","onehalf","threequarters","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior"],Oo=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls"],L0=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],hi=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function Jl(t){this.font=t}Jl.prototype.charToGlyphIndex=function(t){let n=t.codePointAt(0),s=this.font.glyphs;if(s)for(let a=0;a<s.length;a+=1){let l=s.get(a);for(let h=0;h<l.unicodes.length;h+=1)if(l.unicodes[h]===n)return a}return null};function Vl(t){this.cmap=t}Vl.prototype.charToGlyphIndex=function(t){return this.cmap.glyphIndexMap[t.codePointAt(0)]||0};function jl(t,n){this.encoding=t,this.charset=n}jl.prototype.charToGlyphIndex=function(t){let n=t.codePointAt(0),s=this.encoding[n];return this.charset.indexOf(s)};function No(t){switch(t.version){case 1:this.names=hi.slice();break;case 2:this.names=new Array(t.numberOfGlyphs);for(let n=0;n<t.numberOfGlyphs;n++)t.glyphNameIndex[n]<hi.length?this.names[n]=hi[t.glyphNameIndex[n]]:this.names[n]=t.names[t.glyphNameIndex[n]-hi.length];break;case 2.5:this.names=new Array(t.numberOfGlyphs);for(let n=0;n<t.numberOfGlyphs;n++)this.names[n]=hi[n+t.glyphNameIndex[n]];break;case 3:this.names=[];break;default:this.names=[];break}}No.prototype.nameToGlyphIndex=function(t){return this.names.indexOf(t)},No.prototype.glyphIndexToName=function(t){return this.names[t]};function P0(t){let n,s=t.tables.cmap.glyphIndexMap,a=Object.keys(s);for(let l=0;l<a.length;l+=1){let h=a[l],d=s[h];n=t.glyphs.get(d),n.addUnicode(parseInt(h))}for(let l=0;l<t.glyphs.length;l+=1)n=t.glyphs.get(l),t.cffEncoding?n.name=t.cffEncoding.charset[l]:t.glyphNames.names&&(n.name=t.glyphNames.glyphIndexToName(l))}function H0(t){t._IndexToUnicodeMap={};let n=t.tables.cmap.glyphIndexMap,s=Object.keys(n);for(let a=0;a<s.length;a+=1){let l=s[a],h=n[l];t._IndexToUnicodeMap[h]===void 0?t._IndexToUnicodeMap[h]={unicodes:[parseInt(l)]}:t._IndexToUnicodeMap[h].unicodes.push(parseInt(l))}}function W0(t,n){n.lowMemory?H0(t):P0(t)}function J0(t,n,s,a,l){t.beginPath(),t.moveTo(n,s),t.lineTo(a,l),t.stroke()}var fi={line:J0};function V0(t,n){let s=new V(t,n),a=s.parseShort();a!==0&&console.warn("Only CPALv0 is currently fully supported.");let l=s.parseShort(),h=s.parseShort(),d=s.parseShort(),B=s.parseOffset32(),w=s.parseUShortList(h);s.relativeOffset=B;let x=s.parseULongList(d);return s.relativeOffset=B,{version:a,numPaletteEntries:l,colorRecords:x,colorRecordIndices:w}}function j0({version:t=0,numPaletteEntries:n=0,colorRecords:s=[],colorRecordIndices:a=[0]}){return G.argument(t===0,"Only CPALv0 are supported."),G.argument(s.length,"No colorRecords given."),G.argument(a.length,"No colorRecordIndices given."),a.length>1&&G.argument(n,"Can't infer numPaletteEntries on multiple colorRecordIndices"),new $.Table("CPAL",[{name:"version",type:"USHORT",value:t},{name:"numPaletteEntries",type:"USHORT",value:n||s.length},{name:"numPalettes",type:"USHORT",value:a.length},{name:"numColorRecords",type:"USHORT",value:s.length},{name:"colorRecordsArrayOffset",type:"ULONG",value:12+2*a.length},...a.map((l,h)=>({name:"colorRecordIndices_"+h,type:"USHORT",value:l})),...s.map((l,h)=>({name:"colorRecords_"+h,type:"ULONG",value:l}))])}function _l(t){var n=(t&4278190080)>>24,s=(t&16711680)>>16,a=(t&65280)>>8,l=t&255;return n=n+256&255,s=s+256&255,a=a+256&255,l=(l+256&255)/255,{b:n,g:s,r:a,a:l}}function Ro(t,n,s=0,a="hexa"){if(n==65535)return"currentColor";let l=t&&t.tables&&t.tables.cpal;if(!l)return"currentColor";if(s>l.colorRecordIndices.length-1)throw new Error(`Palette index out of range (colorRecordIndices.length: ${l.colorRecordIndices.length}, index: ${n})`);if(n>l.numPaletteEntries)throw new Error(`Color index out of range (numPaletteEntries: ${l.numPaletteEntries}, index: ${n})`);let h=l.colorRecordIndices[s]+n;if(h>l.colorRecords)throw new Error(`Color index out of range (colorRecords.length: ${l.colorRecords.length}, lookupIndex: ${h})`);let d=_l(l.colorRecords[h]);return a==="bgra"?d:Mi(d,a)}function rr(t){return("0"+parseInt(t).toString(16)).slice(-2)}function _0(t){let n=t.r/255,s=t.g/255,a=t.b/255,l=Math.max(n,s,a),h=Math.min(n,s,a),d,B,w=(l+h)/2;if(l===h)d=B=0;else{let x=l-h;switch(B=w>.5?x/(2-l-h):x/(l+h),l){case n:d=(s-a)/x+(s<a?6:0);break;case s:d=(a-n)/x+2;break;case a:d=(n-s)/x+4;break}d/=6}return{h:d*360,s:B*100,l:w*100}}function Z0(t){let{h:n,s,l:a,a:l}=t;n=n%360,s/=100,a/=100;let h=(1-Math.abs(2*a-1))*s,d=h*(1-Math.abs(n/60%2-1)),B=a-h/2,w=0,x=0,C=0;return 0<=n&&n<60?(w=h,x=d,C=0):60<=n&&n<120?(w=d,x=h,C=0):120<=n&&n<180?(w=0,x=h,C=d):180<=n&&n<240?(w=0,x=d,C=h):240<=n&&n<300?(w=d,x=0,C=h):300<=n&&n<=360&&(w=h,x=0,C=d),{r:Math.round((w+B)*255),g:Math.round((x+B)*255),b:Math.round((C+B)*255),a:l}}function Zl(t){return parseInt(`0x${rr(t.b)}${rr(t.g)}${rr(t.r)}${rr(t.a*255)}`,16)}function fs(t,n="hexa"){let s=n=="raw"||n=="cpal",a=Number.isInteger(t),l=!0;if(a&&s||t==="currentColor")return t;if(typeof t=="object"){if(n=="bgra")return t;if(s)return Zl(t)}else if(!a&&/^#([a-f0-9]{3}|[a-f0-9]{4}|[a-f0-9]{6}|[a-f0-9]{8})$/i.test(t.trim())){switch(t=t.trim().substring(1),t.length){case 3:t={r:parseInt(t[0].repeat(2),16),g:parseInt(t[1].repeat(2),16),b:parseInt(t[2].repeat(2),16),a:1};break;case 4:t={r:parseInt(t[0].repeat(2),16),g:parseInt(t[1].repeat(2),16),b:parseInt(t[2].repeat(2),16),a:parseInt(t[3].repeat(2),16)/255};break;case 6:t={r:parseInt(t[0]+t[1],16),g:parseInt(t[2]+t[3],16),b:parseInt(t[4]+t[5],16),a:1};break;case 8:t={r:parseInt(t[0]+t[1],16),g:parseInt(t[2]+t[3],16),b:parseInt(t[4]+t[5],16),a:parseInt(t[6]+t[7],16)/255};break}if(n=="bgra")return t}else if(typeof document<"u"&&/^[a-z]+$/i.test(t)){let h=document.createElement("canvas").getContext("2d");h.fillStyle=t;let d=Mi(h.fillStyle,"hexa");d==="#000000ff"&&t.toLowerCase()!=="black"?l=!1:t=d}else{t=t.trim();let h=/rgba?\(\s*(?:(\d*\.\d+)(%?)|(\d+)(%?))\s*(?:,|\s*)\s*(?:(\d*\.\d+)(%?)|(\d+)(%?))\s*(?:,|\s*)\s*(?:(\d*\.\d+)(%?)|(\d+)(%?))\s*(?:(?:,|\s|\/)\s*(?:(0*(?:\.\d+)?()|0*1(?:\.0+)?())|(?:\.\d+)|(\d+)(%)|(\d*\.\d+)(%)))?\s*\)/;if(h.test(t)){let d=t.match(h).filter(B=>typeof B<"u");t={r:Math.round(parseFloat(d[1])/(d[2]?.39215686274509803:1)),g:Math.round(parseFloat(d[3])/(d[4]?.39215686274509803:1)),b:Math.round(parseFloat(d[5])/(d[6]?.39215686274509803:1)),a:d[7]?parseFloat(d[7])/(d[8]?100:1):1}}else{let d=/hsla?\(\s*(?:(\d*\.\d+|\d+)(deg|turn|))\s*(?:,|\s*)\s*(?:(\d*\.\d+)%?|(\d+)%?)\s*(?:,|\s*)\s*(?:(\d*\.\d+)%?|(\d+)%?)\s*(?:(?:,|\s|\/)\s*(?:(0*(?:\.\d+)?()|0*1(?:\.0+)?())|(?:\.\d+)|(\d+)(%)|(\d*\.\d+)(%)))?\s*\)/;if(d.test(t)){let B=t.match(d).filter(w=>typeof w<"u");t=Z0({h:parseFloat(B[1])*(B[2]==="turn"?360:1),s:parseFloat(B[3]),l:parseFloat(B[4]),a:B[5]?parseFloat(B[5])/(B[6]?100:1):1})}else l=!1}}if(!l)throw new Error(`Invalid color format: ${t}`);return Mi(t,n)}function Mi(t,n="hexa"){if(t==="currentColor")return t;if(Number.isInteger(t)){if(n=="raw"||n=="cpal")return t;t=_l(t)}else typeof t!="object"&&(t=fs(t,"bgra"));let s=["hsl","hsla"].includes(n)?_0(t):null;switch(n){case"rgba":return`rgba(${t.r}, ${t.g}, ${t.b}, ${parseFloat(t.a.toFixed(3))})`;case"rgb":return`rgb(${t.r}, ${t.g}, ${t.b})`;case"hex":case"hex6":case"hex-6":return`#${rr(t.r)}${rr(t.g)}${rr(t.b)}`;case"hexa":case"hex8":case"hex-8":return`#${rr(t.r)}${rr(t.g)}${rr(t.b)}${rr(t.a*255)}`;case"hsl":return`hsl(${s.h.toFixed(2)}, ${s.s.toFixed(2)}%, ${s.l.toFixed(2)}%)`;case"hsla":return`hsla(${s.h.toFixed(2)}, ${s.s.toFixed(2)}%, ${s.l.toFixed(2)}%, ${parseFloat(t.a.toFixed(3))})`;case"bgra":return t;case"raw":case"cpal":return Zl(t);default:throw new Error("Unknown color format: "+n)}}var Xl={parse:V0,make:j0,getPaletteColor:Ro,parseColor:fs,formatColor:Mi};function X0(t,n){let s=n||new z;return{configurable:!0,get:function(){return typeof s=="function"&&(s=s()),s},set:function(a){s=a}}}function Qt(t){this.bindConstructorValues(t)}Qt.prototype.bindConstructorValues=function(t){if(this.index=t.index||0,t.name===".notdef"?t.unicode=void 0:t.name===".null"&&(t.unicode=0),t.unicode===0&&t.name!==".null")throw new Error('The unicode value "0" is reserved for the glyph name ".null" and cannot be used by any other glyph.');this.name=t.name||null,this.unicode=t.unicode,this.unicodes=t.unicodes||(t.unicode!==void 0?[t.unicode]:[]),"xMin"in t&&(this.xMin=t.xMin),"yMin"in t&&(this.yMin=t.yMin),"xMax"in t&&(this.xMax=t.xMax),"yMax"in t&&(this.yMax=t.yMax),"advanceWidth"in t&&(this.advanceWidth=t.advanceWidth),"leftSideBearing"in t&&(this.leftSideBearing=t.leftSideBearing),"points"in t&&(this.points=t.points),Object.defineProperty(this,"path",X0(this,t.path))},Qt.prototype.addUnicode=function(t){this.unicodes.length===0&&(this.unicode=t),this.unicodes.push(t)},Qt.prototype.getBoundingBox=function(){return this.path.getBoundingBox()},Qt.prototype.getPath=function(t,n,s,a,l){t=t!==void 0?t:0,n=n!==void 0?n:0,s=s!==void 0?s:72,a=Object.assign({},l&&l.defaultRenderOptions,a);let h,d,B=a.xScale,w=a.yScale,x=1/(this.path.unitsPerEm||1e3)*s,C=this;l&&l.variation&&(C=l.variation.getTransform(this,a.variation),h=C.path.commands),a.hinting&&l&&l.hinting&&(d=C.path&&l.hinting.exec(C,s,a)),d?(h=l.hinting.getCommands(d),t=Math.round(t),n=Math.round(n),B=w=1):(h=C.path.commands,B===void 0&&(B=x),w===void 0&&(w=x));let S=new z;if(a.drawSVG){let T=this.getSvgImage(l);if(T){let Y=new z;return Y._image={image:T.image,x:t+T.leftSideBearing*x,y:n-T.baseline*x,width:T.image.width*x,height:T.image.height*x},S._layers=[Y],S}}if(a.drawLayers){let T=this.getLayers(l);if(T&&T.length){S._layers=[];for(let Y=0;Y<T.length;Y+=1){let U=T[Y],L=Ro(l,U.paletteIndex,a.usePalette);L==="currentColor"?L=a.fill||"black":L=Mi(L,a.colorFormat||"rgba"),a=Object.assign({},a,{fill:L}),S._layers.push(this.getPath.call(U.glyph,t,n,s,a,l))}return S}}S.fill=a.fill||this.path.fill,S.stroke=this.path.stroke,S.strokeWidth=this.path.strokeWidth*x;for(let T=0;T<h.length;T+=1){let Y=h[T];Y.type==="M"?S.moveTo(t+Y.x*B,n+-Y.y*w):Y.type==="L"?S.lineTo(t+Y.x*B,n+-Y.y*w):Y.type==="Q"?S.quadraticCurveTo(t+Y.x1*B,n+-Y.y1*w,t+Y.x*B,n+-Y.y*w):Y.type==="C"?S.curveTo(t+Y.x1*B,n+-Y.y1*w,t+Y.x2*B,n+-Y.y2*w,t+Y.x*B,n+-Y.y*w):Y.type==="Z"&&S.stroke&&S.strokeWidth&&S.closePath()}return S},Qt.prototype.getLayers=function(t){if(!t)throw new Error("The font object is required to read the colr/cpal tables in order to get the layers.");return t.layers.get(this.index)},Qt.prototype.getSvgImage=function(t){if(!t)throw new Error("The font object is required to read the svg table in order to get the image.");return t.svgImages.get(this.index)},Qt.prototype.getContours=function(t=null){if(this.points===void 0&&!t)return[];let n=[],s=[],a=t||this.points;for(let l=0;l<a.length;l+=1){let h=a[l];s.push(h),h.lastPointOfContour&&(n.push(s),s=[])}return G.argument(s.length===0,"There are still points left in the current contour."),n},Qt.prototype.getMetrics=function(){let t=this.path.commands,n=[],s=[];for(let l=0;l<t.length;l+=1){let h=t[l];h.type!=="Z"&&(n.push(h.x),s.push(h.y)),(h.type==="Q"||h.type==="C")&&(n.push(h.x1),s.push(h.y1)),h.type==="C"&&(n.push(h.x2),s.push(h.y2))}let a={xMin:Math.min.apply(null,n),yMin:Math.min.apply(null,s),xMax:Math.max.apply(null,n),yMax:Math.max.apply(null,s),leftSideBearing:this.leftSideBearing};return isFinite(a.xMin)||(a.xMin=0),isFinite(a.xMax)||(a.xMax=this.advanceWidth),isFinite(a.yMin)||(a.yMin=0),isFinite(a.yMax)||(a.yMax=0),a.rightSideBearing=this.advanceWidth-a.leftSideBearing-(a.xMax-a.xMin),a},Qt.prototype.draw=function(t,n,s,a,l,h){l=Object.assign({},h&&h.defaultRenderOptions,l),this.getPath(n,s,a,l,h).draw(t)},Qt.prototype.drawPoints=function(t,n,s,a,l,h){if(l=Object.assign({},h&&h.defaultRenderOptions,l),l.drawLayers){let T=this.getLayers(h);if(T&&T.length){for(let Y=0;Y<T.length;Y+=1)T[Y].glyph.index!==this.index&&this.drawPoints.call(T[Y].glyph,t,n,s,a);return}}function d(T,Y,U,L){t.beginPath();for(let ee=0;ee<T.length;ee+=1)t.moveTo(Y+T[ee].x*L,U+T[ee].y*L),t.arc(Y+T[ee].x*L,U+T[ee].y*L,2,0,Math.PI*2,!1);t.fill()}n=n!==void 0?n:0,s=s!==void 0?s:0,a=a!==void 0?a:24;let B=1/this.path.unitsPerEm*a,w=[],x=[],S=this.path.commands;h&&h.variation&&(S=h.variation.getTransform(this,l.variation).path.commands);for(let T=0;T<S.length;T+=1){let Y=S[T];Y.x!==void 0&&w.push({x:Y.x,y:-Y.y}),Y.x1!==void 0&&x.push({x:Y.x1,y:-Y.y1}),Y.x2!==void 0&&x.push({x:Y.x2,y:-Y.y2})}t.fillStyle="blue",d(w,n,s,B),t.fillStyle="red",d(x,n,s,B)},Qt.prototype.drawMetrics=function(t,n,s,a){let l;n=n!==void 0?n:0,s=s!==void 0?s:0,a=a!==void 0?a:24,l=1/this.path.unitsPerEm*a,t.lineWidth=1,t.strokeStyle="black",fi.line(t,n,-1e4,n,1e4),fi.line(t,-1e4,s,1e4,s);let h=this.xMin||0,d=this.yMin||0,B=this.xMax||0,w=this.yMax||0,x=this.advanceWidth||0;t.strokeStyle="blue",fi.line(t,n+h*l,-1e4,n+h*l,1e4),fi.line(t,n+B*l,-1e4,n+B*l,1e4),fi.line(t,-1e4,s+-d*l,1e4,s+-d*l),fi.line(t,-1e4,s+-w*l,1e4,s+-w*l),t.strokeStyle="green",fi.line(t,n+x*l,-1e4,n+x*l,1e4)},Qt.prototype.toPathData=function(t,n){t=Object.assign({},{variation:n&&n.defaultRenderOptions.variation},t);let s=this;n&&n.variation&&(s=n.variation.getTransform(this,t.variation));let a=s.points&&t.pointsTransform?t.pointsTransform(s.points):s.path;return t.pathTransform&&(a=t.pathTransform(a)),a.toPathData(t)},Qt.prototype.fromSVG=function(t,n={}){return this.path.fromSVG(t,n)},Qt.prototype.toSVG=function(t,n){let s=this.toPathData.apply(this,[t,n]);return this.path.toSVG(t,s)},Qt.prototype.toDOMElement=function(t,n){t=Object.assign({},{variation:n&&n.defaultRenderOptions.variation},t);let s=this.path;return n&&n.variation&&(s=n.variation.getTransform(this,t.variation).path),s.toDOMElement(t)};var Ui=Qt;function ki(t,n,s){Object.defineProperty(t,n,{get:function(){return typeof t[s]>"u"&&t.path,t[s]},set:function(a){t[s]=a},enumerable:!0,configurable:!0})}function ps(t,n){if(this.font=t,this.glyphs={},Array.isArray(n))for(let s=0;s<n.length;s++){let a=n[s];a.path.unitsPerEm=t.unitsPerEm,this.glyphs[s]=a}this.length=n&&n.length||0}typeof Symbol<"u"&&Symbol.iterator&&(ps.prototype[Symbol.iterator]=function(){let t=-1;return{next:function(){t++;let n=t>=this.length-1;return{value:this.get(t),done:n}}.bind(this)}}),ps.prototype.get=function(t){if(this.font._push&&this.glyphs[t]===void 0){this.font._push(t),typeof this.glyphs[t]=="function"&&(this.glyphs[t]=this.glyphs[t]());let n=this.glyphs[t],s=this.font._IndexToUnicodeMap[t];if(s)for(let a=0;a<s.unicodes.length;a++)n.addUnicode(s.unicodes[a]);this.font.cffEncoding?n.name=this.font.cffEncoding.charset[t]:this.font.glyphNames.names&&(n.name=this.font.glyphNames.glyphIndexToName(t)),this.glyphs[t].advanceWidth=this.font._hmtxTableData[t].advanceWidth,this.glyphs[t].leftSideBearing=this.font._hmtxTableData[t].leftSideBearing}else typeof this.glyphs[t]=="function"&&(this.glyphs[t]=this.glyphs[t]());return this.glyphs[t]},ps.prototype.push=function(t,n){this.glyphs[t]=n,this.length++};function z0(t,n){return new Ui({index:n,font:t})}function q0(t,n,s,a,l,h){return function(){let d=new Ui({index:n,font:t});return d.path=function(){s(d,a,l);let B=h(t.glyphs,d);return B.unitsPerEm=t.unitsPerEm,B},ki(d,"numberOfContours","_numberOfContours"),ki(d,"xMin","_xMin"),ki(d,"xMax","_xMax"),ki(d,"yMin","_yMin"),ki(d,"yMax","_yMax"),ki(d,"points","_points"),d}}function K0(t,n,s,a,l){return function(){let h=new Ui({index:n,font:t});return h.path=function(){let d=s(t,h,a,l);return d.unitsPerEm=t.unitsPerEm,d},h}}var dr={GlyphSet:ps,glyphLoader:z0,ttfGlyphLoader:q0,cffGlyphLoader:K0};function zl(t,n){if(t===n)return!0;if(Array.isArray(t)&&Array.isArray(n)){if(t.length!==n.length)return!1;for(let s=0;s<t.length;s+=1)if(!zl(t[s],n[s]))return!1;return!0}else return!1}var ql=10;function ds(t){let n;return t.length<1240?n=107:t.length<33900?n=1131:n=32768,n}function gr(t,n,s,a){let l=[],h=[],d=a>1?he.getULong(t,n):he.getCard16(t,n),B=a>1?4:2,w,x;if(d!==0){let C=he.getByte(t,n+B);w=n+(d+1)*C+B;let S=n+B+1;for(let T=0;T<d+1;T+=1)l.push(he.getOffset(t,S,C)),S+=C;x=w+l[d]}else x=n+B;for(let C=0;C<l.length-1;C+=1){let S=he.getBytes(t,w+l[C],w+l[C+1]);s&&(S=s(S,t,n,a)),h.push(S)}return{objects:h,startOffset:n,endOffset:x}}function $0(t,n,s){let a=[],l=s>1?he.getULong(t,n):he.getCard16(t,n),h=s>1?4:2,d,B;if(l!==0){let w=he.getByte(t,n+h);d=n+(l+1)*w+h;let x=n+h+1;for(let C=0;C<l+1;C+=1)a.push(he.getOffset(t,x,w)),x+=w;B=d+a[l]}else B=n+h;return{offsets:a,startOffset:n,endOffset:B}}function eB(t,n,s,a,l,h){let d=h>1?he.getULong(s,a):he.getCard16(s,a),B=h>1?4:2,w=0;if(d!==0){let C=he.getByte(s,a+B);w=a+(d+1)*C+B}let x=he.getBytes(s,w+n[t],w+n[t+1]);return l&&(x=l(x)),x}function tB(t){let n="",a=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"];for(;;){let l=t.parseByte(),h=l>>4,d=l&15;if(h===15||(n+=a[h],d===15))break;n+=a[d]}return parseFloat(n)}function rB(t,n){let s,a,l,h;if(n===28)return s=t.parseByte(),a=t.parseByte(),s<<8|a;if(n===29)return s=t.parseByte(),a=t.parseByte(),l=t.parseByte(),h=t.parseByte(),s<<24|a<<16|l<<8|h;if(n===30)return tB(t);if(n>=32&&n<=246)return n-139;if(n>=247&&n<=250)return s=t.parseByte(),(n-247)*256+s+108;if(n>=251&&n<=254)return s=t.parseByte(),-(n-251)*256-s-108;throw new Error("Invalid b0 "+n)}function iB(t){let n={};for(let s=0;s<t.length;s+=1){let a=t[s][0],l=t[s][1],h;if(l.length===1?h=l[0]:h=l,Object.prototype.hasOwnProperty.call(n,a)&&!isNaN(n[a]))throw new Error("Object "+n+" already has key "+a);n[a]=h}return n}function Go(t,n,s,a){n=n!==void 0?n:0;let l=new he.Parser(t,n),h=[],d=[];s=s!==void 0?s:t.byteLength;let B=a<2?22:28;for(;l.relativeOffset<s;){let w=l.parseByte();if(w<B){if(w===12&&(w=1200+l.parseByte()),a>1&&w===23){uB(d);continue}h.push([w,d]),d=[]}else d.push(rB(l,w,a))}return iB(h)}function dn(t,n){return n<=390?n=hs[n]:t?n=t[n-391]:n=void 0,n}function Lo(t,n,s){let a={},l;for(let h=0;h<n.length;h+=1){let d=n[h];if(Array.isArray(d.type)){let B=[];B.length=d.type.length;for(let w=0;w<d.type.length;w++)l=t[d.op]!==void 0?t[d.op][w]:void 0,l===void 0&&(l=d.value!==void 0&&d.value[w]!==void 0?d.value[w]:null),d.type[w]==="SID"&&(l=dn(s,l)),B[w]=l;a[d.name]=B}else l=t[d.op],l===void 0&&(l=d.value!==void 0?d.value:null),d.type==="SID"&&(l=dn(s,l)),a[d.name]=l}return a}function nB(t,n){let s={};if(s.formatMajor=he.getCard8(t,n),s.formatMinor=he.getCard8(t,n+1),s.formatMajor>2)throw new Error(`Unsupported CFF table version ${s.formatMajor}.${s.formatMinor}`);return s.size=he.getCard8(t,n+2),s.formatMajor<2?(s.offsetSize=he.getCard8(t,n+3),s.startOffset=n,s.endOffset=n+4):(s.topDictLength=he.getCard16(t,n+3),s.endOffset=n+8),s}var Kl=[{name:"version",op:0,type:"SID"},{name:"notice",op:1,type:"SID"},{name:"copyright",op:1200,type:"SID"},{name:"fullName",op:2,type:"SID"},{name:"familyName",op:3,type:"SID"},{name:"weight",op:4,type:"SID"},{name:"isFixedPitch",op:1201,type:"number",value:0},{name:"italicAngle",op:1202,type:"number",value:0},{name:"underlinePosition",op:1203,type:"number",value:-100},{name:"underlineThickness",op:1204,type:"number",value:50},{name:"paintType",op:1205,type:"number",value:0},{name:"charstringType",op:1206,type:"number",value:2},{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"uniqueId",op:13,type:"number"},{name:"fontBBox",op:5,type:["number","number","number","number"],value:[0,0,0,0]},{name:"strokeWidth",op:1208,type:"number",value:0},{name:"xuid",op:14,type:[],value:null},{name:"charset",op:15,type:"offset",value:0},{name:"encoding",op:16,type:"offset",value:0},{name:"charStrings",op:17,type:"offset",value:0},{name:"private",op:18,type:["number","offset"],value:[0,0]},{name:"ros",op:1230,type:["SID","SID","number"]},{name:"cidFontVersion",op:1231,type:"number",value:0},{name:"cidFontRevision",op:1232,type:"number",value:0},{name:"cidFontType",op:1233,type:"number",value:0},{name:"cidCount",op:1234,type:"number",value:8720},{name:"uidBase",op:1235,type:"number"},{name:"fdArray",op:1236,type:"offset"},{name:"fdSelect",op:1237,type:"offset"},{name:"fontName",op:1238,type:"SID"}],$l=[{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"charStrings",op:17,type:"offset"},{name:"fdArray",op:1236,type:"offset"},{name:"fdSelect",op:1237,type:"offset"},{name:"vstore",op:24,type:"offset"}],ec=[{name:"subrs",op:19,type:"offset",value:0},{name:"defaultWidthX",op:20,type:"number",value:0},{name:"nominalWidthX",op:21,type:"number",value:0}],tc=[{name:"blueValues",op:6,type:"delta"},{name:"otherBlues",op:7,type:"delta"},{name:"familyBlues",op:7,type:"delta"},{name:"familyBlues",op:8,type:"delta"},{name:"familyOtherBlues",op:9,type:"delta"},{name:"blueScale",op:1209,type:"number",value:.039625},{name:"blueShift",op:1210,type:"number",value:7},{name:"blueFuzz",op:1211,type:"number",value:1},{name:"stdHW",op:10,type:"number"},{name:"stdVW",op:11,type:"number"},{name:"stemSnapH",op:1212,type:"number"},{name:"stemSnapV",op:1213,type:"number"},{name:"languageGroup",op:1217,type:"number",value:0},{name:"expansionFactor",op:1218,type:"number",value:.06},{name:"vsindex",op:22,type:"number",value:0},{name:"subrs",op:19,type:"offset"}],sB=[{name:"private",op:18,type:["number","offset"],value:[0,0]}];function oB(t,n,s,a){let l=Go(t,n,t.byteLength,a);return Lo(l,a>1?$l:Kl,s)}function Po(t,n,s,a,l){let h=Go(t,n,s,l);return Lo(h,l>1?tc:ec,a)}function aB(t,n,s){let a=Go(t,n,void 0,s);return Lo(a,sB)}function AB(t,n,s){let a=[];for(let l=0;l<s.length;l++){let h=new DataView(new Uint8Array(s[l]).buffer),d=aB(h,0,2),B=d.private[0],w=d.private[1];if(B!==0&&w!==0){let x=Po(t,w+n,B,[],2);if(x.subrs){let C=w+x.subrs,S=gr(t,C+n,void 0,2);d._subrs=S.objects,d._subrsBias=ds(d._subrs)}d._privateDict=x}a.push(d)}return a}function Ho(t,n,s,a,l){let h=[];for(let d=0;d<s.length;d+=1){let B=new DataView(new Uint8Array(s[d]).buffer),w=oB(B,0,a,l);w._subrs=[],w._subrsBias=0,w._defaultWidthX=0,w._nominalWidthX=0;let x=l<2?w.private[0]:0,C=l<2?w.private[1]:0;if(x!==0&&C!==0){let S=Po(t,C+n,x,a,l);if(w._defaultWidthX=S.defaultWidthX,w._nominalWidthX=S.nominalWidthX,S.subrs!==0){let T=C+S.subrs,Y=gr(t,T+n,void 0,l);w._subrs=Y.objects,w._subrsBias=ds(w._subrs)}w._privateDict=S}h.push(w)}return h}function lB(t,n,s,a,l){let h,d,B=new he.Parser(t,n);s-=1;let w=[".notdef"],x=B.parseCard8();if(x===0)for(let C=0;C<s;C+=1)h=B.parseSID(),l?w.push(h):w.push(dn(a,h)||h);else if(x===1)for(;w.length<=s;){h=B.parseSID(),d=B.parseCard8();for(let C=0;C<=d;C+=1)l?w.push("cid"+("00000"+h).slice(-5)):w.push(dn(a,h)||h),h+=1}else if(x===2)for(;w.length<=s;){h=B.parseSID(),d=B.parseCard16();for(let C=0;C<=d;C+=1)l?w.push("cid"+("00000"+h).slice(-5)):w.push(dn(a,h)||h),h+=1}else throw new Error("Unknown charset format "+x);return w}function cB(t,n){let s,a={},l=new he.Parser(t,n),h=l.parseCard8();if(h===0){let d=l.parseCard8();for(let B=0;B<d;B+=1)s=l.parseCard8(),a[s]=B}else if(h===1){let d=l.parseCard8();s=1;for(let B=0;B<d;B+=1){let w=l.parseCard8(),x=l.parseCard8();for(let C=w;C<=w+x;C+=1)a[C]=s,s+=1}}else throw new Error("Unknown encoding format "+h);return a}function uB(t){let n=t.pop();for(;t.length>n;)t.pop()}function rc(t,n){let s=t.tables.cff&&t.tables.cff.topDict&&t.tables.cff.topDict.paintType||0;return s===2&&(n.fill=null,n.stroke="black",n.strokeWidth=t.tables.cff.topDict.strokeWidth||0),s}function Wo(t,n,s,a,l){let h,d,B,w,x=new z,C=[],S=0,T=!1,Y=!1,U=0,L=0,ee,Te,xe,Re,Je=0,$e=[],nt,st=0,Bt=t.tables.cff2||t.tables.cff;if(xe=Bt.topDict._defaultWidthX,Re=Bt.topDict._nominalWidthX,l=l||t.variation&&t.variation.get(),n.getBlendPath||(n.getBlendPath=function(we){return Wo(t,n,s,a,we)}),t.isCIDFont||a>1){let we=Bt.topDict._fdSelect?Bt.topDict._fdSelect[n.index]:0,Ce=Bt.topDict._fdArray[we];ee=Ce._subrs,Te=Ce._subrsBias,a>1?($e=Bt.topDict._vstore.itemVariationStore,Je=Ce._privateDict.vsindex):(xe=Ce._defaultWidthX,Re=Ce._nominalWidthX)}else ee=Bt.topDict._subrs,Te=Bt.topDict._subrsBias;let sr=rc(t,x),Ve=xe;function Vt(we,Ce){Y&&sr!==2&&x.closePath(),x.moveTo(we,Ce),Y=!0}function Dt(){let we;we=(C.length&1)!==0,we&&!T&&(Ve=C.shift()+Re),S+=C.length>>1,C.length=0,T=!0}function Se(we){let Ce,vt,$r,Qs,mi,or,Mt,Xt,It,jt,Ut,kt,gt=0;for(;gt<we.length;){let qt=we[gt];switch(gt+=1,qt){case 1:Dt();break;case 3:Dt();break;case 4:C.length>1&&!T&&(Ve=C.shift()+Re,T=!0),L+=C.pop(),Vt(U,L);break;case 5:for(;C.length>0;)U+=C.shift(),L+=C.shift(),x.lineTo(U,L);break;case 6:for(;C.length>0&&(U+=C.shift(),x.lineTo(U,L),C.length!==0);)L+=C.shift(),x.lineTo(U,L);break;case 7:for(;C.length>0&&(L+=C.shift(),x.lineTo(U,L),C.length!==0);)U+=C.shift(),x.lineTo(U,L);break;case 8:for(;C.length>0;)h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+C.shift(),x.curveTo(h,d,B,w,U,L);break;case 10:if(mi=C.pop()+Te,or=ee[mi],or){if(st>=ql){console.warn("CFF charstring subroutine call depth exceeded, skipping callsubr");break}st++,Se(or),st--}break;case 11:if(a>1){console.error("CFF CharString operator return (11) is not supported in CFF2");break}return;case 12:switch(qt=we[gt],gt+=1,qt){case 35:h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),Mt=B+C.shift(),Xt=w+C.shift(),It=Mt+C.shift(),jt=Xt+C.shift(),Ut=It+C.shift(),kt=jt+C.shift(),U=Ut+C.shift(),L=kt+C.shift(),C.shift(),x.curveTo(h,d,B,w,Mt,Xt),x.curveTo(It,jt,Ut,kt,U,L);break;case 34:h=U+C.shift(),d=L,B=h+C.shift(),w=d+C.shift(),Mt=B+C.shift(),Xt=w,It=Mt+C.shift(),jt=w,Ut=It+C.shift(),kt=L,U=Ut+C.shift(),x.curveTo(h,d,B,w,Mt,Xt),x.curveTo(It,jt,Ut,kt,U,L);break;case 36:h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),Mt=B+C.shift(),Xt=w,It=Mt+C.shift(),jt=w,Ut=It+C.shift(),kt=jt+C.shift(),U=Ut+C.shift(),x.curveTo(h,d,B,w,Mt,Xt),x.curveTo(It,jt,Ut,kt,U,L);break;case 37:h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),Mt=B+C.shift(),Xt=w+C.shift(),It=Mt+C.shift(),jt=Xt+C.shift(),Ut=It+C.shift(),kt=jt+C.shift(),Math.abs(Ut-U)>Math.abs(kt-L)?U=Ut+C.shift():L=kt+C.shift(),x.curveTo(h,d,B,w,Mt,Xt),x.curveTo(It,jt,Ut,kt,U,L);break;default:console.log("Glyph "+n.index+": unknown operator 1200"+qt),C.length=0}break;case 14:if(a>1){console.error("CFF CharString operator endchar (14) is not supported in CFF2");break}if(C.length>=4){let Bi=Oo[C.pop()],Ri=Oo[C.pop()],vs=C.pop(),Is=C.pop();if(Bi&&Ri){n.isComposite=!0,n.components=[];let mu=t.cffEncoding.charset.indexOf(Bi),Bu=t.cffEncoding.charset.indexOf(Ri);n.components.push({glyphIndex:Bu,dx:0,dy:0}),n.components.push({glyphIndex:mu,dx:Is,dy:vs}),x.extend(t.glyphs.get(Bu).path);let Zy=t.glyphs.get(mu),aa=JSON.parse(JSON.stringify(Zy.path.commands));for(let Aa=0;Aa<aa.length;Aa+=1){let Br=aa[Aa];Br.type!=="Z"&&(Br.x+=Is,Br.y+=vs),(Br.type==="Q"||Br.type==="C")&&(Br.x1+=Is,Br.y1+=vs),Br.type==="C"&&(Br.x2+=Is,Br.y2+=vs)}x.extend(aa)}}else C.length>0&&!T&&(Ve=C.shift()+Re,T=!0);Y&&sr!==2&&(x.closePath(),Y=!1);break;case 15:if(a<2){console.error("CFF2 CharString operator vsindex (15) is not supported in CFF");break}Je=C.pop();break;case 16:if(a<2){console.error("CFF2 CharString operator blend (16) is not supported in CFF");break}nt||(nt=t.variation&&l&&t.variation.process.getBlendVector($e,Je,l));var ot=C.pop(),Nt=nt?nt.length:$e.itemVariationSubtables[Je].regionIndexes.length,zt=ot*Nt,ar=C.length-zt,Mr=ar-ot;if(nt)for(let Bi=0;Bi<ot;Bi++){var gu=C[Mr+Bi];for(let Ri=0;Ri<Nt;Ri++)gu+=nt[Ri]*C[ar++];C[Mr+Bi]=gu}for(;zt--;)C.pop();break;case 18:Dt();break;case 19:case 20:Dt(),gt+=S+7>>3;break;case 21:C.length>2&&!T&&(Ve=C.shift()+Re,T=!0),L+=C.pop(),U+=C.pop(),Vt(U,L);break;case 22:C.length>1&&!T&&(Ve=C.shift()+Re,T=!0),U+=C.pop(),Vt(U,L);break;case 23:Dt();break;case 24:for(;C.length>2;)h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+C.shift(),x.curveTo(h,d,B,w,U,L);U+=C.shift(),L+=C.shift(),x.lineTo(U,L);break;case 25:for(;C.length>6;)U+=C.shift(),L+=C.shift(),x.lineTo(U,L);h=U+C.shift(),d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+C.shift(),x.curveTo(h,d,B,w,U,L);break;case 26:for(C.length&1&&(U+=C.shift());C.length>0;)h=U,d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B,L=w+C.shift(),x.curveTo(h,d,B,w,U,L);break;case 27:for(C.length&1&&(L+=C.shift());C.length>0;)h=U+C.shift(),d=L,B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w,x.curveTo(h,d,B,w,U,L);break;case 28:Ce=we[gt],vt=we[gt+1],C.push((Ce<<24|vt<<16)>>16),gt+=2;break;case 29:if(mi=C.pop()+t.gsubrsBias,or=t.gsubrs[mi],or){if(st>=ql){console.warn("CFF charstring subroutine call depth exceeded, skipping callgsubr");break}st++,Se(or),st--}break;case 30:for(;C.length>0&&(h=U,d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+(C.length===1?C.shift():0),x.curveTo(h,d,B,w,U,L),C.length!==0);)h=U+C.shift(),d=L,B=h+C.shift(),w=d+C.shift(),L=w+C.shift(),U=B+(C.length===1?C.shift():0),x.curveTo(h,d,B,w,U,L);break;case 31:for(;C.length>0&&(h=U+C.shift(),d=L,B=h+C.shift(),w=d+C.shift(),L=w+C.shift(),U=B+(C.length===1?C.shift():0),x.curveTo(h,d,B,w,U,L),C.length!==0);)h=U,d=L+C.shift(),B=h+C.shift(),w=d+C.shift(),U=B+C.shift(),L=w+(C.length===1?C.shift():0),x.curveTo(h,d,B,w,U,L);break;default:qt<32?console.log("Glyph "+n.index+": unknown operator "+qt):qt<247?C.push(qt-139):qt<251?(Ce=we[gt],gt+=1,C.push((qt-247)*256+Ce+108)):qt<255?(Ce=we[gt],gt+=1,C.push(-(qt-251)*256-Ce-108)):(Ce=we[gt],vt=we[gt+1],$r=we[gt+2],Qs=we[gt+3],gt+=4,C.push((Ce<<24|vt<<16|$r<<8|Qs)/65536))}}}return Se(s),t.variation&&l&&(x.commands=x.commands.map(we=>{let Ce=Object.keys(we);for(let vt=0;vt<Ce.length;vt++){let $r=Ce[vt];$r!=="type"&&(we[$r]=Math.round(we[$r]))}return we})),T&&(n.advanceWidth=Ve),x}function ic(t,n,s,a,l){let h=[],d,B=new he.Parser(t,n),w=B.parseCard8();if(w===0)for(let x=0;x<s;x++){if(d=B.parseCard8(),d>=a)throw new Error("CFF table CID Font FDSelect has bad FD index value "+d+" (FD count "+a+")");h.push(d)}else if(w===3||l>1&&w===4){let x=w===4?B.parseULong():B.parseCard16(),C=w===4?B.parseULong():B.parseCard16();if(C!==0)throw new Error(`CFF Table CID Font FDSelect format ${w} range has bad initial GID ${C}`);let S;for(let T=0;T<x;T++){if(d=w===4?B.parseUShort():B.parseCard8(),S=w===4?B.parseULong():B.parseCard16(),d>=a)throw new Error("CFF table CID Font FDSelect has bad FD index value "+d+" (FD count "+a+")");if(S>s)throw new Error(`CFF Table CID Font FDSelect format ${l} range has bad GID ${S}`);for(;C<S;C++)h.push(d);C=S}if(S!==s)throw new Error("CFF Table CID Font FDSelect format 3 range has bad final (Sentinal) GID "+S)}else throw new Error("CFF Table CID Font FDSelect table has unsupported format "+w);return h}function hB(t,n,s,a){let l,h=nB(t,n);h.formatMajor===2?l=s.tables.cff2={}:l=s.tables.cff={};let d=h.formatMajor>1?null:gr(t,h.endOffset,he.bytesToString),B=h.formatMajor>1?null:gr(t,d.endOffset),w=h.formatMajor>1?null:gr(t,B.endOffset,he.bytesToString),x=gr(t,h.formatMajor>1?n+h.size+h.topDictLength:w.endOffset,void 0,h.formatMajor);s.gsubrs=x.objects,s.gsubrsBias=ds(s.gsubrs);let C;if(h.formatMajor>1){let T=n+h.size,Y=he.getBytes(t,T,T+h.topDictLength);C=Ho(t,0,[Y],void 0,h.formatMajor)[0]}else{let T=Ho(t,n,B.objects,w.objects,h.formatMajor);if(T.length!==1)throw new Error("CFF table has too many fonts in 'FontSet' - count of fonts NameIndex.length = "+T.length);C=T[0]}if(l.topDict=C,C._privateDict&&(s.defaultWidthX=C._privateDict.defaultWidthX,s.nominalWidthX=C._privateDict.nominalWidthX),h.formatMajor<2&&C.ros[0]!==void 0&&C.ros[1]!==void 0&&(s.isCIDFont=!0),h.formatMajor>1){let T=C.fdArray,Y=C.fdSelect;if(!T)throw new Error("This is a CFF2 font, but FDArray information is missing");let U=gr(t,n+T,null,h.formatMajor),L=AB(t,n,U.objects);C._fdArray=L,Y&&(C._fdSelect=ic(t,n+Y,s.numGlyphs,L.length,h.formatMajor))}else if(s.isCIDFont){let T=C.fdArray,Y=C.fdSelect;if(T===0||Y===0)throw new Error("Font is marked as a CID font, but FDArray and/or FDSelect information is missing");T+=n;let U=gr(t,T),L=Ho(t,n,U.objects,w.objects,h.formatMajor);C._fdArray=L,Y+=n,C._fdSelect=ic(t,Y,s.numGlyphs,L.length,h.formatMajor)}if(h.formatMajor<2){let T=n+C.private[1],Y=Po(t,T,C.private[0],w.objects,h.formatMajor);if(s.defaultWidthX=Y.defaultWidthX,s.nominalWidthX=Y.nominalWidthX,Y.subrs!==0){let U=T+Y.subrs,L=gr(t,U);s.subrs=L.objects,s.subrsBias=ds(s.subrs)}else s.subrs=[],s.subrsBias=0}let S;if(a.lowMemory?(S=$0(t,n+C.charStrings,h.formatMajor),s.nGlyphs=S.offsets.length-(h.formatMajor>1?1:0)):(S=gr(t,n+C.charStrings,null,h.formatMajor),s.nGlyphs=S.objects.length),h.formatMajor>1&&s.tables.maxp&&s.nGlyphs!==s.tables.maxp.numGlyphs&&console.error(`Glyph count in the CFF2 table (${s.nGlyphs}) must correspond to the glyph count in the maxp table (${s.tables.maxp.numGlyphs})`),h.formatMajor<2){let T=[],Y=[];C.charset===0?T=N0:C.charset===1?T=R0:C.charset===2?T=G0:T=lB(t,n+C.charset,s.nGlyphs,w.objects,s.isCIDFont),C.encoding===0?Y=Oo:C.encoding===1?Y=L0:Y=cB(t,n+C.encoding),s.cffEncoding=new jl(Y,T),s.encoding=s.encoding||s.cffEncoding}if(s.glyphs=new dr.GlyphSet(s),a.lowMemory)s._push=function(T){let Y=eB(T,S.offsets,t,n+C.charStrings,void 0,h.formatMajor);s.glyphs.push(T,dr.cffGlyphLoader(s,T,Wo,Y,h.formatMajor))};else for(let T=0;T<s.nGlyphs;T+=1){let Y=S.objects[T];s.glyphs.push(T,dr.cffGlyphLoader(s,T,Wo,Y,h.formatMajor))}if(C.vstore){let T=new he.Parser(t,n+C.vstore);C._vstore=T.parseVariationStore()}}function nc(t,n){let s,a=hs.indexOf(t);return a>=0&&(s=a),a=n.indexOf(t),a>=0?s=a+hs.length:(s=hs.length+n.length,n.push(t)),s}function fB(){return new $.Record("Header",[{name:"major",type:"Card8",value:1},{name:"minor",type:"Card8",value:0},{name:"hdrSize",type:"Card8",value:4},{name:"major",type:"Card8",value:1}])}function pB(t){let n=new $.Record("Name INDEX",[{name:"names",type:"INDEX",value:[]}]);n.names=[];for(let s=0;s<t.length;s+=1)n.names.push({name:"name_"+s,type:"NAME",value:t[s]});return n}function sc(t,n,s){let a={};for(let l=0;l<t.length;l+=1){let h=t[l],d=n[h.name];d!==void 0&&!zl(d,h.value)&&(h.type==="SID"&&(d=nc(d,s)),a[h.op]={name:h.name,type:h.type,value:d})}return a}function oc(t,n,s){let a=new $.Record("Top DICT",[{name:"dict",type:"DICT",value:{}}]);return a.dict=sc(s>1?$l:Kl,t,n),a}function ac(t){let n=new $.Record("Top DICT INDEX",[{name:"topDicts",type:"INDEX",value:[]}]);return n.topDicts=[{name:"topDict_0",type:"TABLE",value:t}],n}function dB(t){let n=new $.Record("String INDEX",[{name:"strings",type:"INDEX",value:[]}]);n.strings=[];for(let s=0;s<t.length;s+=1)n.strings.push({name:"string_"+s,type:"STRING",value:t[s]});return n}function gB(){return new $.Record("Global Subr INDEX",[{name:"subrs",type:"INDEX",value:[]}])}function mB(t,n){let s=new $.Record("Charsets",[{name:"format",type:"Card8",value:0}]);for(let a=0;a<t.length;a+=1){let l=t[a],h=nc(l,n);s.fields.push({name:"glyph_"+a,type:"SID",value:h})}return s}function BB(t,n){let s=[],a=t.path;n<2&&s.push({name:"width",type:"NUMBER",value:t.advanceWidth});let l=0,h=0;for(let d=0;d<a.commands.length;d+=1){let B,w,x=a.commands[d];if(x.type==="Q"){let C=.3333333333333333,S=2/3;x={type:"C",x:x.x,y:x.y,x1:Math.round(C*l+S*x.x1),y1:Math.round(C*h+S*x.y1),x2:Math.round(C*x.x+S*x.x1),y2:Math.round(C*x.y+S*x.y1)}}if(x.type==="M")B=Math.round(x.x-l),w=Math.round(x.y-h),s.push({name:"dx",type:"NUMBER",value:B}),s.push({name:"dy",type:"NUMBER",value:w}),s.push({name:"rmoveto",type:"OP",value:21}),l=Math.round(x.x),h=Math.round(x.y);else if(x.type==="L")B=Math.round(x.x-l),w=Math.round(x.y-h),s.push({name:"dx",type:"NUMBER",value:B}),s.push({name:"dy",type:"NUMBER",value:w}),s.push({name:"rlineto",type:"OP",value:5}),l=Math.round(x.x),h=Math.round(x.y);else if(x.type==="C"){let C=Math.round(x.x1-l),S=Math.round(x.y1-h),T=Math.round(x.x2-x.x1),Y=Math.round(x.y2-x.y1);B=Math.round(x.x-x.x2),w=Math.round(x.y-x.y2),s.push({name:"dx1",type:"NUMBER",value:C}),s.push({name:"dy1",type:"NUMBER",value:S}),s.push({name:"dx2",type:"NUMBER",value:T}),s.push({name:"dy2",type:"NUMBER",value:Y}),s.push({name:"dx",type:"NUMBER",value:B}),s.push({name:"dy",type:"NUMBER",value:w}),s.push({name:"rrcurveto",type:"OP",value:8}),l=Math.round(x.x),h=Math.round(x.y)}}return n<2&&s.push({name:"endchar",type:"OP",value:14}),s}function EB(t,n){let s=new $.Record("CharStrings INDEX",[{name:"charStrings",type:"INDEX",value:[]}]);for(let a=0;a<t.length;a+=1){let l=t.get(a),h=BB(l,n);s.charStrings.push({name:l.name,type:"CHARSTRING",value:h})}return s}function wB(t,n,s){let a=new $.Record("Private DICT",[{name:"dict",type:"DICT",value:{}}]);return a.dict=sc(s>1?tc:ec,t,n),a}function yB(t,n){let a=new $.Table("CFF ",[{name:"header",type:"RECORD"},{name:"nameIndex",type:"RECORD"},{name:"topDictIndex",type:"RECORD"},{name:"stringIndex",type:"RECORD"},{name:"globalSubrIndex",type:"RECORD"},{name:"charsets",type:"RECORD"},{name:"charStringsIndex",type:"RECORD"},{name:"privateDict",type:"RECORD"}]),l=1/n.unitsPerEm,h={version:n.version,fullName:n.fullName,familyName:n.familyName,weight:n.weightName,fontBBox:n.fontBBox||[0,0,0,0],fontMatrix:[l,0,0,l,0,0],charset:999,encoding:0,charStrings:999,private:[0,999]},d=n&&n.topDict||{};d.paintType&&(h.paintType=d.paintType,h.strokeWidth=d.strokeWidth||0);let B={},w=[],x;for(let Y=1;Y<t.length;Y+=1)x=t.get(Y),w.push(x.name);let C=[];a.header=fB(),a.nameIndex=pB([n.postScriptName]);let S=oc(h,C);a.topDictIndex=ac(S),a.globalSubrIndex=gB(),a.charsets=mB(w,C),a.charStringsIndex=EB(t,1),a.privateDict=wB(B,C),a.stringIndex=dB(C);let T=a.header.sizeOf()+a.nameIndex.sizeOf()+a.topDictIndex.sizeOf()+a.stringIndex.sizeOf()+a.globalSubrIndex.sizeOf();return h.charset=T,h.encoding=0,h.charStrings=h.charset+a.charsets.sizeOf(),h.private[1]=h.charStrings+a.charStringsIndex.sizeOf(),S=oc(h,C),a.topDictIndex=ac(S),a}var Jo={parse:hB,make:yB};function CB(t,n){let s={},a=new he.Parser(t,n);return s.version=a.parseVersion(),s.fontRevision=Math.round(a.parseFixed()*1e3)/1e3,s.checkSumAdjustment=a.parseULong(),s.magicNumber=a.parseULong(),G.argument(s.magicNumber===1594834165,"Font header has wrong magic number."),s.flags=a.parseUShort(),s.unitsPerEm=a.parseUShort(),s.created=a.parseLongDateTime(),s.modified=a.parseLongDateTime(),s.xMin=a.parseShort(),s.yMin=a.parseShort(),s.xMax=a.parseShort(),s.yMax=a.parseShort(),s.macStyle=a.parseUShort(),s.lowestRecPPEM=a.parseUShort(),s.fontDirectionHint=a.parseShort(),s.indexToLocFormat=a.parseShort(),s.glyphDataFormat=a.parseShort(),s}function bB(t){let n=Math.round(new Date().getTime()/1e3)+2082844800,s=n,a=t.macStyle||0;return t.createdTimestamp&&(s=t.createdTimestamp+2082844800),new $.Table("head",[{name:"version",type:"FIXED",value:65536},{name:"fontRevision",type:"FIXED",value:65536},{name:"checkSumAdjustment",type:"ULONG",value:0},{name:"magicNumber",type:"ULONG",value:1594834165},{name:"flags",type:"USHORT",value:0},{name:"unitsPerEm",type:"USHORT",value:1e3},{name:"created",type:"LONGDATETIME",value:s},{name:"modified",type:"LONGDATETIME",value:n},{name:"xMin",type:"SHORT",value:0},{name:"yMin",type:"SHORT",value:0},{name:"xMax",type:"SHORT",value:0},{name:"yMax",type:"SHORT",value:0},{name:"macStyle",type:"USHORT",value:a},{name:"lowestRecPPEM",type:"USHORT",value:0},{name:"fontDirectionHint",type:"SHORT",value:2},{name:"indexToLocFormat",type:"SHORT",value:0},{name:"glyphDataFormat",type:"SHORT",value:0}],t)}var Ac={parse:CB,make:bB};function xB(t,n){let s={},a=new he.Parser(t,n);return s.version=a.parseVersion(),s.ascender=a.parseShort(),s.descender=a.parseShort(),s.lineGap=a.parseShort(),s.advanceWidthMax=a.parseUShort(),s.minLeftSideBearing=a.parseShort(),s.minRightSideBearing=a.parseShort(),s.xMaxExtent=a.parseShort(),s.caretSlopeRise=a.parseShort(),s.caretSlopeRun=a.parseShort(),s.caretOffset=a.parseShort(),a.relativeOffset+=8,s.metricDataFormat=a.parseShort(),s.numberOfHMetrics=a.parseUShort(),s}function QB(t){return new $.Table("hhea",[{name:"version",type:"FIXED",value:65536},{name:"ascender",type:"FWORD",value:0},{name:"descender",type:"FWORD",value:0},{name:"lineGap",type:"FWORD",value:0},{name:"advanceWidthMax",type:"UFWORD",value:0},{name:"minLeftSideBearing",type:"FWORD",value:0},{name:"minRightSideBearing",type:"FWORD",value:0},{name:"xMaxExtent",type:"FWORD",value:0},{name:"caretSlopeRise",type:"SHORT",value:1},{name:"caretSlopeRun",type:"SHORT",value:0},{name:"caretOffset",type:"SHORT",value:0},{name:"reserved1",type:"SHORT",value:0},{name:"reserved2",type:"SHORT",value:0},{name:"reserved3",type:"SHORT",value:0},{name:"reserved4",type:"SHORT",value:0},{name:"metricDataFormat",type:"SHORT",value:0},{name:"numberOfHMetrics",type:"USHORT",value:0}],t)}var lc={parse:xB,make:QB};function vB(t,n,s,a,l){let h,d,B=new he.Parser(t,n);for(let w=0;w<a;w+=1){w<s&&(h=B.parseUShort(),d=B.parseShort());let x=l.get(w);x.advanceWidth=h,x.leftSideBearing=d}}function IB(t,n,s,a,l){t._hmtxTableData={};let h,d,B=new he.Parser(n,s);for(let w=0;w<l;w+=1)w<a&&(h=B.parseUShort(),d=B.parseShort()),t._hmtxTableData[w]={advanceWidth:h,leftSideBearing:d}}function FB(t,n,s,a,l,h,d){d.lowMemory?IB(t,n,s,a,l):vB(n,s,a,l,h)}function TB(t){let n=new $.Table("hmtx",[]);for(let s=0;s<t.length;s+=1){let a=t.get(s),l=a.advanceWidth||0,h=a.leftSideBearing||0;n.fields.push({name:"advanceWidth_"+s,type:"USHORT",value:l}),n.fields.push({name:"leftSideBearing_"+s,type:"SHORT",value:h})}return n}var cc={parse:FB,make:TB};function SB(t){let n=new $.Table("ltag",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"numTags",type:"ULONG",value:t.length}]),s="",a=12+t.length*4;for(let l=0;l<t.length;++l){let h=s.indexOf(t[l]);h<0&&(h=s.length,s+=t[l]),n.fields.push({name:"offset "+l,type:"USHORT",value:a+h}),n.fields.push({name:"length "+l,type:"USHORT",value:t[l].length})}return n.fields.push({name:"stringPool",type:"CHARARRAY",value:s}),n}function DB(t,n){let s=new he.Parser(t,n),a=s.parseULong();G.argument(a===1,"Unsupported ltag table version."),s.skip("uLong",1);let l=s.parseULong(),h=[];for(let d=0;d<l;d++){let B="",w=n+s.parseUShort(),x=s.parseUShort();for(let C=w;C<w+x;++C)B+=String.fromCharCode(t.getInt8(C));h.push(B)}return h}var uc={make:SB,parse:DB};function MB(t,n){let s={},a=new he.Parser(t,n);return s.version=a.parseVersion(),s.numGlyphs=a.parseUShort(),s.version===1&&(s.maxPoints=a.parseUShort(),s.maxContours=a.parseUShort(),s.maxCompositePoints=a.parseUShort(),s.maxCompositeContours=a.parseUShort(),s.maxZones=a.parseUShort(),s.maxTwilightPoints=a.parseUShort(),s.maxStorage=a.parseUShort(),s.maxFunctionDefs=a.parseUShort(),s.maxInstructionDefs=a.parseUShort(),s.maxStackElements=a.parseUShort(),s.maxSizeOfInstructions=a.parseUShort(),s.maxComponentElements=a.parseUShort(),s.maxComponentDepth=a.parseUShort()),s}function UB(t){return new $.Table("maxp",[{name:"version",type:"FIXED",value:20480},{name:"numGlyphs",type:"USHORT",value:t}])}var hc={parse:MB,make:UB},Vo=[{begin:0,end:127},{begin:128,end:255},{begin:256,end:383},{begin:384,end:591},{begin:592,end:687},{begin:688,end:767},{begin:768,end:879},{begin:880,end:1023},{begin:11392,end:11519},{begin:1024,end:1279},{begin:1328,end:1423},{begin:1424,end:1535},{begin:42240,end:42559},{begin:1536,end:1791},{begin:1984,end:2047},{begin:2304,end:2431},{begin:2432,end:2559},{begin:2560,end:2687},{begin:2688,end:2815},{begin:2816,end:2943},{begin:2944,end:3071},{begin:3072,end:3199},{begin:3200,end:3327},{begin:3328,end:3455},{begin:3584,end:3711},{begin:3712,end:3839},{begin:4256,end:4351},{begin:6912,end:7039},{begin:4352,end:4607},{begin:7680,end:7935},{begin:7936,end:8191},{begin:8192,end:8303},{begin:8304,end:8351},{begin:8352,end:8399},{begin:8400,end:8447},{begin:8448,end:8527},{begin:8528,end:8591},{begin:8592,end:8703},{begin:8704,end:8959},{begin:8960,end:9215},{begin:9216,end:9279},{begin:9280,end:9311},{begin:9312,end:9471},{begin:9472,end:9599},{begin:9600,end:9631},{begin:9632,end:9727},{begin:9728,end:9983},{begin:9984,end:10175},{begin:12288,end:12351},{begin:12352,end:12447},{begin:12448,end:12543},{begin:12544,end:12591},{begin:12592,end:12687},{begin:43072,end:43135},{begin:12800,end:13055},{begin:13056,end:13311},{begin:44032,end:55215},{begin:55296,end:57343},{begin:67840,end:67871},{begin:19968,end:40959},{begin:57344,end:63743},{begin:12736,end:12783},{begin:64256,end:64335},{begin:64336,end:65023},{begin:65056,end:65071},{begin:65040,end:65055},{begin:65104,end:65135},{begin:65136,end:65279},{begin:65280,end:65519},{begin:65520,end:65535},{begin:3840,end:4095},{begin:1792,end:1871},{begin:1920,end:1983},{begin:3456,end:3583},{begin:4096,end:4255},{begin:4608,end:4991},{begin:5024,end:5119},{begin:5120,end:5759},{begin:5760,end:5791},{begin:5792,end:5887},{begin:6016,end:6143},{begin:6144,end:6319},{begin:10240,end:10495},{begin:40960,end:42127},{begin:5888,end:5919},{begin:66304,end:66351},{begin:66352,end:66383},{begin:66560,end:66639},{begin:118784,end:119039},{begin:119808,end:120831},{begin:1044480,end:1048573},{begin:65024,end:65039},{begin:917504,end:917631},{begin:6400,end:6479},{begin:6480,end:6527},{begin:6528,end:6623},{begin:6656,end:6687},{begin:11264,end:11359},{begin:11568,end:11647},{begin:19904,end:19967},{begin:43008,end:43055},{begin:65536,end:65663},{begin:65856,end:65935},{begin:66432,end:66463},{begin:66464,end:66527},{begin:66640,end:66687},{begin:66688,end:66735},{begin:67584,end:67647},{begin:68096,end:68191},{begin:119552,end:119647},{begin:73728,end:74751},{begin:119648,end:119679},{begin:7040,end:7103},{begin:7168,end:7247},{begin:7248,end:7295},{begin:43136,end:43231},{begin:43264,end:43311},{begin:43312,end:43359},{begin:43520,end:43615},{begin:65936,end:65999},{begin:66e3,end:66047},{begin:66208,end:66271},{begin:127024,end:127135}];function kB(t){for(let n=0;n<Vo.length;n+=1){let s=Vo[n];if(t>=s.begin&&t<s.end)return n}return-1}function YB(t,n){let s={},a=new he.Parser(t,n);s.version=a.parseUShort(),s.xAvgCharWidth=a.parseShort(),s.usWeightClass=a.parseUShort(),s.usWidthClass=a.parseUShort(),s.fsType=a.parseUShort(),s.ySubscriptXSize=a.parseShort(),s.ySubscriptYSize=a.parseShort(),s.ySubscriptXOffset=a.parseShort(),s.ySubscriptYOffset=a.parseShort(),s.ySuperscriptXSize=a.parseShort(),s.ySuperscriptYSize=a.parseShort(),s.ySuperscriptXOffset=a.parseShort(),s.ySuperscriptYOffset=a.parseShort(),s.yStrikeoutSize=a.parseShort(),s.yStrikeoutPosition=a.parseShort(),s.sFamilyClass=a.parseShort(),s.panose=[];for(let l=0;l<10;l++)s.panose[l]=a.parseByte();return s.ulUnicodeRange1=a.parseULong(),s.ulUnicodeRange2=a.parseULong(),s.ulUnicodeRange3=a.parseULong(),s.ulUnicodeRange4=a.parseULong(),s.achVendID=String.fromCharCode(a.parseByte(),a.parseByte(),a.parseByte(),a.parseByte()),s.fsSelection=a.parseUShort(),s.usFirstCharIndex=a.parseUShort(),s.usLastCharIndex=a.parseUShort(),s.sTypoAscender=a.parseShort(),s.sTypoDescender=a.parseShort(),s.sTypoLineGap=a.parseShort(),s.usWinAscent=a.parseUShort(),s.usWinDescent=a.parseUShort(),s.version>=1&&(s.ulCodePageRange1=a.parseULong(),s.ulCodePageRange2=a.parseULong()),s.version>=2&&(s.sxHeight=a.parseShort(),s.sCapHeight=a.parseShort(),s.usDefaultChar=a.parseUShort(),s.usBreakChar=a.parseUShort(),s.usMaxContent=a.parseUShort()),s}function OB(t){return new $.Table("OS/2",[{name:"version",type:"USHORT",value:3},{name:"xAvgCharWidth",type:"SHORT",value:0},{name:"usWeightClass",type:"USHORT",value:0},{name:"usWidthClass",type:"USHORT",value:0},{name:"fsType",type:"USHORT",value:0},{name:"ySubscriptXSize",type:"SHORT",value:650},{name:"ySubscriptYSize",type:"SHORT",value:699},{name:"ySubscriptXOffset",type:"SHORT",value:0},{name:"ySubscriptYOffset",type:"SHORT",value:140},{name:"ySuperscriptXSize",type:"SHORT",value:650},{name:"ySuperscriptYSize",type:"SHORT",value:699},{name:"ySuperscriptXOffset",type:"SHORT",value:0},{name:"ySuperscriptYOffset",type:"SHORT",value:479},{name:"yStrikeoutSize",type:"SHORT",value:49},{name:"yStrikeoutPosition",type:"SHORT",value:258},{name:"sFamilyClass",type:"SHORT",value:0},{name:"bFamilyType",type:"BYTE",value:0},{name:"bSerifStyle",type:"BYTE",value:0},{name:"bWeight",type:"BYTE",value:0},{name:"bProportion",type:"BYTE",value:0},{name:"bContrast",type:"BYTE",value:0},{name:"bStrokeVariation",type:"BYTE",value:0},{name:"bArmStyle",type:"BYTE",value:0},{name:"bLetterform",type:"BYTE",value:0},{name:"bMidline",type:"BYTE",value:0},{name:"bXHeight",type:"BYTE",value:0},{name:"ulUnicodeRange1",type:"ULONG",value:0},{name:"ulUnicodeRange2",type:"ULONG",value:0},{name:"ulUnicodeRange3",type:"ULONG",value:0},{name:"ulUnicodeRange4",type:"ULONG",value:0},{name:"achVendID",type:"CHARARRAY",value:"XXXX"},{name:"fsSelection",type:"USHORT",value:0},{name:"usFirstCharIndex",type:"USHORT",value:0},{name:"usLastCharIndex",type:"USHORT",value:0},{name:"sTypoAscender",type:"SHORT",value:0},{name:"sTypoDescender",type:"SHORT",value:0},{name:"sTypoLineGap",type:"SHORT",value:0},{name:"usWinAscent",type:"USHORT",value:0},{name:"usWinDescent",type:"USHORT",value:0},{name:"ulCodePageRange1",type:"ULONG",value:0},{name:"ulCodePageRange2",type:"ULONG",value:0},{name:"sxHeight",type:"SHORT",value:0},{name:"sCapHeight",type:"SHORT",value:0},{name:"usDefaultChar",type:"USHORT",value:0},{name:"usBreakChar",type:"USHORT",value:0},{name:"usMaxContext",type:"USHORT",value:0}],t)}var jo={parse:YB,make:OB,unicodeRanges:Vo,getUnicodeRange:kB};function NB(t,n){let s={},a=new he.Parser(t,n);switch(s.version=a.parseVersion(),s.italicAngle=a.parseFixed(),s.underlinePosition=a.parseShort(),s.underlineThickness=a.parseShort(),s.isFixedPitch=a.parseULong(),s.minMemType42=a.parseULong(),s.maxMemType42=a.parseULong(),s.minMemType1=a.parseULong(),s.maxMemType1=a.parseULong(),s.version){case 1:s.names=hi.slice();break;case 2:s.numberOfGlyphs=a.parseUShort(),s.glyphNameIndex=new Array(s.numberOfGlyphs);for(let l=0;l<s.numberOfGlyphs;l++)s.glyphNameIndex[l]=a.parseUShort();s.names=[];for(let l=0;l<s.numberOfGlyphs;l++)if(s.glyphNameIndex[l]>=hi.length){let h=a.parseChar();s.names.push(a.parseString(h))}break;case 2.5:s.numberOfGlyphs=a.parseUShort(),s.offset=new Array(s.numberOfGlyphs);for(let l=0;l<s.numberOfGlyphs;l++)s.offset[l]=a.parseChar();break}return s}function RB(t){let{italicAngle:n=Math.round((t.italicAngle||0)*65536),underlinePosition:s=0,underlineThickness:a=0,isFixedPitch:l=0,minMemType42:h=0,maxMemType42:d=0,minMemType1:B=0,maxMemType1:w=0}=t.tables.post||{};return new $.Table("post",[{name:"version",type:"FIXED",value:196608},{name:"italicAngle",type:"FIXED",value:n},{name:"underlinePosition",type:"FWORD",value:s},{name:"underlineThickness",type:"FWORD",value:a},{name:"isFixedPitch",type:"ULONG",value:l},{name:"minMemType42",type:"ULONG",value:h},{name:"maxMemType42",type:"ULONG",value:d},{name:"minMemType1",type:"ULONG",value:B},{name:"maxMemType1",type:"ULONG",value:w}])}var fc={parse:NB,make:RB},ir=new Array(9);ir[1]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();if(s===1)return{substFormat:1,coverage:this.parsePointer(V.coverage),deltaGlyphId:this.parseShort()};if(s===2)return{substFormat:2,coverage:this.parsePointer(V.coverage),substitute:this.parseOffset16List()};G.assert(!1,"0x"+n.toString(16)+": lookup type 1 format must be 1 or 2.")},ir[2]=function(){let n=this.parseUShort();return G.argument(n===1,"GSUB Multiple Substitution Subtable identifier-format must be 1"),{substFormat:n,coverage:this.parsePointer(V.coverage),sequences:this.parseListOfLists()}},ir[3]=function(){let n=this.parseUShort();return G.argument(n===1,"GSUB Alternate Substitution Subtable identifier-format must be 1"),{substFormat:n,coverage:this.parsePointer(V.coverage),alternateSets:this.parseListOfLists()}},ir[4]=function(){let n=this.parseUShort();return G.argument(n===1,"GSUB ligature table identifier-format must be 1"),{substFormat:n,coverage:this.parsePointer(V.coverage),ligatureSets:this.parseListOfLists(function(){return{ligGlyph:this.parseUShort(),components:this.parseUShortList(this.parseUShort()-1)}})}};var Yi={sequenceIndex:V.uShort,lookupListIndex:V.uShort};ir[5]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();if(s===1)return{substFormat:s,coverage:this.parsePointer(V.coverage),ruleSets:this.parseListOfLists(function(){let a=this.parseUShort(),l=this.parseUShort();return{input:this.parseUShortList(a-1),lookupRecords:this.parseRecordList(l,Yi)}})};if(s===2)return{substFormat:s,coverage:this.parsePointer(V.coverage),classDef:this.parsePointer(V.classDef),classSets:this.parseListOfLists(function(){let a=this.parseUShort(),l=this.parseUShort();return{classes:this.parseUShortList(a-1),lookupRecords:this.parseRecordList(l,Yi)}})};if(s===3){let a=this.parseUShort(),l=this.parseUShort();return{substFormat:s,coverages:this.parseList(a,V.pointer(V.coverage)),lookupRecords:this.parseRecordList(l,Yi)}}G.assert(!1,"0x"+n.toString(16)+": lookup type 5 format must be 1, 2 or 3.")},ir[6]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();if(s===1)return{substFormat:1,coverage:this.parsePointer(V.coverage),chainRuleSets:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Yi)}})};if(s===2)return{substFormat:2,coverage:this.parsePointer(V.coverage),backtrackClassDef:this.parsePointer(V.classDef),inputClassDef:this.parsePointer(V.classDef),lookaheadClassDef:this.parsePointer(V.classDef),chainClassSet:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Yi)}})};if(s===3)return{substFormat:3,backtrackCoverage:this.parseList(V.pointer(V.coverage)),inputCoverage:this.parseList(V.pointer(V.coverage)),lookaheadCoverage:this.parseList(V.pointer(V.coverage)),lookupRecords:this.parseRecordList(Yi)};G.assert(!1,"0x"+n.toString(16)+": lookup type 6 format must be 1, 2 or 3.")},ir[7]=function(){let n=this.parseUShort();G.argument(n===1,"GSUB Extension Substitution subtable identifier-format must be 1");let s=this.parseUShort(),a=new V(this.data,this.offset+this.parseULong());return{substFormat:1,lookupType:s,extension:ir[s].call(a)}},ir[8]=function(){let n=this.parseUShort();return G.argument(n===1,"GSUB Reverse Chaining Contextual Single Substitution Subtable identifier-format must be 1"),{substFormat:n,coverage:this.parsePointer(V.coverage),backtrackCoverage:this.parseList(V.pointer(V.coverage)),lookaheadCoverage:this.parseList(V.pointer(V.coverage)),substitutes:this.parseUShortList()}};function GB(t,n){n=n||0;let s=new V(t,n),a=s.parseVersion(1);return G.argument(a===1||a===1.1,"Unsupported GSUB table version."),a===1?{version:a,scripts:s.parseScriptList(),features:s.parseFeatureList(),lookups:s.parseLookupList(ir)}:{version:a,scripts:s.parseScriptList(),features:s.parseFeatureList(),lookups:s.parseLookupList(ir),variations:s.parseFeatureVariationsList()}}var pi=new Array(9);pi[1]=function(n){if(n.substFormat===1)return new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)},{name:"deltaGlyphID",type:"SHORT",value:n.deltaGlyphId}]);if(n.substFormat===2)return new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:2},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.ushortList("substitute",n.substitute)));G.fail("Lookup type 1 substFormat must be 1 or 2.")},pi[2]=function(n){return G.assert(n.substFormat===1,"Lookup type 2 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("seqSet",n.sequences,function(s){return new $.Table("sequenceSetTable",$.ushortList("sequence",s))})))},pi[3]=function(n){return G.assert(n.substFormat===1,"Lookup type 3 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("altSet",n.alternateSets,function(s){return new $.Table("alternateSetTable",$.ushortList("alternate",s))})))},pi[4]=function(n){return G.assert(n.substFormat===1,"Lookup type 4 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("ligSet",n.ligatureSets,function(s){return new $.Table("ligatureSetTable",$.tableList("ligature",s,function(a){return new $.Table("ligatureTable",[{name:"ligGlyph",type:"USHORT",value:a.ligGlyph}].concat($.ushortList("component",a.components,a.components.length+1)))}))})))},pi[5]=function(n){if(n.substFormat===1)return new $.Table("contextualSubstitutionTable",[{name:"substFormat",type:"USHORT",value:n.substFormat},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("sequenceRuleSet",n.ruleSets,function(s){return s?new $.Table("sequenceRuleSetTable",$.tableList("sequenceRule",s,function(a){let l=$.ushortList("seqLookup",[],a.lookupRecords.length).concat($.ushortList("inputSequence",a.input,a.input.length+1));[l[0],l[1]]=[l[1],l[0]];for(let h=0;h<a.lookupRecords.length;h++){let d=a.lookupRecords[h];l=l.concat({name:"sequenceIndex"+h,type:"USHORT",value:d.sequenceIndex}).concat({name:"lookupListIndex"+h,type:"USHORT",value:d.lookupListIndex})}return new $.Table("sequenceRuleTable",l)})):new $.Table("NULL",null)})));if(n.substFormat===2)return new $.Table("contextualSubstitutionTable",[{name:"substFormat",type:"USHORT",value:n.substFormat},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)},{name:"classDef",type:"TABLE",value:new $.ClassDef(n.classDef)}].concat($.tableList("classSeqRuleSet",n.classSets,function(s){return s?new $.Table("classSeqRuleSetTable",$.tableList("classSeqRule",s,function(a){let l=$.ushortList("classes",a.classes,a.classes.length+1).concat($.ushortList("seqLookupCount",[],a.lookupRecords.length));for(let h=0;h<a.lookupRecords.length;h++){let d=a.lookupRecords[h];l=l.concat({name:"sequenceIndex"+h,type:"USHORT",value:d.sequenceIndex}).concat({name:"lookupListIndex"+h,type:"USHORT",value:d.lookupListIndex})}return new $.Table("classSeqRuleTable",l)})):new $.Table("NULL",null)})));if(n.substFormat===3){let s=[{name:"substFormat",type:"USHORT",value:n.substFormat}];s.push({name:"inputGlyphCount",type:"USHORT",value:n.coverages.length}),s.push({name:"substitutionCount",type:"USHORT",value:n.lookupRecords.length});for(let l=0;l<n.coverages.length;l++){let h=n.coverages[l];s.push({name:"inputCoverage"+l,type:"TABLE",value:new $.Coverage(h)})}for(let l=0;l<n.lookupRecords.length;l++){let h=n.lookupRecords[l];s=s.concat({name:"sequenceIndex"+l,type:"USHORT",value:h.sequenceIndex}).concat({name:"lookupListIndex"+l,type:"USHORT",value:h.lookupListIndex})}return new $.Table("contextualSubstitutionTable",s)}G.assert(!1,"lookup type 5 format must be 1, 2 or 3.")},pi[6]=function(n){if(n.substFormat===1)return new $.Table("chainContextTable",[{name:"substFormat",type:"USHORT",value:n.substFormat},{name:"coverage",type:"TABLE",value:new $.Coverage(n.coverage)}].concat($.tableList("chainRuleSet",n.chainRuleSets,function(a){return new $.Table("chainRuleSetTable",$.tableList("chainRule",a,function(l){let h=$.ushortList("backtrackGlyph",l.backtrack,l.backtrack.length).concat($.ushortList("inputGlyph",l.input,l.input.length+1)).concat($.ushortList("lookaheadGlyph",l.lookahead,l.lookahead.length)).concat($.ushortList("substitution",[],l.lookupRecords.length));for(let d=0;d<l.lookupRecords.length;d++){let B=l.lookupRecords[d];h=h.concat({name:"sequenceIndex"+d,type:"USHORT",value:B.sequenceIndex}).concat({name:"lookupListIndex"+d,type:"USHORT",value:B.lookupListIndex})}return new $.Table("chainRuleTable",h)}))})));if(n.substFormat===2)G.assert(!1,"lookup type 6 format 2 is not yet supported.");else if(n.substFormat===3){let s=[{name:"substFormat",type:"USHORT",value:n.substFormat}];s.push({name:"backtrackGlyphCount",type:"USHORT",value:n.backtrackCoverage.length});for(let l=0;l<n.backtrackCoverage.length;l++){let h=n.backtrackCoverage[l];s.push({name:"backtrackCoverage"+l,type:"TABLE",value:new $.Coverage(h)})}s.push({name:"inputGlyphCount",type:"USHORT",value:n.inputCoverage.length});for(let l=0;l<n.inputCoverage.length;l++){let h=n.inputCoverage[l];s.push({name:"inputCoverage"+l,type:"TABLE",value:new $.Coverage(h)})}s.push({name:"lookaheadGlyphCount",type:"USHORT",value:n.lookaheadCoverage.length});for(let l=0;l<n.lookaheadCoverage.length;l++){let h=n.lookaheadCoverage[l];s.push({name:"lookaheadCoverage"+l,type:"TABLE",value:new $.Coverage(h)})}s.push({name:"substitutionCount",type:"USHORT",value:n.lookupRecords.length});for(let l=0;l<n.lookupRecords.length;l++){let h=n.lookupRecords[l];s=s.concat({name:"sequenceIndex"+l,type:"USHORT",value:h.sequenceIndex}).concat({name:"lookupListIndex"+l,type:"USHORT",value:h.lookupListIndex})}return new $.Table("chainContextTable",s)}G.assert(!1,"lookup type 6 format must be 1, 2 or 3.")};function LB(t){return new $.Table("GSUB",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new $.ScriptList(t.scripts)},{name:"features",type:"TABLE",value:new $.FeatureList(t.features)},{name:"lookups",type:"TABLE",value:new $.LookupList(t.lookups,pi)}])}var pc={parse:GB,make:LB};function PB(t,n){let s=new he.Parser(t,n),a=s.parseULong();G.argument(a===1,"Unsupported META table version."),s.parseULong(),s.parseULong();let l=s.parseULong(),h={};for(let d=0;d<l;d++){let B=s.parseTag(),w=s.parseULong(),x=s.parseULong();if(B==="appl"||B==="bild")continue;let C=Qe.UTF8(t,n+w,x);h[B]=C}return h}function HB(t){let n=Object.keys(t).length,s="",a=16+n*12,l=new $.Table("meta",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"offset",type:"ULONG",value:a},{name:"numTags",type:"ULONG",value:n}]);for(let h in t){let d=s.length;s+=t[h],l.fields.push({name:"tag "+h,type:"TAG",value:h}),l.fields.push({name:"offset "+h,type:"ULONG",value:a+d}),l.fields.push({name:"length "+h,type:"ULONG",value:t[h].length})}return l.fields.push({name:"stringPool",type:"CHARARRAY",value:s}),l}var dc={parse:PB,make:HB};function WB(t,n){let s=new V(t,n),a=s.parseUShort();a!==0&&console.warn("Only COLRv0 is currently fully supported. A subset of color glyphs might be available in this font if provided in the v0 format.");let l=s.parseUShort(),h=s.parseOffset32(),d=s.parseOffset32(),B=s.parseUShort();s.relativeOffset=h;let w=s.parseRecordList(l,{glyphID:V.uShort,firstLayerIndex:V.uShort,numLayers:V.uShort});s.relativeOffset=d;let x=s.parseRecordList(B,{glyphID:V.uShort,paletteIndex:V.uShort});return{version:a,baseGlyphRecords:w,layerRecords:x}}function JB({version:t=0,baseGlyphRecords:n=[],layerRecords:s=[]}){G.argument(t===0,"Only COLRv0 supported.");let a=14,l=a+n.length*6;return new $.Table("COLR",[{name:"version",type:"USHORT",value:t},{name:"numBaseGlyphRecords",type:"USHORT",value:n.length},{name:"baseGlyphRecordsOffset",type:"ULONG",value:a},{name:"layerRecordsOffset",type:"ULONG",value:l},{name:"numLayerRecords",type:"USHORT",value:s.length},...n.map((h,d)=>[{name:"glyphID_"+d,type:"USHORT",value:h.glyphID},{name:"firstLayerIndex_"+d,type:"USHORT",value:h.firstLayerIndex},{name:"numLayers_"+d,type:"USHORT",value:h.numLayers}]).flat(),...s.map((h,d)=>[{name:"LayerGlyphID_"+d,type:"USHORT",value:h.glyphID},{name:"paletteIndex_"+d,type:"USHORT",value:h.paletteIndex}]).flat()])}var gc={parse:WB,make:JB};function VB(t,n){return[{name:"tag_"+t,type:"TAG",value:n.tag},{name:"minValue_"+t,type:"FIXED",value:n.minValue<<16},{name:"defaultValue_"+t,type:"FIXED",value:n.defaultValue<<16},{name:"maxValue_"+t,type:"FIXED",value:n.maxValue<<16},{name:"flags_"+t,type:"USHORT",value:0},{name:"nameID_"+t,type:"USHORT",value:n.axisNameID}]}function jB(t,n,s){let a={},l=new he.Parser(t,n);a.tag=l.parseTag(),a.minValue=l.parseFixed(),a.defaultValue=l.parseFixed(),a.maxValue=l.parseFixed(),l.skip("uShort",1);let h=l.parseUShort();return a.axisNameID=h,a.name=ui(s,h),a}function _B(t,n,s,a={}){let l=[{name:"nameID_"+t,type:"USHORT",value:n.subfamilyNameID},{name:"flags_"+t,type:"USHORT",value:0}];for(let h=0;h<s.length;++h){let d=s[h].tag;l.push({name:"axis_"+t+" "+d,type:"FIXED",value:n.coordinates[d]<<16})}return a&&a.postScriptNameID&&l.push({name:"postScriptNameID_",type:"USHORT",value:n.postScriptNameID!==void 0?n.postScriptNameID:65535}),l}function ZB(t,n,s,a,l){let h={},d=new he.Parser(t,n),B=d.parseUShort();h.subfamilyNameID=B,h.name=ui(a,B,[2,17]),d.skip("uShort",1),h.coordinates={};for(let x=0;x<s.length;++x)h.coordinates[s[x].tag]=d.parseFixed();if(d.relativeOffset===l)return h.postScriptNameID=void 0,h.postScriptName=void 0,h;let w=d.parseUShort();return h.postScriptNameID=w==65535?void 0:w,h.postScriptName=h.postScriptNameID!==void 0?ui(a,w,[6]):"",h}function XB(t,n){let s=new $.Table("fvar",[{name:"version",type:"ULONG",value:65536},{name:"offsetToData",type:"USHORT",value:0},{name:"countSizePairs",type:"USHORT",value:2},{name:"axisCount",type:"USHORT",value:t.axes.length},{name:"axisSize",type:"USHORT",value:20},{name:"instanceCount",type:"USHORT",value:t.instances.length},{name:"instanceSize",type:"USHORT",value:4+t.axes.length*4}]);s.offsetToData=s.sizeOf();for(let l=0;l<t.axes.length;l++)s.fields=s.fields.concat(VB(l,t.axes[l],n));let a={};for(let l=0;l<t.instances.length;l++)if(t.instances[l].postScriptNameID!==void 0){s.instanceSize+=2,a.postScriptNameID=!0;break}for(let l=0;l<t.instances.length;l++)s.fields=s.fields.concat(_B(l,t.instances[l],t.axes,a));return s}function zB(t,n,s){let a=new he.Parser(t,n),l=a.parseULong();G.argument(l===65536,"Unsupported fvar table version.");let h=a.parseOffset16();a.skip("uShort",1);let d=a.parseUShort(),B=a.parseUShort(),w=a.parseUShort(),x=a.parseUShort(),C=[];for(let Y=0;Y<d;Y++)C.push(jB(t,n+h+Y*B,s));let S=[],T=n+h+d*B;for(let Y=0;Y<w;Y++)S.push(ZB(t,T+Y*x,C,s,x));return{axes:C,instances:S}}var mc={make:XB,parse:zB},qB={tag:V.tag,nameID:V.uShort,ordering:V.uShort},gn=new Array(5);gn[1]=function(){return{axisIndex:this.parseUShort(),flags:this.parseUShort(),valueNameID:this.parseUShort(),value:this.parseFixed()}},gn[2]=function(){return{axisIndex:this.parseUShort(),flags:this.parseUShort(),valueNameID:this.parseUShort(),nominalValue:this.parseFixed(),rangeMinValue:this.parseFixed(),rangeMaxValue:this.parseFixed()}},gn[3]=function(){return{axisIndex:this.parseUShort(),flags:this.parseUShort(),valueNameID:this.parseUShort(),value:this.parseFixed(),linkedValue:this.parseFixed()}},gn[4]=function(){let n=this.parseUShort();return{flags:this.parseUShort(),valueNameID:this.parseUShort(),axisValues:this.parseList(n,function(){return{axisIndex:this.parseUShort(),value:this.parseFixed()}})}};function KB(){let t=this.parseUShort(),n=gn[t],s={format:t};return n===void 0?(console.warn(`Unknown axis value table format ${t}`),s):Object.assign(s,this.parseStruct(n.bind(this)))}function $B(t,n,s){n||(n=0);let a=new he.Parser(t,n),l=a.parseUShort(),h=a.parseUShort();l!==1&&console.warn(`Unsupported STAT table version ${l}.${h}`);let d=[l,h],B=a.parseUShort(),w=a.parseUShort(),x=a.parseOffset32(),C=a.parseUShort(),S=a.parseOffset32(),T=l>1||h>0?a.parseUShort():void 0;s!==void 0&&G.argument(w>=s.axes.length,"STAT axis count must be greater than or equal to fvar axis count"),C>0&&G.argument(w>=0,"STAT axis count must be greater than 0 if STAT axis value count is greater than 0");let Y=[];for(let ee=0;ee<w;ee++)a.offset=n+x,a.relativeOffset=ee*B,Y.push(a.parseStruct(qB));a.offset=n,a.relativeOffset=S;let U=a.parseUShortList(C),L=[];for(let ee=0;ee<C;ee++)a.offset=n+S,a.relativeOffset=U[ee],L.push(KB.apply(a));return{version:d,axes:Y,values:L,elidedFallbackNameID:T}}var mn=new Array(5);mn[1]=function(n,s){return[{name:`format${n}`,type:"USHORT",value:1},{name:`axisIndex${n}`,type:"USHORT",value:s.axisIndex},{name:`flags${n}`,type:"USHORT",value:s.flags},{name:`valueNameID${n}`,type:"USHORT",value:s.valueNameID},{name:`value${n}`,type:"FLOAT",value:s.value}]},mn[2]=function(n,s){return[{name:`format${n}`,type:"USHORT",value:2},{name:`axisIndex${n}`,type:"USHORT",value:s.axisIndex},{name:`flags${n}`,type:"USHORT",value:s.flags},{name:`valueNameID${n}`,type:"USHORT",value:s.valueNameID},{name:`nominalValue${n}`,type:"FLOAT",value:s.nominalValue},{name:`rangeMinValue${n}`,type:"FLOAT",value:s.rangeMinValue},{name:`rangeMaxValue${n}`,type:"FLOAT",value:s.rangeMaxValue}]},mn[3]=function(n,s){return[{name:`format${n}`,type:"USHORT",value:3},{name:`axisIndex${n}`,type:"USHORT",value:s.axisIndex},{name:`flags${n}`,type:"USHORT",value:s.flags},{name:`valueNameID${n}`,type:"USHORT",value:s.valueNameID},{name:`value${n}`,type:"FLOAT",value:s.value},{name:`linkedValue${n}`,type:"FLOAT",value:s.linkedValue}]},mn[4]=function(n,s){let a=[{name:`format${n}`,type:"USHORT",value:4},{name:`axisCount${n}`,type:"USHORT",value:s.axisValues.length},{name:`flags${n}`,type:"USHORT",value:s.flags},{name:`valueNameID${n}`,type:"USHORT",value:s.valueNameID}];for(let l=0;l<s.axisValues.length;l++)a=a.concat([{name:`format${n}axisIndex${l}`,type:"USHORT",value:s.axisValues[l].axisIndex},{name:`format${n}value${l}`,type:"FLOAT",value:s.axisValues[l].value}]);return a};function eE(t,n){return new $.Record("axisRecord_"+t,[{name:"axisTag_"+t,type:"TAG",value:n.tag},{name:"axisNameID_"+t,type:"USHORT",value:n.nameID},{name:"axisOrdering_"+t,type:"USHORT",value:n.ordering}])}function tE(t,n){let s=n.format,a=mn[s];G.argument(a!==void 0,`Unknown axis value table format ${s}`);let l=a(t,n);return new $.Table("axisValueTable_"+t,l)}function rE(t){let n=new $.Table("STAT",[{name:"majorVersion",type:"USHORT",value:1},{name:"minorVersion",type:"USHORT",value:2},{name:"designAxisSize",type:"USHORT",value:8},{name:"designAxisCount",type:"USHORT",value:t.axes.length},{name:"designAxesOffset",type:"ULONG",value:0},{name:"axisValueCount",type:"USHORT",value:t.values.length},{name:"offsetToAxisValueOffsets",type:"ULONG",value:0},{name:"elidedFallbackNameID",type:"USHORT",value:t.elidedFallbackNameID}]);n.designAxesOffset=n.offsetToAxisValueOffsets=n.sizeOf();for(let h=0;h<t.axes.length;h++){let d=eE(h,t.axes[h]);n.offsetToAxisValueOffsets+=d.sizeOf(),n.fields=n.fields.concat(d.fields)}let s=[],a=[],l=t.values.length*2;for(let h=0;h<t.values.length;h++){let d=tE(h,t.values[h]);s.push({name:"offset_"+h,type:"USHORT",value:l}),l+=d.sizeOf(),a=a.concat(d.fields)}return n.fields=n.fields.concat(s),n.fields=n.fields.concat(a),n}var Bc={make:rE,parse:$B};function iE(t,n){return new $.Record("axisValueMap_"+t,[{name:"fromCoordinate_"+t,type:"F2DOT14",value:n.fromCoordinate},{name:"toCoordinate_"+t,type:"F2DOT14",value:n.toCoordinate}])}function nE(t,n){let s=new $.Record("segmentMap_"+t,[{name:"positionMapCount_"+t,type:"USHORT",value:n.axisValueMaps.length}]),a=[];for(let l=0;l<n.axisValueMaps.length;l++){let h=iE(`${t}_${l}`,n.axisValueMaps[l]);a=a.concat(h.fields)}return s.fields=s.fields.concat(a),s}function sE(t,n){G.argument(t.axisSegmentMaps.length===n.axes.length,"avar axis count must correspond to fvar axis count");let s=new $.Table("avar",[{name:"majorVersion",type:"USHORT",value:1},{name:"minorVersion",type:"USHORT",value:0},{name:"reserved",type:"USHORT",value:0},{name:"axisCount",type:"USHORT",value:t.axisSegmentMaps.length}]);for(let a=0;a<t.axisSegmentMaps.length;a++){let l=nE(a,t.axisSegmentMaps[a]);s.fields=s.fields.concat(l.fields)}return s}function oE(t,n,s){n||(n=0);let a=new V(t,n),l=a.parseUShort(),h=a.parseUShort();l!==1&&console.warn(`Unsupported avar table version ${l}.${h}`),a.skip("uShort",1);let d=a.parseUShort();G.argument(d===s.axes.length,"avar axis count must correspond to fvar axis count");let B=[];for(let w=0;w<d;w++){let x=[],C=a.parseUShort();for(let S=0;S<C;S++){let T=a.parseF2Dot14(),Y=a.parseF2Dot14();x.push({fromCoordinate:T,toCoordinate:Y})}B.push({axisValueMaps:x})}return{version:[l,h],axisSegmentMaps:B}}var Ec={make:sE,parse:oE};function aE(t,n,s,a){let l=new he.Parser(t,n),h=l.parseTupleVariationStore(l.relativeOffset,s.axes.length,"cvar",a),d=l.parseUShort(),B=l.parseUShort();return d!==1&&console.warn(`Unsupported cvar table version ${d}.${B}`),{version:[d,B],...h}}function AE(){console.warn("Writing of cvar tables is not yet supported.")}var wc={make:AE,parse:aE};function lE(t,n,s,a){let l=new he.Parser(t,n),h=l.parseUShort(),d=l.parseUShort();h!==1&&console.warn(`Unsupported gvar table version ${h}.${d}`);let B=l.parseUShort();B!==s.axes.length&&console.warn(`axisCount ${B} in gvar table does not match the number of axes ${s.axes.length} in the fvar table!`);let w=l.parseUShort(),x=l.parsePointer32(function(){return this.parseTupleRecords(w,B)}),C=l.parseTupleVariationStoreList(B,"gvar",a);return{version:[h,d],sharedTuples:x,glyphVariations:C}}function cE(){console.warn("Writing of gvar tables is not yet supported.")}var yc={make:cE,parse:lE};function uE(t,n){let s={},a=new he.Parser(t,n);s.version=a.parseUShort(),G.argument(s.version<=1,"Unsupported gasp table version."),s.numRanges=a.parseUShort(),s.gaspRanges=[];for(let l=0;l<s.numRanges;l++)s.gaspRanges[l]={rangeMaxPPEM:a.parseUShort(),rangeGaspBehavior:a.parseUShort()};return s}function hE(t){let n=new $.Table("gasp",[{name:"version",type:"USHORT",value:1},{name:"numRanges",type:"USHORT",value:t.numRanges}]);for(let s in t.gaspRanges)n.fields.push({name:"rangeMaxPPEM",type:"USHORT",value:t.gaspRanges[s].rangeMaxPPEM}),n.fields.push({name:"rangeGaspBehavior",type:"USHORT",value:t.gaspRanges[s].rangeGaspBehavior});return n}var Cc={parse:uE,make:hE};function fE(t,n){let s=new Map,a=t.buffer,l=new V(t,n);if(l.parseUShort()!==0)return s;l.relativeOffset=l.parseOffset32();let d=t.byteOffset+n+l.relativeOffset,B=l.parseUShort(),w=new Map;for(let x=0;x<B;x++){let C=l.parseUShort(),S=l.parseUShort(),T=d+l.parseOffset32(),Y=l.parseULong(),U=w.get(T);U===void 0&&(U=new Uint8Array(a,T,Y),w.set(T,U));for(let L=C;L<=S;L++)s.set(L,U)}return s}function pE(t){let n=Array.from(t.keys()).sort(),s=[],a=[],l=new Map,h=0,d={endGlyphID:null};for(let T=0,Y=n.length;T<Y;T++){let U=n[T],L=t.get(U),ee=l.get(L);ee===void 0&&(ee=h,a.push(L),l.set(L,ee),h+=L.byteLength),U-1===d.endGlyphID&&ee===d.svgDocOffset?d.endGlyphID=U:(d={startGlyphID:U,endGlyphID:U,svgDocOffset:ee,svgDocLength:L.byteLength},s.push(d))}let B=s.length,w=a.length,x=2+B*12,C=new Array(4+B*4+w),S=0;C[S++]={name:"version",type:"USHORT",value:0},C[S++]={name:"svgDocumentListOffset",type:"ULONG",value:10},C[S++]={name:"reserved",type:"ULONG",value:0},C[S++]={name:"numEntries",type:"USHORT",value:B};for(let T=0;T<B;T++){let Y="documentRecord_"+T,{startGlyphID:U,endGlyphID:L,svgDocOffset:ee,svgDocLength:Te}=s[T];C[S++]={name:Y+"_startGlyphID",type:"USHORT",value:U},C[S++]={name:Y+"_endGlyphID",type:"USHORT",value:L},C[S++]={name:Y+"_svgDocOffset",type:"ULONG",value:x+ee},C[S++]={name:Y+"_svgDocLength",type:"ULONG",value:Te}}for(let T=0;T<w;T++)C[S++]={name:"svgDoc_"+T,type:"LITERAL",value:a[T]};return new $.Table("SVG ",C)}var bc={make:pE,parse:fE};function xc(t){return Math.log(t)/Math.log(2)|0}function _o(t){for(;t.length%4!==0;)t.push(0);let n=0;for(let s=0;s<t.length;s+=4)n+=(t[s]<<24)+(t[s+1]<<16)+(t[s+2]<<8)+t[s+3];return n%=Math.pow(2,32),n}function Qc(t,n,s,a){return new $.Record("Table Record",[{name:"tag",type:"TAG",value:t!==void 0?t:""},{name:"checkSum",type:"ULONG",value:n!==void 0?n:0},{name:"offset",type:"ULONG",value:s!==void 0?s:0},{name:"length",type:"ULONG",value:a!==void 0?a:0}])}function vc(t){let n=new $.Table("sfnt",[{name:"version",type:"TAG",value:"OTTO"},{name:"numTables",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);n.tables=t,n.numTables=t.length;let s=Math.pow(2,xc(n.numTables));n.searchRange=16*s,n.entrySelector=xc(s),n.rangeShift=n.numTables*16-n.searchRange;let a=[],l=[],h=n.sizeOf()+Qc().sizeOf()*n.numTables;for(;h%4!==0;)h+=1,l.push({name:"padding",type:"BYTE",value:0});for(let d=0;d<t.length;d+=1){let B=t[d];G.argument(B.tableName.length===4,"Table name"+B.tableName+" is invalid.");let w=B.sizeOf(),x=Qc(B.tableName,_o(B.encode()),h,w);for(a.push({name:x.tag+" Table Record",type:"RECORD",value:x}),l.push({name:B.tableName+" table",type:"RECORD",value:B}),h+=w,G.argument(!isNaN(h),"Something went wrong calculating the offset.");h%4!==0;)h+=1,l.push({name:"padding",type:"BYTE",value:0})}return a.sort(function(d,B){return d.value.tag>B.value.tag?1:-1}),n.fields=n.fields.concat(a),n.fields=n.fields.concat(l),n}function Ic(t,n,s){for(let a=0;a<n.length;a+=1){let l=t.charToGlyphIndex(n[a]);if(l>0)return t.glyphs.get(l).getMetrics()}return s}function dE(t){let n=0;for(let s=0;s<t.length;s+=1)n+=t[s];return n/t.length}function gE(t){let n=[],s=[],a=[],l=[],h=[],d=[],B=[],w,x=0,C=0,S=0,T=0,Y=0;for(let ot=0;ot<t.glyphs.length;ot+=1){let Nt=t.glyphs.get(ot),zt=Nt.unicode|0;if(isNaN(Nt.advanceWidth))throw new Error("Glyph "+Nt.name+" ("+ot+"): advanceWidth is not a number.");(w>zt||w===void 0)&&zt>0&&(w=zt),x<zt&&(x=zt);let ar=jo.getUnicodeRange(zt);if(ar<32)C|=1<<ar;else if(ar<64)S|=1<<ar-32;else if(ar<96)T|=1<<ar-64;else if(ar<123)Y|=1<<ar-96;else throw new Error("Unicode ranges bits > 123 are reserved for internal usage");if(Nt.name===".notdef")continue;let Mr=Nt.getMetrics();n.push(Mr.xMin),s.push(Mr.yMin),a.push(Mr.xMax),l.push(Mr.yMax),d.push(Mr.leftSideBearing),B.push(Mr.rightSideBearing),h.push(Nt.advanceWidth)}let U={xMin:Math.min.apply(null,n),yMin:Math.min.apply(null,s),xMax:Math.max.apply(null,a),yMax:Math.max.apply(null,l),advanceWidthMax:Math.max.apply(null,h),advanceWidthAvg:dE(h),minLeftSideBearing:Math.min.apply(null,d),maxLeftSideBearing:Math.max.apply(null,d),minRightSideBearing:Math.min.apply(null,B)};U.ascender=t.ascender,U.descender=t.descender;let L=0;t.weightClass>=600&&(L|=t.macStyleValues.BOLD),t.italicAngle<0&&(L|=t.macStyleValues.ITALIC);let ee=Ac.make({flags:3,unitsPerEm:t.unitsPerEm,xMin:U.xMin,yMin:U.yMin,xMax:U.xMax,yMax:U.yMax,lowestRecPPEM:3,macStyle:L,createdTimestamp:t.createdTimestamp}),Te=lc.make({ascender:U.ascender,descender:U.descender,advanceWidthMax:U.advanceWidthMax,minLeftSideBearing:U.minLeftSideBearing,minRightSideBearing:U.minRightSideBearing,xMaxExtent:U.maxLeftSideBearing+(U.xMax-U.xMin),numberOfHMetrics:t.glyphs.length}),xe=hc.make(t.glyphs.length),Re=jo.make(Object.assign({xAvgCharWidth:Math.round(U.advanceWidthAvg),usFirstCharIndex:w,usLastCharIndex:x,ulUnicodeRange1:C,ulUnicodeRange2:S,ulUnicodeRange3:T,ulUnicodeRange4:Y,sTypoAscender:U.ascender,sTypoDescender:U.descender,sTypoLineGap:0,usWinAscent:U.yMax,usWinDescent:Math.abs(U.yMin),ulCodePageRange1:1,sxHeight:Ic(t,"xyvw",{yMax:Math.round(U.ascender/2)}).yMax,sCapHeight:Ic(t,"HIKLEFJMNTZBDPRAGOQSUVWXY",U).yMax,usDefaultChar:t.hasChar(" ")?32:0,usBreakChar:t.hasChar(" ")?32:0},t.tables.os2)),Je=cc.make(t.glyphs),$e=Wl.make(t.glyphs),nt=t.getEnglishName("fontFamily"),st=t.getEnglishName("fontSubfamily"),Bt=nt+" "+st,sr=t.getEnglishName("postScriptName");sr||(sr=nt.replace(/\s/g,"")+"-"+st);let Ve={};for(let ot in t.names)Ve[ot]=t.names[ot];Ve.unicode=Ve.unicode||{},Ve.macintosh=Ve.macintosh||{},Ve.windows=Ve.windows||{};let Vt=t.names.unicode||{},Dt=t.names.macintosh||{},Se=t.names.windows||{};for(let ot in Ve){if(Ve[ot]=Ve[ot]||{},!Ve[ot].uniqueID){let Nt=t.getEnglishName("manufacturer")||"";Ve[ot].uniqueID={en:`${Nt}: ${Bt}`}}Ve[ot].postScriptName||(Ve[ot].postScriptName={en:sr})}Ve.unicode.preferredFamily||(Ve.unicode.preferredFamily=Vt.fontFamily||Dt.fontFamily||Se.fontFamily),Ve.macintosh.preferredFamily||(Ve.macintosh.preferredFamily=Dt.fontFamily||Vt.fontFamily||Se.fontFamily),Ve.windows.preferredFamily||(Ve.windows.preferredFamily=Se.fontFamily||Vt.fontFamily||Dt.fontFamily),Ve.unicode.preferredSubfamily||(Ve.unicode.preferredSubfamily=Vt.fontSubfamily||Dt.fontSubfamily||Se.fontSubfamily),Ve.macintosh.preferredSubfamily||(Ve.macintosh.preferredSubfamily=Dt.fontSubfamily||Vt.fontSubfamily||Se.fontSubfamily),Ve.windows.preferredSubfamily||(Ve.windows.preferredSubfamily=Se.fontSubfamily||Vt.fontSubfamily||Dt.fontSubfamily);let we=[],Ce=pn.make(Ve,we),vt=we.length>0?uc.make(we):void 0,$r=fc.make(t),Qs=Jo.make(t.glyphs,{version:t.getEnglishName("version"),fullName:Bt,familyName:nt,weightName:st,postScriptName:sr,unitsPerEm:t.unitsPerEm,fontBBox:[0,U.yMin,U.ascender,U.advanceWidthMax],topDict:t.tables.cff&&t.tables.cff.topDict||{}}),mi=t.metas&&Object.keys(t.metas).length>0?dc.make(t.metas):void 0,or=[ee,Te,xe,Re,Ce,$e,$r,Qs,Je];vt&&or.push(vt);let Mt={gsub:pc,cpal:Xl,colr:gc,stat:Bc,avar:Ec,cvar:wc,fvar:mc,gvar:yc,gasp:Cc,svg:bc},Xt={avar:[t.tables.fvar],fvar:[t.names]};for(let ot in Mt){let Nt=t.tables[ot];if(Nt){let zt=Mt[ot].make.call(t,Nt,...Xt[ot]||[]);zt&&or.push(zt)}}mi&&or.push(mi);let It=vc(or),jt=It.encode(),Ut=_o(jt),kt=It.fields,gt=!1;for(let ot=0;ot<kt.length;ot+=1)if(kt[ot].name==="head table"){kt[ot].value.checkSumAdjustment=2981146554-Ut,gt=!0;break}if(!gt)throw new Error("Could not find head table with checkSum to adjust.");return It}var mE={make:vc,fontToTable:gE,computeCheckSum:_o};function Zo(t,n){let s=0,a=t.length-1;for(;s<=a;){let l=s+a>>>1,h=t[l].tag;if(h===n)return l;h<n?s=l+1:a=l-1}return-s-1}function Fc(t,n){let s=0,a=t.length-1;for(;s<=a;){let l=s+a>>>1,h=t[l];if(h===n)return l;h<n?s=l+1:a=l-1}return-s-1}function Tc(t,n){let s,a=0,l=t.length-1;for(;a<=l;){let h=a+l>>>1;s=t[h];let d=s.start;if(d===n)return s;d<n?a=h+1:l=h-1}if(a>0)return s=t[a-1],n>s.end?0:s}function Sc(t,n){this.font=t,this.tableName=n}Sc.prototype={searchTag:Zo,binSearch:Fc,getTable:function(t){let n=this.font.tables[this.tableName];return!n&&t&&(n=this.font.tables[this.tableName]=this.createDefaultTable()),n},getScriptNames:function(){let t=this.getTable();return t?t.scripts.map(function(n){return n.tag}):[]},getDefaultScriptName:function(){let t=this.getTable();if(!t)return;let n=!1;for(let s=0;s<t.scripts.length;s++){let a=t.scripts[s].tag;if(a==="DFLT")return a;a==="latn"&&(n=!0)}if(n)return"latn"},getScriptTable:function(t,n){let s=this.getTable(n);if(s){t=t||"DFLT";let a=s.scripts,l=Zo(s.scripts,t);if(l>=0)return a[l].script;if(n){let h={tag:t,script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}};return a.splice(-1-l,0,h),h.script}}},getLangSysTable:function(t,n,s){let a=this.getScriptTable(t,s);if(a){if(!n||n==="dflt"||n==="DFLT")return a.defaultLangSys;let l=Zo(a.langSysRecords,n);if(l>=0)return a.langSysRecords[l].langSys;if(s){let h={tag:n,langSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]}};return a.langSysRecords.splice(-1-l,0,h),h.langSys}}},getFeatureTable:function(t,n,s,a){let l=this.getLangSysTable(t,n,a);if(l){let h,d=l.featureIndexes,B=this.font.tables[this.tableName].features;for(let w=0;w<d.length;w++)if(h=B[d[w]],h.tag===s)return h.feature;if(a){let w=B.length;return G.assert(w===0||s>=B[w-1].tag,"Features must be added in alphabetical order."),h={tag:s,feature:{params:0,lookupListIndexes:[]}},B.push(h),d.push(w),h.feature}}},getLookupTables:function(t,n,s,a,l){let h=this.getFeatureTable(t,n,s,l),d=[];if(h){let B,w=h.lookupListIndexes,x=this.font.tables[this.tableName].lookups;for(let C=0;C<w.length;C++)B=x[w[C]],B.lookupType===a&&d.push(B);if(d.length===0&&l){B={lookupType:a,lookupFlag:0,subtables:[],markFilteringSet:void 0};let C=x.length;return x.push(B),w.push(C),[B]}}return d},getGlyphClass:function(t,n){switch(t.format){case 1:return t.startGlyph<=n&&n<t.startGlyph+t.classes.length?t.classes[n-t.startGlyph]:0;case 2:{let s=Tc(t.ranges,n);return s?s.classId:0}}},getCoverageIndex:function(t,n){switch(t.format){case 1:{let s=Fc(t.glyphs,n);return s>=0?s:-1}case 2:{let s=Tc(t.ranges,n);return s?s.index+n-s.start:-1}}},expandCoverage:function(t){if(t.format===1)return t.glyphs;{let n=[],s=t.ranges;for(let a=0;a<s.length;a++){let l=s[a],h=l.start,d=l.end;for(let B=h;B<=d;B++)n.push(B)}return n}}};var gs=Sc;function Bn(t){gs.call(this,t,"gpos")}Bn.prototype=gs.prototype,Bn.prototype.init=function(){let t=this.getDefaultScriptName();this.defaultKerningTables=this.getKerningTables(t)},Bn.prototype.getKerningValue=function(t,n,s){for(let a=0;a<t.length;a++){let l=t[a].subtables;for(let h=0;h<l.length;h++){let d=l[h],B=this.getCoverageIndex(d.coverage,n);if(!(B<0))switch(d.posFormat){case 1:{let w=d.pairSets[B];for(let x=0;x<w.length;x++){let C=w[x];if(C.secondGlyph===s)return C.value1&&C.value1.xAdvance||0}break}case 2:{let w=this.getGlyphClass(d.classDef1,n),x=this.getGlyphClass(d.classDef2,s),C=d.classRecords[w][x];return C.value1&&C.value1.xAdvance||0}}}}return 0},Bn.prototype.getKerningTables=function(t,n){if(this.font.tables.gpos)return this.getLookupTables(t,n,"kern",2)};var BE=Bn;function EE(t,n){let s=t.length;if(s!==n.length)return!1;for(let a=0;a<s;a++)if(t[a]!==n[a])return!1;return!0}function wE(t,n,s){let a=0,l=t.length-1,h=null;for(;a<=l;){let d=Math.floor((a+l)/2),B=t[d],w=B[n];if(w<s)a=d+1;else if(w>s)l=d-1;else{h=B;break}}return h}function yE(t,n,s){let a=0,l=t.length-1;for(;a<=l;){let h=Math.floor((a+l)/2),d=t[h];if(d[n]<s)a=h+1;else if(d[n]>s)l=h-1;else return h}return-1}function CE(t,n,s){let a=0,l=t.length,h=(d,B)=>d[n]-B[n];for(;a<l;){let d=a+l>>>1;h(t[d],s)<0?a=d+1:l=d}return t.splice(a,0,s),a}function Dc(t){return t[0]===31&&t[1]===139&&t[2]===8}function bE(t){let n=new DataView(t.buffer,t.byteOffset,t.byteLength),s=10,a=t.byteLength-8,l=n.getInt8(3);if(l&4&&(s+=2+n.getUint16(s,!0)),l&8)for(;s<a&&t[s++]!==0;);if(l&16)for(;s<a&&t[s++]!==0;);if(l&2&&(s+=2),s>=a)throw new Error("Can't find compressed blocks");let h=n.getUint32(n.byteLength-4,!0);return fe(t.subarray(s,a),new Uint8Array(h))}function Mc(t){return{x:t.x,y:t.y,onCurve:t.onCurve,lastPointOfContour:t.lastPointOfContour}}function xE(t){return{glyphIndex:t.glyphIndex,xScale:t.xScale,scale01:t.scale01,scale10:t.scale10,yScale:t.yScale,dx:t.dx,dy:t.dy}}function Wt(t){gs.call(this,t,"gsub")}function Xo(t,n,s){let a=t.subtables;for(let l=0;l<a.length;l++){let h=a[l];if(h.substFormat===n)return h}if(s)return a.push(s),s}Wt.prototype=gs.prototype,Wt.prototype.createDefaultTable=function(){return{version:1,scripts:[{tag:"DFLT",script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}}],features:[],lookups:[]}},Wt.prototype.getSingle=function(t,n,s){let a=[],l=this.getLookupTables(n,s,t,1);for(let h=0;h<l.length;h++){let d=l[h].subtables;for(let B=0;B<d.length;B++){let w=d[B],x=this.expandCoverage(w.coverage),C;if(w.substFormat===1){let S=w.deltaGlyphId;for(C=0;C<x.length;C++){let T=x[C];a.push({sub:T,by:T+S})}}else{let S=w.substitute;for(C=0;C<x.length;C++)a.push({sub:x[C],by:S[C]})}}}return a},Wt.prototype.getMultiple=function(t,n,s){let a=[],l=this.getLookupTables(n,s,t,2);for(let h=0;h<l.length;h++){let d=l[h].subtables;for(let B=0;B<d.length;B++){let w=d[B],x=this.expandCoverage(w.coverage),C;for(C=0;C<x.length;C++){let S=x[C],T=w.sequences[C];a.push({sub:S,by:T})}}}return a},Wt.prototype.getAlternates=function(t,n,s){let a=[],l=this.getLookupTables(n,s,t,3);for(let h=0;h<l.length;h++){let d=l[h].subtables;for(let B=0;B<d.length;B++){let w=d[B],x=this.expandCoverage(w.coverage),C=w.alternateSets;for(let S=0;S<x.length;S++)a.push({sub:x[S],by:C[S]})}}return a},Wt.prototype.getLigatures=function(t,n,s){let a=[],l=this.getLookupTables(n,s,t,4);for(let h=0;h<l.length;h++){let d=l[h].subtables;for(let B=0;B<d.length;B++){let w=d[B],x=this.expandCoverage(w.coverage),C=w.ligatureSets;for(let S=0;S<x.length;S++){let T=x[S],Y=C[S];for(let U=0;U<Y.length;U++){let L=Y[U];a.push({sub:[T].concat(L.components),by:L.ligGlyph})}}}}return a},Wt.prototype.addSingle=function(t,n,s,a){let l=this.getLookupTables(s,a,t,1,!0)[0],h=Xo(l,2,{substFormat:2,coverage:{format:1,glyphs:[]},substitute:[]});G.assert(h.coverage.format===1,"Single: unable to modify coverage table format "+h.coverage.format);let d=n.sub,B=this.binSearch(h.coverage.glyphs,d);B<0&&(B=-1-B,h.coverage.glyphs.splice(B,0,d),h.substitute.splice(B,0,0)),h.substitute[B]=n.by},Wt.prototype.addMultiple=function(t,n,s,a){G.assert(n.by instanceof Array&&n.by.length>1,'Multiple: "by" must be an array of two or more ids');let l=this.getLookupTables(s,a,t,2,!0)[0],h=Xo(l,1,{substFormat:1,coverage:{format:1,glyphs:[]},sequences:[]});G.assert(h.coverage.format===1,"Multiple: unable to modify coverage table format "+h.coverage.format);let d=n.sub,B=this.binSearch(h.coverage.glyphs,d);B<0&&(B=-1-B,h.coverage.glyphs.splice(B,0,d),h.sequences.splice(B,0,0)),h.sequences[B]=n.by},Wt.prototype.addAlternate=function(t,n,s,a){let l=this.getLookupTables(s,a,t,3,!0)[0],h=Xo(l,1,{substFormat:1,coverage:{format:1,glyphs:[]},alternateSets:[]});G.assert(h.coverage.format===1,"Alternate: unable to modify coverage table format "+h.coverage.format);let d=n.sub,B=this.binSearch(h.coverage.glyphs,d);B<0&&(B=-1-B,h.coverage.glyphs.splice(B,0,d),h.alternateSets.splice(B,0,0)),h.alternateSets[B]=n.by},Wt.prototype.addLigature=function(t,n,s,a){let l=this.getLookupTables(s,a,t,4,!0)[0],h=l.subtables[0];h||(h={substFormat:1,coverage:{format:1,glyphs:[]},ligatureSets:[]},l.subtables[0]=h),G.assert(h.coverage.format===1,"Ligature: unable to modify coverage table format "+h.coverage.format);let d=n.sub[0],B=n.sub.slice(1),w={ligGlyph:n.by,components:B},x=this.binSearch(h.coverage.glyphs,d);if(x>=0){let C=h.ligatureSets[x];for(let S=0;S<C.length;S++)if(EE(C[S].components,B))return;C.push(w)}else x=-1-x,h.coverage.glyphs.splice(x,0,d),h.ligatureSets.splice(x,0,[w])},Wt.prototype.getFeature=function(t,n,s){if(/ss\d\d/.test(t))return this.getSingle(t,n,s);switch(t){case"aalt":case"salt":return this.getSingle(t,n,s).concat(this.getAlternates(t,n,s));case"dlig":case"liga":case"rlig":return this.getLigatures(t,n,s);case"ccmp":return this.getMultiple(t,n,s).concat(this.getLigatures(t,n,s));case"stch":return this.getMultiple(t,n,s)}},Wt.prototype.add=function(t,n,s,a){if(/ss\d\d/.test(t))return this.addSingle(t,n,s,a);switch(t){case"aalt":case"salt":return typeof n.by=="number"?this.addSingle(t,n,s,a):this.addAlternate(t,n,s,a);case"dlig":case"liga":case"rlig":return this.addLigature(t,n,s,a);case"ccmp":return n.by instanceof Array?this.addMultiple(t,n,s,a):this.addLigature(t,n,s,a)}};var QE=Wt,Uc=class{constructor(t){this.defaultValue=255,this.font=t}cpal(){return this.font.tables&&this.font.tables.cpal?this.font.tables.cpal:!1}getAll(t){let n=[],s=this.cpal();if(!s)return n;for(let a=0;a<s.colorRecordIndices.length;a++){let l=s.colorRecordIndices[a],h=[];for(let d=l;d<l+s.numPaletteEntries;d++)h.push(Mi(s.colorRecords[d],t||"hexa"));n.push(h)}return n}toCPALcolor(t){return Array.isArray(t)?t.map(n=>fs(n,"raw")):fs(t,"raw")}fillPalette(t,n=[],s=this.cpal().numPaletteEntries){return t=Number.isInteger(t)?this.get(t,"raw"):t,Object.assign(Array(s).fill(this.defaultValue),this.toCPALcolor(t).concat(this.toCPALcolor(n)))}extend(t){if(this.ensureCPAL(Array(t).fill(this.defaultValue)))return;let n=this.cpal(),s=n.numPaletteEntries+t,a=this.getAll().map(l=>this.fillPalette(l,[],s));n.numPaletteEntries=s,n.colorRecords=this.toCPALcolor(a.flat()),this.updateIndices()}get(t,n="hexa"){return this.getAll(n)[t]||null}getColor(t,n=0,s="hexa"){return Ro(this.font,t,n,s)}setColor(t,n,s=0){t=parseInt(t),s=parseInt(s);let a=this.getAll("raw"),l=a[s];if(!l)throw Error(`paletteIndex ${s} out of range`);let h=this.cpal(),d=h.numPaletteEntries;Array.isArray(n)||(n=[n]),n.length+t>d&&(this.extend(n.length+t-d),a=this.getAll("raw"),l=a[s]);for(let B=0;B<n.length;B++)l[B+t]=this.toCPALcolor(n[B]);h.colorRecords=a.flat(),this.updateIndices()}add(t){if(this.ensureCPAL(t))return;let n=this.cpal(),s=n.numPaletteEntries;t&&t.length?(t=this.toCPALcolor(t),t.length>s?this.extend(t.length-s):t.length<s&&(t=this.fillPalette(t)),n.colorRecordIndices.push(n.colorRecords.length),n.colorRecords.push(...t)):(n.colorRecordIndices.push(n.colorRecords.length),n.colorRecords.push(...Array(s).fill(this.defaultValue)))}delete(t){let n=this.getAll("raw");delete n[t];let s=this.cpal();s.colorRecordIndices.pop(),s.colorRecords=n.flat()}deleteColor(t,n){if(t===n)throw Error("replacementIndex cannot be the same as colorIndex");let s=this.cpal(),a=this.getAll("raw"),l=[];if(n>s.numPaletteEntries-1)throw Error(`Replacement index out of range: numPaletteEntries after deletion: ${s.numPaletteEntries-1}, replacementIndex: ${n})`);for(let B=0;B<a.length;B++){let x=a[B].filter((C,S)=>S!==t);l.push(x)}let h=this.font.tables.colr;if(h){let B=h.layerRecords;for(let w=0;w<B.length;w++){let x=B[w].paletteIndex;if(x>t)B[w].paletteIndex-=1;else if(x===t){let C=0;for(let S=0;S<a.length;S++)if(n>t&&n<=t+a[S].length){C++;break}B[w].paletteIndex=n-C}}this.font.tables.colr={...h,layerRecords:B}}let d=l.flat();for(let B=0;B<a.length;B++)s.colorRecordIndices[B]-=B;s.numPaletteEntries=Math.max(0,s.numPaletteEntries-1),s.colorRecords=this.toCPALcolor(d)}ensureCPAL(t){return this.cpal()?!1:(!t||!t.length?t=[this.defaultValue]:t=this.toCPALcolor(t),this.font.tables.cpal={version:0,numPaletteEntries:t.length,colorRecords:t,colorRecordIndices:[0]},!0)}updateIndices(){let t=this.cpal(),n=Math.ceil(t.colorRecords.length/t.numPaletteEntries);t.colorRecordIndices=[];for(let s=0;s<n;s++)t.colorRecordIndices.push(s*t.numPaletteEntries)}},vE=class{constructor(t){this.font=t}ensureCOLR(){return this.font.tables.colr||(this.font.tables.colr={version:0,baseGlyphRecords:[],layerRecords:[]}),this.font}get(t){let n=this.font,s=[],a=n.tables.colr,l=n.tables.cpal;if(!a||!l)return s;let h=wE(a.baseGlyphRecords,"glyphID",t);if(!h)return s;let d=h.firstLayerIndex,B=h.numLayers;for(let w=0;w<B;w++){let x=a.layerRecords[d+w];s.push({glyph:n.glyphs.get(x.glyphID),paletteIndex:x.paletteIndex})}return s}add(t,n,s){let a=this.get(t);n=Array.isArray(n)?n:[n],s===void 0||s===1/0||s>a.length?s=a.length:s<0&&(s=a.length+1+s%(a.length+1),s>=a.length+1&&(s-=a.length+1));let l=[];for(let h=0;h<s;h++){let d=Number.isInteger(a[h].glyph)?a[h].glyph:a[h].glyph.index;l.push({glyphID:d,paletteIndex:a[h].paletteIndex})}for(let h of n){let d=Number.isInteger(h.glyph)?h.glyph:h.glyph.index;l.push({glyphID:d,paletteIndex:h.paletteIndex})}for(let h=s;h<a.length;h++){let d=Number.isInteger(a[h].glyph)?a[h].glyph:a[h].glyph.index;l.push({glyphID:d,paletteIndex:a[h].paletteIndex})}this.updateColrTable(t,l)}setPaletteIndex(t,n,s){let a=this.get(t);a[n]?(a=a.map((l,h)=>({glyphID:l.glyph.index,paletteIndex:h===n?s:l.paletteIndex})),this.updateColrTable(t,a)):console.error("Invalid layer index")}remove(t,n,s=n){let a=this.get(t);a=a.map(l=>({glyphID:l.glyph.index,paletteIndex:l.paletteIndex})),a.splice(n,s-n+1),this.updateColrTable(t,a)}updateColrTable(t,n){this.ensureCOLR();let a=this.font.tables.colr,l=yE(a.baseGlyphRecords,"glyphID",t);if(l===-1){let C={glyphID:t,firstLayerIndex:a.layerRecords.length,numLayers:0};l=CE(a.baseGlyphRecords,"glyphID",C)}let d=a.baseGlyphRecords[l],B=d.numLayers,w=n.length,x=w-B;if(x>0){let C=n.slice(B).map(S=>({glyphID:S.glyphID,paletteIndex:S.paletteIndex}));a.layerRecords.splice(d.firstLayerIndex+B,0,...C)}else x<0&&a.layerRecords.splice(d.firstLayerIndex+w,-x);for(let C=0;C<Math.min(B,w);C++)a.layerRecords[d.firstLayerIndex+C]={glyphID:n[C].glyphID,paletteIndex:n[C].paletteIndex};if(d.numLayers=w,x!==0)for(let C=0;C<a.baseGlyphRecords.length;C++){let S=a.baseGlyphRecords[C];C===l||S.firstLayerIndex<d.firstLayerIndex||(a.baseGlyphRecords[C].firstLayerIndex+=x)}}},IE=class{constructor(t){this.font=t,this.cache=new WeakMap}get(t){let n=this.getOrCreateSvgImageCacheEntry(t);return n&&n.image}getAsync(t){let n=this.getOrCreateSvgImageCacheEntry(t);return n&&n.promise}getOrCreateSvgImageCacheEntry(t){let n=this.font.tables.svg;if(n===void 0)return;let s=n.get(t);if(s===void 0)return;let a=this.cache.get(s);a===void 0&&(a=FE(s),this.cache.set(s,a));let l=a.images.get(t);return l===void 0&&(l=TE(this.font,a.template,t),l.promise.then(h=>{if(l.image=h,typeof this.font.onGlyphUpdated=="function")try{this.font.onGlyphUpdated(t)}catch(d){console.error("font.onGlyphUpdated",t,d)}}),a.images.set(t,l)),l}};function FE(t){return{template:SE(t).then(UE),images:new Map}}function TE(t,n,s){return{promise:n.then(a=>{let l;typeof a=="string"?l=a:(a[4]=s,l=a.join(""));let h=kE(l,t.unitsPerEm);return h.image.decode().then(()=>h)}),image:void 0}}var SE=typeof DecompressionStream=="function"?ME:DE;function DE(t){try{return Promise.resolve(new TextDecoder().decode(Dc(t)?bE(t):t))}catch(n){return Promise.reject(n)}}function ME(t){if(Dc(t))return new Response(new Response(t).body.pipeThrough(new DecompressionStream("gzip"))).text();try{return Promise.resolve(new TextDecoder().decode(t))}catch(n){return Promise.reject(n)}}function UE(t){let n=t.indexOf("<svg"),s=t.indexOf(">",n+4)+1;if(/ id=['"]glyph\d+['"]/.test(t.substring(n,s)))return t;let a=t.lastIndexOf("</svg>");return[t.substring(0,s),"<defs>",t.substring(s,a),'</defs><use href="#glyph',"",'"/>',t.substring(a)]}function kE(t,n){let a=new DOMParser().parseFromString(t,"image/svg+xml").documentElement,l=a.viewBox.baseVal,h=a.width.baseVal,d=a.height.baseVal,B=1,w=1;l.width>0&&l.height>0&&(h.unitType===1?(B=h.valueInSpecifiedUnits/l.width,w=d.unitType===1?d.valueInSpecifiedUnits/l.height:B):d.unitType===1?(w=d.valueInSpecifiedUnits/l.height,B=w):n&&(B=n/l.width,w=n/l.height));let x=document.createElement("div");x.style.position="fixed",x.style.visibility="hidden",x.appendChild(a),document.body.appendChild(x);let C=a.getBBox();document.body.removeChild(x);let S=(C.x-l.x)*B,T=(l.y-C.y)*w,Y=C.width*B,U=C.height*w;a.setAttribute("viewBox",[C.x,C.y,C.width,C.height].join(" ")),B!==1&&a.setAttribute("width",Y),w!==1&&a.setAttribute("height",U);let L=new Image(Y,U);return L.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(a.outerHTML),{leftSideBearing:S,baseline:T,image:L}}var zo=new WeakMap;function kc(t,n,s,a,l){let h;return(n&a)>0?(h=t.parseByte(),(n&l)===0&&(h=-h),h=s+h):(n&l)>0?h=s:h=s+t.parseShort(),h}function Yc(t,n,s){let a=new he.Parser(n,s);t._numberOfContours=a.parseShort(),t._xMin=a.parseShort(),t._yMin=a.parseShort(),t._xMax=a.parseShort(),t._yMax=a.parseShort();let l,h;if(t._numberOfContours>0){let d=t.endPointIndices=[];for(let w=0;w<t._numberOfContours;w+=1)d.push(a.parseUShort());t.instructionLength=a.parseUShort(),t.instructions=[];for(let w=0;w<t.instructionLength;w+=1)t.instructions.push(a.parseByte());let B=d[d.length-1]+1;l=[];for(let w=0;w<B;w+=1)if(h=a.parseByte(),l.push(h),(h&8)>0){let x=a.parseByte();for(let C=0;C<x;C+=1)l.push(h),w+=1}if(G.argument(l.length===B,"Bad flags."),d.length>0){let w=[],x;if(B>0){for(let T=0;T<B;T+=1)h=l[T],x={},x.onCurve=!!(h&1),x.lastPointOfContour=d.indexOf(T)>=0,w.push(x);let C=0;for(let T=0;T<B;T+=1)h=l[T],x=w[T],x.x=kc(a,h,C,2,16),C=x.x;let S=0;for(let T=0;T<B;T+=1)h=l[T],x=w[T],x.y=kc(a,h,S,4,32),S=x.y}t.points=w}else t.points=[]}else if(t._numberOfContours===0)t.points=[];else{t.isComposite=!0,t.points=[],t.components=[];let d=!0;for(;d;){l=a.parseUShort();let B={glyphIndex:a.parseUShort(),xScale:1,scale01:0,scale10:0,yScale:1,dx:0,dy:0};(l&1)>0?(l&2)>0?(B.dx=a.parseShort(),B.dy=a.parseShort()):B.matchedPoints=[a.parseUShort(),a.parseUShort()]:(l&2)>0?(B.dx=a.parseChar(),B.dy=a.parseChar()):B.matchedPoints=[a.parseByte(),a.parseByte()],(l&8)>0?B.xScale=B.yScale=a.parseF2Dot14():(l&64)>0?(B.xScale=a.parseF2Dot14(),B.yScale=a.parseF2Dot14()):(l&128)>0&&(B.xScale=a.parseF2Dot14(),B.scale01=a.parseF2Dot14(),B.scale10=a.parseF2Dot14(),B.yScale=a.parseF2Dot14()),t.components.push(B),d=!!(l&32)}if(l&256){t.instructionLength=a.parseUShort(),t.instructions=[];for(let B=0;B<t.instructionLength;B+=1)t.instructions.push(a.parseByte())}}}function ms(t,n){let s=[];for(let a=0;a<t.length;a+=1){let l=t[a],h={x:n.xScale*l.x+n.scale10*l.y+n.dx,y:n.scale01*l.x+n.yScale*l.y+n.dy,onCurve:l.onCurve,lastPointOfContour:l.lastPointOfContour};s.push(h)}return s}function YE(t){let n=[],s=[];for(let a=0;a<t.length;a+=1){let l=t[a];s.push(l),l.lastPointOfContour&&(n.push(s),s=[])}return G.argument(s.length===0,"There are still points left in the current contour."),n}function qo(t){let n=new z;if(!t)return n;let s=YE(t);for(let a=0;a<s.length;++a){let l=s[a],h=l[l.length-1],d=l[0];if(h.onCurve)n.moveTo(h.x,h.y);else if(d.onCurve)n.moveTo(d.x,d.y);else{let B={x:(h.x+d.x)*.5,y:(h.y+d.y)*.5};n.moveTo(B.x,B.y)}for(let B=0;B<l.length;++B)if(h=d,d=l[(B+1)%l.length],h.onCurve)n.lineTo(h.x,h.y);else{let w=d;d.onCurve||(w={x:(h.x+d.x)*.5,y:(h.y+d.y)*.5}),n.quadraticCurveTo(h.x,h.y,w.x,w.y)}n.closePath()}return n}function Oc(t,n){if(n.isComposite){zo.has(t)||zo.set(t,new Set);let s=zo.get(t);s.add(n.index);try{for(let a=0;a<n.components.length;a+=1){let l=n.components[a];if(s.has(l.glyphIndex))continue;let h=t.get(l.glyphIndex);if(h.getPath(),h.points){let d;if(l.matchedPoints===void 0)d=ms(h.points,l);else{if(l.matchedPoints[0]>n.points.length-1||l.matchedPoints[1]>h.points.length-1)throw Error("Matched points out of range in "+n.name);let B=n.points[l.matchedPoints[0]],w=h.points[l.matchedPoints[1]],x={xScale:l.xScale,scale01:l.scale01,scale10:l.scale10,yScale:l.yScale,dx:0,dy:0};w=ms([w],x)[0],x.dx=B.x-w.x,x.dy=B.y-w.y,d=ms(h.points,x)}n.points=n.points.concat(d)}}}finally{s.delete(n.index)}}return qo(n.points)}function OE(t,n,s,a){let l=new dr.GlyphSet(a);for(let h=0;h<s.length-1;h+=1){let d=s[h],B=s[h+1];d!==B?l.push(h,dr.ttfGlyphLoader(a,h,Yc,t,n+d,Oc)):l.push(h,dr.glyphLoader(a,h))}return l}function NE(t,n,s,a){let l=new dr.GlyphSet(a);return a._push=function(h){let d=s[h],B=s[h+1];d!==B?l.push(h,dr.ttfGlyphLoader(a,h,Yc,t,n+d,Oc)):l.push(h,dr.glyphLoader(a,h))},l}function RE(t,n,s,a,l){return l.lowMemory?NE(t,n,s,a):OE(t,n,s,a)}var Nc={getPath:qo,parse:RE},GE=class{constructor(t){this.font=t}normalizeCoordTags(t){for(let n in t)if(n.length<4){let s=n.padEnd(4," ");t[s]===void 0&&(t[s]=t[n]),delete t[n]}}getNormalizedCoords(t){t||(t=this.font.variation.get());let n=[];this.normalizeCoordTags(t);for(let s=0;s<this.fvar().axes.length;s++){let a=this.fvar().axes[s],l=t[a.tag];l===void 0&&(l=a.defaultValue),l<a.defaultValue?n.push((l-a.defaultValue+Number.EPSILON)/(a.defaultValue-a.minValue+Number.EPSILON)):n.push((l-a.defaultValue+Number.EPSILON)/(a.maxValue-a.defaultValue+Number.EPSILON))}if(this.avar())for(let s=0;s<this.avar().axisSegmentMaps.length;s++){let a=this.avar().axisSegmentMaps[s];for(let l=0;l<a.axisValueMaps.length;l++){let h=a.axisValueMaps[l];if(l>=1&&n[s]<h.fromCoordinate){let d=a.axisValueMaps[l-1];n[s]=((n[s]-d.fromCoordinate)*(h.toCoordinate-d.toCoordinate)+Number.EPSILON)/(h.fromCoordinate-d.fromCoordinate+Number.EPSILON)+d.toCoordinate;break}}}return n}interpolatePoints(t,n,s){if(t.length===0)return;let a=0;for(;a<t.length;){let l=a,h=a,d=t[h];for(;!d.lastPointOfContour;)d=t[++h];for(;a<=h&&!s[a];)a++;if(a>h)continue;let B=a,w=a;for(a++;a<=h;)s[a]&&(this.deltaInterpolate(w+1,a-1,w,a,n,t),w=a),a++;w===B?this.deltaShift(l,h,w,n,t):(this.deltaInterpolate(w+1,h,w,B,n,t),B>0&&this.deltaInterpolate(l,B-1,w,B,n,t)),a=h+1}}deltaInterpolate(t,n,s,a,l,h){if(t>n)return;let d=["x","y"];for(let w=0;w<d.length;w++){let x=d[w];if(l[s][x]>l[a][x]){var B=s;s=a,a=B}let C=l[s][x],S=l[a][x],T=h[s][x],Y=h[a][x];if(C!==S||T===Y){let U=C===S?0:(Y-T)/(S-C);for(let L=t;L<=n;L++){let ee=l[L][x];ee<=C?ee+=T-C:ee>=S?ee+=Y-S:ee=T+(ee-C)*U,h[L][x]=ee}}}}deltaShift(t,n,s,a,l){let h=l[s].x-a[s].x,d=l[s].y-a[s].y;if(!(h===0&&d===0))for(let B=t;B<=n;B++)B!==s&&(l[B].x+=h,l[B].y+=d)}transformComponents(t,n,s,a,l,h){let d=0;for(let B=0;B<t.components.length;B++){let w=t.components[B],x=this.font.glyphs.get(w.glyphIndex),C=xE(w),S=a.indexOf(B);S>-1&&(C.dx+=Math.round(l.deltas[S]*h),C.dy+=Math.round(l.deltasY[S]*h));let T=ms(this.getTransform(x,s).points,C);n.splice(d,T.length,...T),d+=x.points.length}}applyTupleVariationStore(t,n,s,a="gvar",l={}){s||(s=this.font.variation.get());let h=this.getNormalizedCoords(s),{headers:d,sharedPoints:B}=t,w=this.fvar().axes.length,x;a==="gvar"?x=n.map(Mc):a==="cvar"&&(x=[...n]);for(let C=0;C<d.length;C++){let S=d[C],T=1;for(let U=0;U<w;U++){let L=[0];switch(a){case"gvar":L=S.peakTuple?S.peakTuple:this.gvar().sharedTuples[S.sharedTupleRecordsIndex];break;case"cvar":L=S.peakTuple;break}if(L[U]!==0){if(h[U]===0){T=0;break}if(S.intermediateStartTuple)if(h[U]<S.intermediateStartTuple[U]||h[U]>S.intermediateEndTuple[U]){T=0;break}else h[U]<L[U]?T=T*(h[U]-S.intermediateStartTuple[U]+Number.EPSILON)/(L[U]-S.intermediateStartTuple[U]+Number.EPSILON):T=T*(S.intermediateEndTuple[U]-h[U]+Number.EPSILON)/(S.intermediateEndTuple[U]-L[U]+Number.EPSILON);else{if(h[U]<Math.min(0,L[U])||h[U]>Math.max(0,L[U])){T=0;break}T=(T*h[U]+Number.EPSILON)/(L[U]+Number.EPSILON)}}}if(T===0)continue;let Y=S.privatePoints.length?S.privatePoints:B;if(a==="gvar"&&l.glyph&&l.glyph.isComposite)this.transformComponents(l.glyph,x,s,Y,S,T);else if(Y.length===0)for(let U=0;U<x.length;U++){let L=x[U];a==="gvar"?x[U]={x:Math.round(L.x+S.deltas[U]*T),y:Math.round(L.y+S.deltasY[U]*T),onCurve:L.onCurve,lastPointOfContour:L.lastPointOfContour}:a==="cvar"&&(x[U]=Math.round(L+S.deltas[U]*T))}else{let U;a==="gvar"?U=x.map(Mc):a==="cvar"&&(U=x);let L=Array(n.length).fill(!1);for(let ee=0;ee<Y.length;ee++){let Te=Y[ee];if(Te<n.length){let xe=U[Te];a==="gvar"?(L[Te]=!0,xe.x+=S.deltas[ee]*T,xe.y+=S.deltasY[ee]*T):a==="cvar"&&(x[Te]=Math.round(xe+S.deltas[ee]*T))}}if(a==="gvar"){this.interpolatePoints(U,x,L);for(let ee=0;ee<n.length;ee++){let Te=U[ee].x-x[ee].x,xe=U[ee].y-x[ee].y;x[ee].x=Math.round(x[ee].x+Te),x[ee].y=Math.round(x[ee].y+xe)}}}}return x}getTransform(t,n){Number.isInteger(t)&&(t=this.font.glyphs.get(t));let s=t.getBlendPath,a=!!(t.points&&t.points.length),l=t;if(s||a){if(n||(n=this.font.variation.get()),a){let h=this.gvar()&&this.gvar().glyphVariations[t.index];if(h){let d=t.points,B=this.applyTupleVariationStore(h,d,n,"gvar",{glyph:t});l=new Ui(Object.assign({},t,{points:B,path:qo(B)}))}}else if(s){let h=t.getBlendPath(n);l=new Ui(Object.assign({},t,{path:h}))}}return this.font.tables.hvar&&(t._advanceWidth=typeof t._advanceWidth<"u"?t._advanceWidth:t.advanceWidth,t.advanceWidth=l.advanceWidth=Math.round(t._advanceWidth+this.getVariableAdjustment(l.index,"hvar","advanceWidth",n)),t._leftSideBearing=typeof t._leftSideBearing<"u"?t._leftSideBearing:t.leftSideBearing,t.leftSideBearing=l.leftSideBearing=Math.round(t._leftSideBearing+this.getVariableAdjustment(l.index,"hvar","lsb",n))),l}getCvarTransform(t){let n=this.font.tables.cvt,s=this.cvar();return!n||!n.length||!s||!s.headers.length?n:this.applyTupleVariationStore(s,n,t,"cvar")}getVariableAdjustment(t,n,s,a){a=a||this.font.variation.get();let l,h,d=this.font.tables[n];if(!d)throw Error(`trying to get variation adjustment from non-existent table "${d}"`);if(!d.itemVariationStore)throw Error(`trying to get variation adjustment from table "${d}" which does not have an itemVariationStore`);let B=d[s]&&d[s].map.length;if(B){let w=t;w>=B&&(w=B-1),{outerIndex:l,innerIndex:h}=d[s].map[w]}else l=0,h=t;return this.getDelta(d.itemVariationStore,l,h,a)}getDelta(t,n,s,a){if(n>=t.itemVariationSubtables.length)return 0;let l=t.itemVariationSubtables[n];if(s>=l.deltaSets.length)return 0;let h=l.deltaSets[s],d=this.getBlendVector(t,n,a),B=0;for(let w=0;w<l.regionIndexes.length;w++)B+=h[w]*d[w];return B}getBlendVector(t,n,s){s||(s=this.font.variation.get());let a=t.itemVariationSubtables[n],l=this.getNormalizedCoords(s),h=[];for(let d=0;d<a.regionIndexes.length;d++){let B=1,w=a.regionIndexes[d],x=t.variationRegions[w].regionAxes;for(let C=0;C<x.length;C++){let S=x[C],T;S.startCoord>S.peakCoord||S.peakCoord>S.endCoord||S.startCoord<0&&S.endCoord>0&&S.peakCoord!==0||S.peakCoord===0?T=1:l[C]<S.startCoord||l[C]>S.endCoord?T=0:l[C]===S.peakCoord?T=1:l[C]<S.peakCoord?T=(l[C]-S.startCoord+Number.EPSILON)/(S.peakCoord-S.startCoord+Number.EPSILON):T=(S.endCoord-l[C]+Number.EPSILON)/(S.endCoord-S.peakCoord+Number.EPSILON),B*=T}h[d]=B}return h}avar(){return this.font.tables.avar}cvar(){return this.font.tables.cvar}fvar(){return this.font.tables.fvar}gvar(){return this.font.tables.gvar}hvar(){return this.font.tables.hvar}},LE=class{constructor(t){this.font=t,this.process=new GE(this.font),this.activateDefaultVariation(),this.getTransform=this.process.getTransform.bind(this.process)}activateDefaultVariation(){let t=this.getDefaultInstanceIndex();t>-1?this.set(t):this.set(this.getDefaultCoordinates())}getDefaultCoordinates(){return this.fvar().axes.reduce((t,n)=>(t[n.tag]=n.defaultValue,t),{})}getDefaultInstanceIndex(){let t=this.getDefaultCoordinates(),n=this.getInstanceIndex(t);return n<0&&(n=this.fvar().instances.findIndex(s=>s.name&&s.name.en==="Regular")),n}getInstanceIndex(t){return this.fvar().instances.findIndex(n=>Object.keys(t).every(s=>n.coordinates[s]===t[s]))}getInstance(t){return this.fvar().instances&&this.fvar().instances[t]}set(t){let n;if(Number.isInteger(t)){let s=this.getInstance(t);if(!s)throw Error(`Invalid instance index ${t}`);n={...s.coordinates}}else n=t,this.process.normalizeCoordTags(n);n=Object.assign({},this.font.defaultRenderOptions.variation,n),this.font.defaultRenderOptions=Object.assign({},this.font.defaultRenderOptions,{variation:n})}get(){return Object.assign({},this.font.defaultRenderOptions.variation)}avar(){return this.font.tables.avar}cvar(){return this.font.tables.cvar}fvar(){return this.font.tables.fvar}gvar(){return this.font.tables.gvar}hvar(){return this.font.tables.hvar}},Rc=1e6,Bs=64,Es=1e4,Gc,di,Lc,Ko;function Pc(t){this.font=t,this.getCommands=function(n){return Nc.getPath(n).commands},this._fpgmState=this._prepState=void 0,this._errorState=0}function PE(t){return t}function Hc(t){return Math.sign(t)*Math.round(Math.abs(t))}function HE(t){return Math.sign(t)*Math.round(Math.abs(t*2))/2}function WE(t){return Math.sign(t)*(Math.round(Math.abs(t)+.5)-.5)}function JE(t){return Math.sign(t)*Math.ceil(Math.abs(t))}function VE(t){return Math.sign(t)*Math.floor(Math.abs(t))}var Wc=function(t){let n=this.srPeriod,s=this.srPhase,a=this.srThreshold,l=1;return t<0&&(t=-t,l=-1),t+=a-s,t=Math.trunc(t/n)*n,t+=s,t<0?s*l:t*l},mr={x:1,y:0,axis:"x",distance:function(t,n,s,a){return(s?t.xo:t.x)-(a?n.xo:n.x)},interpolate:function(t,n,s,a){let l,h,d,B,w,x,C;if(!a||a===this){if(l=t.xo-n.xo,h=t.xo-s.xo,w=n.x-n.xo,x=s.x-s.xo,d=Math.abs(l),B=Math.abs(h),C=d+B,C===0){t.x=t.xo+(w+x)/2;return}t.x=t.xo+(w*B+x*d)/C;return}if(l=a.distance(t,n,!0,!0),h=a.distance(t,s,!0,!0),w=a.distance(n,n,!1,!0),x=a.distance(s,s,!1,!0),d=Math.abs(l),B=Math.abs(h),C=d+B,C===0){mr.setRelative(t,t,(w+x)/2,a,!0);return}mr.setRelative(t,t,(w*B+x*d)/C,a,!0)},normalSlope:Number.NEGATIVE_INFINITY,setRelative:function(t,n,s,a,l){if(!a||a===this){t.x=(l?n.xo:n.x)+s;return}let h=l?n.xo:n.x,d=l?n.yo:n.y,B=h+s*a.x,w=d+s*a.y;t.x=B+(t.y-w)/a.normalSlope},slope:0,touch:function(t){t.xTouched=!0},touched:function(t){return t.xTouched},untouch:function(t){t.xTouched=!1}},Sr={x:0,y:1,axis:"y",distance:function(t,n,s,a){return(s?t.yo:t.y)-(a?n.yo:n.y)},interpolate:function(t,n,s,a){let l,h,d,B,w,x,C;if(!a||a===this){if(l=t.yo-n.yo,h=t.yo-s.yo,w=n.y-n.yo,x=s.y-s.yo,d=Math.abs(l),B=Math.abs(h),C=d+B,C===0){t.y=t.yo+(w+x)/2;return}t.y=t.yo+(w*B+x*d)/C;return}if(l=a.distance(t,n,!0,!0),h=a.distance(t,s,!0,!0),w=a.distance(n,n,!1,!0),x=a.distance(s,s,!1,!0),d=Math.abs(l),B=Math.abs(h),C=d+B,C===0){Sr.setRelative(t,t,(w+x)/2,a,!0);return}Sr.setRelative(t,t,(w*B+x*d)/C,a,!0)},normalSlope:0,setRelative:function(t,n,s,a,l){if(!a||a===this){t.y=(l?n.yo:n.y)+s;return}let h=l?n.xo:n.x,d=l?n.yo:n.y,B=h+s*a.x,w=d+s*a.y;t.y=w+a.normalSlope*(t.x-B)},slope:Number.POSITIVE_INFINITY,touch:function(t){t.yTouched=!0},touched:function(t){return t.yTouched},untouch:function(t){t.yTouched=!1}};Object.freeze(mr),Object.freeze(Sr);function En(t,n){this.x=t,this.y=n,this.axis=void 0,this.slope=n/t,this.normalSlope=-t/n,Object.freeze(this)}En.prototype.distance=function(t,n,s,a){return this.x*mr.distance(t,n,s,a)+this.y*Sr.distance(t,n,s,a)},En.prototype.interpolate=function(t,n,s,a){let l,h,d,B,w,x,C;if(d=a.distance(t,n,!0,!0),B=a.distance(t,s,!0,!0),l=a.distance(n,n,!1,!0),h=a.distance(s,s,!1,!0),w=Math.abs(d),x=Math.abs(B),C=w+x,C===0){this.setRelative(t,t,(l+h)/2,a,!0);return}this.setRelative(t,t,(l*x+h*w)/C,a,!0)},En.prototype.setRelative=function(t,n,s,a,l){a=a||this;let h=l?n.xo:n.x,d=l?n.yo:n.y,B=h+s*a.x,w=d+s*a.y,x=a.normalSlope,C=this.slope,S=t.x,T=t.y;t.x=(C*S-x*B+w-T)/(C-x),t.y=C*(t.x-S)+T},En.prototype.touch=function(t){t.xTouched=!0,t.yTouched=!0};function wn(t,n){let s=Math.sqrt(t*t+n*n);return t/=s,n/=s,t===1&&n===0?mr:t===0&&n===1?Sr:new En(t,n)}function Dr(t,n,s,a){this.x=this.xo=Math.round(t*64)/64,this.y=this.yo=Math.round(n*64)/64,this.lastPointOfContour=s,this.onCurve=a,this.prevPointOnContour=void 0,this.nextPointOnContour=void 0,this.xTouched=!1,this.yTouched=!1,Object.preventExtensions(this)}Dr.prototype.nextTouched=function(t){let n=this.nextPointOnContour;for(;!t.touched(n)&&n!==this;)n=n.nextPointOnContour;return n},Dr.prototype.prevTouched=function(t){let n=this.prevPointOnContour;for(;!t.touched(n)&&n!==this;)n=n.prevPointOnContour;return n};var yn=Object.freeze(new Dr(0,0)),jE={cvCutIn:17/16,deltaBase:9,deltaShift:.125,loop:1,minDis:1,autoFlip:!0};function jr(t,n){switch(this.env=t,this.stack=[],this.prog=n,t){case"glyf":this.zp0=this.zp1=this.zp2=1,this.rp0=this.rp1=this.rp2=0;case"prep":this.fv=this.pv=this.dpv=mr,this.round=Hc}}Pc.prototype.exec=function(t,n){if(typeof n!="number")throw new Error("Point size is not a number!");if(this._errorState>2)return;let s=this.font,a=this._prepState;if(!a||a.ppem!==n){let l=this._fpgmState;if(!l){jr.prototype=jE,l=this._fpgmState=new jr("fpgm",s.tables.fpgm),l.funcs=[],l.font=s,l.instructionCount=0,l.callDepth=0;try{di(l)}catch(d){console.log("Hinting error in FPGM:"+d),this._errorState=3;return}}jr.prototype=l,a=this._prepState=new jr("prep",s.tables.prep),a.ppem=n,a.instructionCount=0,a.callDepth=0;let h=s.variation&&s.variation.process.getCvarTransform()||s.tables.cvt;if(h){let d=a.cvt=new Array(h.length),B=n/s.unitsPerEm;for(let w=0;w<h.length;w++)d[w]=h[w]*B}else a.cvt=[];try{di(a)}catch(d){this._errorState<2&&console.log("Hinting error in PREP:"+d),this._errorState=2}}if(!(this._errorState>1))try{return Lc(t,a)}catch(l){this._errorState<1&&(console.log("Hinting error:"+l),console.log("Note: further hinting errors are silenced")),this._errorState=1;return}},Lc=function(t,n){let s=n.ppem/n.font.unitsPerEm,a=s,l=t.components,h,d,B;if(jr.prototype=n,!l)B=new jr("glyf",t.instructions),B.instructionCount=0,B.callDepth=0,Ko(t,B,s,a),d=B.gZone;else{let w=n.font;d=[],h=[];for(let x=0;x<l.length;x++){let C=l[x],S=w.glyphs.get(C.glyphIndex);B=new jr("glyf",S.instructions),B.instructionCount=0,B.callDepth=0,Ko(S,B,s,a);let T=Math.round(C.dx*s),Y=Math.round(C.dy*a),U=B.gZone,L=B.contours;for(let Te=0;Te<U.length;Te++){let xe=U[Te];xe.xTouched=xe.yTouched=!1,xe.xo=xe.x=xe.x+T,xe.yo=xe.y=xe.y+Y}let ee=d.length;d.push.apply(d,U);for(let Te=0;Te<L.length;Te++)h.push(L[Te]+ee)}t.instructions&&!B.inhibitGridFit&&(B=new jr("glyf",t.instructions),B.gZone=B.z0=B.z1=B.z2=d,B.contours=h,d.push(new Dr(0,0),new Dr(Math.round(t.advanceWidth*s),0)),di(B),d.length-=2)}return d},Ko=function(t,n,s,a){let l=t.points||[],h=l.length,d=n.gZone=n.z0=n.z1=n.z2=[],B=n.contours=[],w;for(let S=0;S<h;S++)w=l[S],d[S]=new Dr(w.x*s,w.y*a,w.lastPointOfContour,w.onCurve);let x,C;for(let S=0;S<h;S++)w=d[S],x||(x=w,B.push(S)),w.lastPointOfContour?(w.nextPointOnContour=x,x.prevPointOnContour=w,x=void 0):(C=d[S+1],w.nextPointOnContour=C,C.prevPointOnContour=w);n.inhibitGridFit||(d.push(new Dr(0,0),new Dr(Math.round(t.advanceWidth*s),0)),di(n),d.length-=2)},di=function(t){let n=t.prog;if(!n)return;let s=n.length,a;for(t.ip=0;t.ip<s;t.ip++){if(++t.instructionCount>Rc)throw new Error("Hinting instructions exceeded maximum of "+Rc);if(a=Gc[n[t.ip]],!a)throw new Error("unknown instruction: 0x"+Number(n[t.ip]).toString(16));a(t)}};function ws(t){let n=t.tZone=new Array(t.gZone.length);for(let s=0;s<n.length;s++)n[s]=new Dr(0,0)}function Jc(t,n){let s=t.prog,a=t.ip,l=1,h;do if(h=s[++a],h===88)l++;else if(h===89)l--;else if(h===64)a+=s[a+1]+1;else if(h===65)a+=2*s[a+1]+1;else if(h>=176&&h<=183)a+=h-176+1;else if(h>=184&&h<=191)a+=(h-184+1)*2;else if(n&&l===1&&h===27)break;while(l>0);t.ip=a}function Vc(t,n){n.fv=n.pv=n.dpv=t}function jc(t,n){n.pv=n.dpv=t}function _c(t,n){n.fv=t}function Zc(t,n){let s=n.stack,a=s.pop(),l=s.pop(),h=n.z2[a],d=n.z1[l],B,w;t?(B=h.y-d.y,w=d.x-h.x):(B=d.x-h.x,w=d.y-h.y),n.pv=n.dpv=wn(B,w)}function Xc(t,n){let s=n.stack,a=s.pop(),l=s.pop(),h=n.z2[a],d=n.z1[l],B,w;t?(B=h.y-d.y,w=d.x-h.x):(B=d.x-h.x,w=d.y-h.y),n.fv=wn(B,w)}function _E(t){let n=t.stack,s=n.pop(),a=n.pop();t.pv=t.dpv=wn(a,s)}function ZE(t){let n=t.stack,s=n.pop(),a=n.pop();t.fv=wn(a,s)}function XE(t){let n=t.stack,s=t.pv;n.push(s.x*16384),n.push(s.y*16384)}function zE(t){let n=t.stack,s=t.fv;n.push(s.x*16384),n.push(s.y*16384)}function qE(t){t.fv=t.pv}function KE(t){let n=t.stack,s=n.pop(),a=n.pop(),l=n.pop(),h=n.pop(),d=n.pop(),B=t.z0,w=t.z1,x=B[s],C=B[a],S=w[l],T=w[h],Y=t.z2[d],U=x.x,L=x.y,ee=C.x,Te=C.y,xe=S.x,Re=S.y,Je=T.x,$e=T.y,nt=(U-ee)*(Re-$e)-(L-Te)*(xe-Je),st=U*Te-L*ee,Bt=xe*$e-Re*Je;Y.x=(st*(xe-Je)-Bt*(U-ee))/nt,Y.y=(st*(Re-$e)-Bt*(L-Te))/nt}function $E(t){t.rp0=t.stack.pop()}function e1(t){t.rp1=t.stack.pop()}function t1(t){t.rp2=t.stack.pop()}function r1(t){let n=t.stack.pop();switch(t.zp0=n,n){case 0:t.tZone||ws(t),t.z0=t.tZone;break;case 1:t.z0=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function i1(t){let n=t.stack.pop();switch(t.zp1=n,n){case 0:t.tZone||ws(t),t.z1=t.tZone;break;case 1:t.z1=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function n1(t){let n=t.stack.pop();switch(t.zp2=n,n){case 0:t.tZone||ws(t),t.z2=t.tZone;break;case 1:t.z2=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function s1(t){let n=t.stack.pop();switch(t.zp0=t.zp1=t.zp2=n,n){case 0:t.tZone||ws(t),t.z0=t.z1=t.z2=t.tZone;break;case 1:t.z0=t.z1=t.z2=t.gZone;break;default:throw new Error("Invalid zone pointer")}}function o1(t){t.loop=t.stack.pop(),t.loop>Es&&(t.loop=Es)}function a1(t){t.round=Hc}function A1(t){t.round=WE}function l1(t){let n=t.stack.pop();t.minDis=n/64}function c1(t){Jc(t,!1)}function u1(t){let n=t.stack.pop();t.ip+=n-1}function h1(t){let n=t.stack.pop();t.cvCutIn=n/64}function f1(t){let n=t.stack;n.push(n[n.length-1])}function $o(t){t.stack.pop()}function p1(t){t.stack.length=0}function d1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(s),n.push(a)}function g1(t){let n=t.stack;n.push(n.length)}function m1(t){let n=t.stack,s=n.pop(),a=n.pop();if(a>Es&&(a=Es),++t.callDepth>Bs)throw new Error("Hinting call depth exceeded maximum of "+Bs);let l=t.ip,h=t.prog;t.prog=t.funcs[s];for(let d=0;d<a;d++)di(t);t.ip=l,t.prog=h,t.callDepth--}function B1(t){let n=t.stack.pop();if(++t.callDepth>Bs)throw new Error("Hinting call depth exceeded maximum of "+Bs);let s=t.ip,a=t.prog;t.prog=t.funcs[n],di(t),t.ip=s,t.prog=a,t.callDepth--}function E1(t){let n=t.stack,s=n.pop();n.push(n[n.length-s])}function w1(t){let n=t.stack,s=n.pop();n.push(n.splice(n.length-s,1)[0])}function y1(t){if(t.env!=="fpgm")throw new Error("FDEF not allowed here");let n=t.stack,s=t.prog,a=t.ip,l=n.pop(),h=a;for(;s[++a]!==45;);t.ip=a,t.funcs[l]=s.slice(h+1,a)}function zc(t,n){let s=n.stack.pop(),a=n.z0[s],l=n.fv,h=n.pv,d=h.distance(a,yn);t&&(d=n.round(d)),l.setRelative(a,yn,d,h),l.touch(a),n.rp0=n.rp1=s}function qc(t,n){let s=n.z2,a=s.length-2,l,h,d;for(let B=0;B<a;B++)l=s[B],!t.touched(l)&&(h=l.prevTouched(t),h!==l&&(d=l.nextTouched(t),h===d&&t.setRelative(l,l,t.distance(h,h,!1,!0),t,!0),t.interpolate(l,h,d,t)))}function Kc(t,n){let s=n.stack,a=t?n.rp1:n.rp2,l=(t?n.z0:n.z1)[a],h=n.fv,d=n.pv,B=n.loop,w=n.z2;for(;B--;){let x=s.pop(),C=w[x],S=d.distance(l,l,!1,!0);h.setRelative(C,C,S,d),h.touch(C)}n.loop=1}function $c(t,n){let s=n.stack,a=t?n.rp1:n.rp2,l=(t?n.z0:n.z1)[a],h=n.fv,d=n.pv,B=s.pop(),w=n.z2[n.contours[B]],x=w,C=d.distance(l,l,!1,!0);do x!==l&&h.setRelative(x,x,C,d),x=x.nextPointOnContour;while(x!==w)}function eu(t,n){let s=n.stack,a=t?n.rp1:n.rp2,l=(t?n.z0:n.z1)[a],h=n.fv,d=n.pv,B=s.pop(),w;switch(B){case 0:w=n.tZone;break;case 1:w=n.gZone;break;default:throw new Error("Invalid zone")}let x,C=d.distance(l,l,!1,!0),S=w.length-2;for(let T=0;T<S;T++)x=w[T],h.setRelative(x,x,C,d)}function C1(t){let n=t.stack,s=t.loop,a=t.fv,l=n.pop()/64,h=t.z2;for(;s--;){let d=n.pop(),B=h[d];a.setRelative(B,B,l),a.touch(B)}t.loop=1}function b1(t){let n=t.stack,s=t.rp1,a=t.rp2,l=t.loop,h=t.z0[s],d=t.z1[a],B=t.fv,w=t.dpv,x=t.z2;for(;l--;){let C=n.pop(),S=x[C];B.interpolate(S,h,d,w),B.touch(S)}t.loop=1}function tu(t,n){let s=n.stack,a=s.pop()/64,l=s.pop(),h=n.z1[l],d=n.z0[n.rp0],B=n.fv,w=n.pv;B.setRelative(h,d,a,w),B.touch(h),n.rp1=n.rp0,n.rp2=l,t&&(n.rp0=l)}function x1(t){let n=t.stack,s=t.rp0,a=t.z0[s],l=t.loop,h=t.fv,d=t.pv,B=t.z1;for(;l--;){let w=n.pop(),x=B[w];h.setRelative(x,a,0,d),h.touch(x)}t.loop=1}function Q1(t){t.round=HE}function ru(t,n){let s=n.stack,a=s.pop(),l=s.pop(),h=n.z0[l],d=n.fv,B=n.pv,w=n.cvt[a],x=B.distance(h,yn);t&&(Math.abs(x-w)<n.cvCutIn&&(x=w),x=n.round(x)),d.setRelative(h,yn,x,B),n.zp0===0&&(h.xo=h.x,h.yo=h.y),d.touch(h),n.rp0=n.rp1=l}function v1(t){let n=t.prog,s=t.ip,a=t.stack,l=n[++s];for(let h=0;h<l;h++)a.push(n[++s]);t.ip=s}function I1(t){let n=t.ip,s=t.prog,a=t.stack,l=s[++n];for(let h=0;h<l;h++){let d=s[++n]<<8|s[++n];d&32768&&(d=-((d^65535)+1)),a.push(d)}t.ip=n}function F1(t){let n=t.stack,s=t.store;s||(s=t.store=[]);let a=n.pop(),l=n.pop();s[l]=a}function T1(t){let n=t.stack,s=t.store,a=n.pop(),l=s&&s[a]||0;n.push(l)}function S1(t){let n=t.stack,s=n.pop(),a=n.pop();t.cvt[a]=s/64}function D1(t){let n=t.stack,s=n.pop();n.push(t.cvt[s]*64)}function iu(t,n){let s=n.stack,a=s.pop(),l=n.z2[a];s.push(n.dpv.distance(l,yn,t,!1)*64)}function nu(t,n){let s=n.stack,a=s.pop(),l=s.pop(),h=n.z1[a],d=n.z0[l],B=n.dpv.distance(d,h,t,t);n.stack.push(Math.round(B*64))}function M1(t){t.stack.push(t.ppem)}function U1(t){t.autoFlip=!0}function k1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(a<s?1:0)}function Y1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(a<=s?1:0)}function O1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(a>s?1:0)}function N1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(a>=s?1:0)}function R1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(s===a?1:0)}function G1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(s!==a?1:0)}function L1(t){let n=t.stack,s=n.pop();n.push(Math.trunc(s)&1?1:0)}function P1(t){let n=t.stack,s=n.pop();n.push(Math.trunc(s)&1?0:1)}function H1(t){let n=t.stack.pop(),s;n||Jc(t,!0)}function W1(t){}function J1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(s&&a?1:0)}function V1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(s||a?1:0)}function j1(t){let n=t.stack,s=n.pop();n.push(s?0:1)}function ea(t,n){let s=n.stack,a=s.pop(),l=n.fv,h=n.pv,d=n.ppem,B=n.deltaBase+(t-1)*16,w=n.deltaShift,x=n.z0;for(let C=0;C<a;C++){let S=s.pop(),T=s.pop();if(B+((T&240)>>4)!==d)continue;let U=(T&15)-8;U>=0&&U++;let L=x[S];l.setRelative(L,L,U*w,h)}}function _1(t){let s=t.stack.pop();t.deltaBase=s}function Z1(t){let s=t.stack.pop();t.deltaShift=Math.pow(.5,s)}function X1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(a+s)}function z1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(a-s)}function q1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(a*64/s)}function K1(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(a*s/64)}function $1(t){let n=t.stack,s=n.pop();n.push(Math.abs(s))}function ew(t){let n=t.stack,s=n.pop();n.push(-s)}function tw(t){let n=t.stack,s=n.pop();n.push(Math.floor(s/64)*64)}function rw(t){let n=t.stack,s=n.pop();n.push(Math.ceil(s/64)*64)}function ys(t,n){let s=n.stack,a=s.pop();s.push(n.round(a/64)*64)}function iw(t){let n=t.stack,s=n.pop(),a=n.pop();t.cvt[a]=s*t.ppem/t.font.unitsPerEm}function ta(t,n){let s=n.stack,a=s.pop(),l=n.ppem,h=n.deltaBase+(t-1)*16,d=n.deltaShift;for(let B=0;B<a;B++){let w=s.pop(),x=s.pop();if(h+((x&240)>>4)!==l)continue;let S=(x&15)-8;S>=0&&S++;let T=S*d;n.cvt[w]+=T}}function nw(t){let n=t.stack.pop();t.round=Wc;let s;switch(n&192){case 0:s=.5;break;case 64:s=1;break;case 128:s=2;break;default:throw new Error("invalid SROUND value")}switch(t.srPeriod=s,n&48){case 0:t.srPhase=0;break;case 16:t.srPhase=.25*s;break;case 32:t.srPhase=.5*s;break;case 48:t.srPhase=.75*s;break;default:throw new Error("invalid SROUND value")}n&=15,n===0?t.srThreshold=0:t.srThreshold=(n/8-.5)*s}function sw(t){let n=t.stack.pop();t.round=Wc;let s;switch(n&192){case 0:s=Math.sqrt(2)/2;break;case 64:s=Math.sqrt(2);break;case 128:s=2*Math.sqrt(2);break;default:throw new Error("invalid S45ROUND value")}switch(t.srPeriod=s,n&48){case 0:t.srPhase=0;break;case 16:t.srPhase=.25*s;break;case 32:t.srPhase=.5*s;break;case 48:t.srPhase=.75*s;break;default:throw new Error("invalid S45ROUND value")}n&=15,n===0?t.srThreshold=0:t.srThreshold=(n/8-.5)*s}function ow(t){t.round=PE}function aw(t){t.round=JE}function Aw(t){t.round=VE}function lw(t){let n=t.stack.pop()}function su(t,n){let s=n.stack,a=s.pop(),l=s.pop(),h=n.z2[a],d=n.z1[l],B,w;t?(B=h.y-d.y,w=d.x-h.x):(B=d.x-h.x,w=d.y-h.y),n.dpv=wn(B,w)}function cw(t){let n=t.stack,s=n.pop(),a=0;s&1&&(a=35),s&32&&(a|=4096),n.push(a)}function uw(t){let n=t.stack,s=n.pop(),a=n.pop(),l=n.pop();n.push(a),n.push(s),n.push(l)}function hw(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(Math.max(a,s))}function fw(t){let n=t.stack,s=n.pop(),a=n.pop();n.push(Math.min(a,s))}function pw(t){let n=t.stack.pop()}function dw(t){let n=t.stack.pop(),s=t.stack.pop();switch(n){case 1:t.inhibitGridFit=!!s;return;case 2:t.ignoreCvt=!!s;return;default:throw new Error("invalid INSTCTRL[] selector")}}function _r(t,n){let s=n.stack,a=n.prog,l=n.ip;for(let h=0;h<t;h++)s.push(a[++l]);n.ip=l}function Zr(t,n){let s=n.ip,a=n.prog,l=n.stack;for(let h=0;h<t;h++){let d=a[++s]<<8|a[++s];d&32768&&(d=-((d^65535)+1)),l.push(d)}n.ip=s}function Ie(t,n,s,a,l,h){let d=h.stack,B=t&&d.pop(),w=d.pop(),x=h.rp0,C=h.z0[x],S=h.z1[w],T=h.minDis,Y=h.fv,U=h.dpv,L,ee,Te,xe;ee=L=U.distance(S,C,!0,!0),Te=ee>=0?1:-1,ee=Math.abs(ee),t&&(xe=h.cvt[B],a&&Math.abs(ee-xe)<h.cvCutIn&&(ee=xe)),s&&ee<T&&(ee=T),a&&(ee=h.round(ee)),Y.setRelative(S,C,Te*ee,U),Y.touch(S),h.rp1=h.rp0,h.rp2=w,n&&(h.rp0=w)}Gc=[Vc.bind(void 0,Sr),Vc.bind(void 0,mr),jc.bind(void 0,Sr),jc.bind(void 0,mr),_c.bind(void 0,Sr),_c.bind(void 0,mr),Zc.bind(void 0,0),Zc.bind(void 0,1),Xc.bind(void 0,0),Xc.bind(void 0,1),_E,ZE,XE,zE,qE,KE,$E,e1,t1,r1,i1,n1,s1,o1,a1,A1,l1,c1,u1,h1,void 0,void 0,f1,$o,p1,d1,g1,E1,w1,void 0,void 0,void 0,m1,B1,y1,void 0,zc.bind(void 0,0),zc.bind(void 0,1),qc.bind(void 0,Sr),qc.bind(void 0,mr),Kc.bind(void 0,0),Kc.bind(void 0,1),$c.bind(void 0,0),$c.bind(void 0,1),eu.bind(void 0,0),eu.bind(void 0,1),C1,b1,tu.bind(void 0,0),tu.bind(void 0,1),x1,Q1,ru.bind(void 0,0),ru.bind(void 0,1),v1,I1,F1,T1,S1,D1,iu.bind(void 0,0),iu.bind(void 0,1),void 0,nu.bind(void 0,0),nu.bind(void 0,1),M1,void 0,U1,void 0,void 0,k1,Y1,O1,N1,R1,G1,L1,P1,H1,W1,J1,V1,j1,ea.bind(void 0,1),_1,Z1,X1,z1,q1,K1,$1,ew,tw,rw,ys.bind(void 0,0),ys.bind(void 0,1),ys.bind(void 0,2),ys.bind(void 0,3),void 0,void 0,void 0,void 0,iw,ea.bind(void 0,2),ea.bind(void 0,3),ta.bind(void 0,1),ta.bind(void 0,2),ta.bind(void 0,3),nw,sw,void 0,void 0,ow,void 0,aw,Aw,$o,$o,void 0,void 0,void 0,void 0,void 0,lw,su.bind(void 0,0),su.bind(void 0,1),cw,void 0,uw,hw,fw,pw,dw,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,_r.bind(void 0,1),_r.bind(void 0,2),_r.bind(void 0,3),_r.bind(void 0,4),_r.bind(void 0,5),_r.bind(void 0,6),_r.bind(void 0,7),_r.bind(void 0,8),Zr.bind(void 0,1),Zr.bind(void 0,2),Zr.bind(void 0,3),Zr.bind(void 0,4),Zr.bind(void 0,5),Zr.bind(void 0,6),Zr.bind(void 0,7),Zr.bind(void 0,8),Ie.bind(void 0,0,0,0,0,0),Ie.bind(void 0,0,0,0,0,1),Ie.bind(void 0,0,0,0,0,2),Ie.bind(void 0,0,0,0,0,3),Ie.bind(void 0,0,0,0,1,0),Ie.bind(void 0,0,0,0,1,1),Ie.bind(void 0,0,0,0,1,2),Ie.bind(void 0,0,0,0,1,3),Ie.bind(void 0,0,0,1,0,0),Ie.bind(void 0,0,0,1,0,1),Ie.bind(void 0,0,0,1,0,2),Ie.bind(void 0,0,0,1,0,3),Ie.bind(void 0,0,0,1,1,0),Ie.bind(void 0,0,0,1,1,1),Ie.bind(void 0,0,0,1,1,2),Ie.bind(void 0,0,0,1,1,3),Ie.bind(void 0,0,1,0,0,0),Ie.bind(void 0,0,1,0,0,1),Ie.bind(void 0,0,1,0,0,2),Ie.bind(void 0,0,1,0,0,3),Ie.bind(void 0,0,1,0,1,0),Ie.bind(void 0,0,1,0,1,1),Ie.bind(void 0,0,1,0,1,2),Ie.bind(void 0,0,1,0,1,3),Ie.bind(void 0,0,1,1,0,0),Ie.bind(void 0,0,1,1,0,1),Ie.bind(void 0,0,1,1,0,2),Ie.bind(void 0,0,1,1,0,3),Ie.bind(void 0,0,1,1,1,0),Ie.bind(void 0,0,1,1,1,1),Ie.bind(void 0,0,1,1,1,2),Ie.bind(void 0,0,1,1,1,3),Ie.bind(void 0,1,0,0,0,0),Ie.bind(void 0,1,0,0,0,1),Ie.bind(void 0,1,0,0,0,2),Ie.bind(void 0,1,0,0,0,3),Ie.bind(void 0,1,0,0,1,0),Ie.bind(void 0,1,0,0,1,1),Ie.bind(void 0,1,0,0,1,2),Ie.bind(void 0,1,0,0,1,3),Ie.bind(void 0,1,0,1,0,0),Ie.bind(void 0,1,0,1,0,1),Ie.bind(void 0,1,0,1,0,2),Ie.bind(void 0,1,0,1,0,3),Ie.bind(void 0,1,0,1,1,0),Ie.bind(void 0,1,0,1,1,1),Ie.bind(void 0,1,0,1,1,2),Ie.bind(void 0,1,0,1,1,3),Ie.bind(void 0,1,1,0,0,0),Ie.bind(void 0,1,1,0,0,1),Ie.bind(void 0,1,1,0,0,2),Ie.bind(void 0,1,1,0,0,3),Ie.bind(void 0,1,1,0,1,0),Ie.bind(void 0,1,1,0,1,1),Ie.bind(void 0,1,1,0,1,2),Ie.bind(void 0,1,1,0,1,3),Ie.bind(void 0,1,1,1,0,0),Ie.bind(void 0,1,1,1,0,1),Ie.bind(void 0,1,1,1,0,2),Ie.bind(void 0,1,1,1,0,3),Ie.bind(void 0,1,1,1,1,0),Ie.bind(void 0,1,1,1,1,1),Ie.bind(void 0,1,1,1,1,2),Ie.bind(void 0,1,1,1,1,3)];var gw=Pc;function Oi(t){this.char=t,this.state={},this.activeState=null}function ra(t,n,s){this.contextName=s,this.startIndex=t,this.endOffset=n}function mw(t,n,s){this.contextName=t,this.openRange=null,this.ranges=[],this.checkStart=n,this.checkEnd=s}function St(t,n){this.context=t,this.index=n,this.length=t.length,this.current=t[n],this.backtrack=t.slice(0,n),this.lookahead=t.slice(n+1)}function Cs(t){this.eventId=t,this.subscribers=[]}function Bw(t){let n=["start","end","next","newToken","contextStart","contextEnd","insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD","updateContextsRanges"];for(let a=0;a<n.length;a++){let l=n[a];Object.defineProperty(this.events,l,{value:new Cs(l)})}if(t)for(let a=0;a<n.length;a++){let l=n[a],h=t[l];typeof h=="function"&&this.events[l].subscribe(h)}let s=["insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD"];for(let a=0;a<s.length;a++){let l=s[a];this.events[l].subscribe(this.updateContextsRanges)}}function dt(t){this.tokens=[],this.registeredContexts={},this.contextCheckers=[],this.events={},this.registeredModifiers=[],Bw.call(this,t)}Oi.prototype.setState=function(t,n){return this.state[t]=n,this.activeState={key:t,value:this.state[t]},this.activeState},Oi.prototype.getState=function(t){return this.state[t]||null},dt.prototype.inboundIndex=function(t){return t>=0&&t<this.tokens.length},dt.prototype.composeRUD=function(t){let s=t.map(l=>this[l[0]].apply(this,l.slice(1).concat(!0))),a=l=>typeof l=="object"&&Object.prototype.hasOwnProperty.call(l,"FAIL");if(s.every(a))return{FAIL:"composeRUD: one or more operations hasn't completed successfully",report:s.filter(a)};this.dispatch("composeRUD",[s.filter(l=>!a(l))])},dt.prototype.replaceRange=function(t,n,s,a){n=n!==null?n:this.tokens.length;let l=s.every(h=>h instanceof Oi);if(!isNaN(t)&&this.inboundIndex(t)&&l){let h=this.tokens.splice.apply(this.tokens,[t,n].concat(s));return a||this.dispatch("replaceToken",[t,n,s]),[h,s]}else return{FAIL:"replaceRange: invalid tokens or startIndex."}},dt.prototype.replaceToken=function(t,n,s){if(!isNaN(t)&&this.inboundIndex(t)&&n instanceof Oi){let a=this.tokens.splice(t,1,n);return s||this.dispatch("replaceToken",[t,n]),[a[0],n]}else return{FAIL:"replaceToken: invalid token or index."}},dt.prototype.removeRange=function(t,n,s){n=isNaN(n)?this.tokens.length:n;let a=this.tokens.splice(t,n);return s||this.dispatch("removeRange",[a,t,n]),a},dt.prototype.removeToken=function(t,n){if(!isNaN(t)&&this.inboundIndex(t)){let s=this.tokens.splice(t,1);return n||this.dispatch("removeToken",[s,t]),s}else return{FAIL:"removeToken: invalid token index."}},dt.prototype.insertToken=function(t,n,s){return t.every(l=>l instanceof Oi)?(this.tokens.splice.apply(this.tokens,[n,0].concat(t)),s||this.dispatch("insertToken",[t,n]),t):{FAIL:"insertToken: invalid token(s)."}},dt.prototype.registerModifier=function(t,n,s){this.events.newToken.subscribe(function(a,l){let h=[a,l],d=n===null||n.apply(this,h)===!0,B=[a,l];if(d){let w=s.apply(this,B);a.setState(t,w)}}),this.registeredModifiers.push(t)},Cs.prototype.subscribe=function(t){return typeof t=="function"?this.subscribers.push(t)-1:{FAIL:`invalid '${this.eventId}' event handler`}},Cs.prototype.unsubscribe=function(t){this.subscribers.splice(t,1)},St.prototype.setCurrentIndex=function(t){this.index=t,this.current=this.context[t],this.backtrack=this.context.slice(0,t),this.lookahead=this.context.slice(t+1)},St.prototype.get=function(t){switch(!0){case t===0:return this.current;case(t<0&&Math.abs(t)<=this.backtrack.length):return this.backtrack.slice(t)[0];case(t>0&&t<=this.lookahead.length):return this.lookahead[t-1];default:return null}},dt.prototype.rangeToText=function(t){if(t instanceof ra)return this.getRangeTokens(t).map(n=>n.char).join("")},dt.prototype.getText=function(){return this.tokens.map(t=>t.char).join("")},dt.prototype.getContext=function(t){let n=this.registeredContexts[t];return n||null},dt.prototype.on=function(t,n){let s=this.events[t];return s?s.subscribe(n):null},dt.prototype.dispatch=function(t,n){let s=this.events[t];if(s instanceof Cs)for(let a=0;a<s.subscribers.length;a++)s.subscribers[a].apply(this,n||[])},dt.prototype.registerContextChecker=function(t,n,s){if(this.getContext(t))return{FAIL:`context name '${t}' is already registered.`};if(typeof n!="function")return{FAIL:"missing context start check."};if(typeof s!="function")return{FAIL:"missing context end check."};let a=new mw(t,n,s);return this.registeredContexts[t]=a,this.contextCheckers.push(a),a},dt.prototype.getRangeTokens=function(t){let n=t.startIndex+t.endOffset;return[].concat(this.tokens.slice(t.startIndex,n))},dt.prototype.getContextRanges=function(t){let n=this.getContext(t);return n?n.ranges:{FAIL:`context checker '${t}' is not registered.`}},dt.prototype.resetContextsRanges=function(){let t=this.registeredContexts;for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)){let s=t[n];s.ranges=[]}},dt.prototype.updateContextsRanges=function(){this.resetContextsRanges();let t=this.tokens.map(n=>n.char);for(let n=0;n<t.length;n++){let s=new St(t,n);this.runContextCheck(s)}this.dispatch("updateContextsRanges",[this.registeredContexts])},dt.prototype.setEndOffset=function(t,n){let s=this.getContext(n).openRange.startIndex,a=new ra(s,t,n),l=this.getContext(n).ranges;return a.rangeId=`${n}.${l.length}`,l.push(a),this.getContext(n).openRange=null,a},dt.prototype.runContextCheck=function(t){let n=t.index;for(let s=0;s<this.contextCheckers.length;s++){let a=this.contextCheckers[s],l=a.contextName,h=this.getContext(l).openRange;if(!h&&a.checkStart(t)&&(h=new ra(n,null,l),this.getContext(l).openRange=h,this.dispatch("contextStart",[l,n])),h&&a.checkEnd(t)){let d=n-h.startIndex+1,B=this.setEndOffset(d,l);this.dispatch("contextEnd",[l,B])}}},dt.prototype.tokenize=function(t){this.tokens=[],this.resetContextsRanges();let n=Array.from(t);this.dispatch("start");for(let s=0;s<n.length;s++){let a=n[s],l=new St(n,s);this.dispatch("next",[l]),this.runContextCheck(l);let h=new Oi(a);this.tokens.push(h),this.dispatch("newToken",[h,l])}return this.dispatch("end",[this.tokens]),this.tokens};var Ew=dt;function Xr(t){return/[\u0600-\u065F\u066A-\u06D2\u06FA-\u06FF]/.test(t)}function ou(t){return/[\u0630\u0690\u0621\u0631\u0661\u0671\u0622\u0632\u0672\u0692\u06C2\u0623\u0673\u0693\u06C3\u0624\u0694\u06C4\u0625\u0675\u0695\u06C5\u06E5\u0676\u0696\u06C6\u0627\u0677\u0697\u06C7\u0648\u0688\u0698\u06C8\u0689\u0699\u06C9\u068A\u06CA\u066B\u068B\u06CB\u068C\u068D\u06CD\u06FD\u068E\u06EE\u06FE\u062F\u068F\u06CF\u06EF]/.test(t)}function zr(t){return/[\u0600-\u0605\u060C-\u060E\u0610-\u061B\u061E\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED]/.test(t)}function bs(t){return/[\u0E00-\u0E7F]/.test(t)}function xs(t){return/[A-z]/.test(t)}function ww(t){return/\s/.test(t)}function Jt(t){this.font=t,this.features={}}function qr(t){this.id=t.id,this.tag=t.tag,this.substitution=t.substitution}function Kr(t,n){if(!t)return-1;switch(n.format){case 1:return n.glyphs.indexOf(t);case 2:{let s=n.ranges;for(let a=0;a<s.length;a++){let l=s[a];if(t>=l.start&&t<=l.end){let h=t-l.start;return l.index+h}}break}default:return-1}return-1}function yw(t,n){return Kr(t,n.coverage)===-1?null:t+n.deltaGlyphId}function Cw(t,n){let s=Kr(t,n.coverage);return s===-1?null:n.substitute[s]}function ia(t,n){let s=[];for(let a=0;a<t.length;a++){let l=t[a],h=n.current;h=Array.isArray(h)?h[0]:h;let d=Kr(h,l);d!==-1&&s.push(d)}return s.length!==t.length?-1:s}function bw(t,n){let s=n.inputCoverage.length+n.lookaheadCoverage.length+n.backtrackCoverage.length;if(t.context.length<s)return[];let a=ia(n.inputCoverage,t);if(a===-1)return[];let l=n.inputCoverage.length-1;if(t.lookahead.length<n.lookaheadCoverage.length)return[];let h=t.lookahead.slice(l);for(;h.length&&zr(h[0].char);)h.shift();let d=new St(h,0),B=ia(n.lookaheadCoverage,d),w=[].concat(t.backtrack);for(w.reverse();w.length&&zr(w[0].char);)w.shift();if(w.length<n.backtrackCoverage.length)return[];let x=new St(w,0),C=ia(n.backtrackCoverage,x),S=a.length===n.inputCoverage.length&&B.length===n.lookaheadCoverage.length&&C.length===n.backtrackCoverage.length,T=[];if(S)for(let Y=0;Y<n.lookupRecords.length;Y++){let U=n.lookupRecords[Y],L=U.lookupListIndex,ee=this.getLookupByIndex(L);for(let Te=0;Te<ee.subtables.length;Te++){let xe=ee.subtables[Te],Re,Je=this.getSubstitutionType(ee,xe);if(Je==="71"?(Je=this.getSubstitutionType(xe,xe.extension),Re=this.getLookupMethod(xe,xe.extension),xe=xe.extension):Re=this.getLookupMethod(ee,xe),Je==="12"){let $e=t.get(U.sequenceIndex),nt=Re($e);nt&&T.push(nt)}else if(Je==="21"){let $e=t.get(U.sequenceIndex),nt=Re($e);nt&&T.push(nt)}else throw new Error(`Substitution type ${Je} is not supported in chaining substitution`)}}return T}function xw(t,n){let s=t.current,a=Kr(s,n.coverage);if(a===-1)return null;let l,h=n.ligatureSets[a];for(let d=0;d<h.length;d++){l=h[d];for(let B=0;B<l.components.length;B++){let w=t.lookahead[B],x=l.components[B];if(w!==x)break;if(B===l.components.length-1)return l}}return null}function Qw(t,n){let s=t.current;if(Kr(s,n.coverage)===-1)return null;for(let l of n.ruleSets)for(let h of l){let d=!0;for(let B=0;B<h.input.length;B++)if(t.lookahead[B]!==h.input[B]){d=!1;break}if(d){let B=[];B.push(s);for(let x=0;x<h.input.length;x++)B.push(h.input[x]);let w=(x,C)=>{let{lookupListIndex:S,sequenceIndex:T}=C,{subtables:Y}=this.getLookupByIndex(S);for(let U of Y)Kr(x[T],U.coverage)!==-1&&(x[T]=U.deltaGlyphId)};for(let x=0;x<h.lookupRecords.length;x++){let C=h.lookupRecords[x];w(B,C)}return B}}return null}function vw(t,n){if(t.context.length<n.coverages.length)return[];for(let a=0;a<n.coverages.length;a++){let l=t.get(a);if(l=Array.isArray(l)?l[0]:l,Kr(l,n.coverages[a])===-1)return[]}let s=[];for(let a=0;a<n.lookupRecords.length;a++){let l=n.lookupRecords[a],h=l.lookupListIndex,d=this.getLookupByIndex(h);for(let B=0;B<d.subtables.length;B++){let w=d.subtables[B],x,C=this.getSubstitutionType(d,w);if(C==="71"?(C=this.getSubstitutionType(w,w.extension),x=this.getLookupMethod(w,w.extension),w=w.extension):x=this.getLookupMethod(d,w),C==="12"){let S=t.get(l.sequenceIndex),T=x(S);T&&s.push(T)}else if(C==="21"){let S=t.get(l.sequenceIndex),T=x(S);T&&s.push(T)}}}return s}function Iw(t,n){let s=Kr(t,n.coverage);return s===-1?null:n.sequences[s]}Jt.prototype.getDefaultScriptFeaturesIndexes=function(){let t=this.font.tables.gsub.scripts;for(let n=0;n<t.length;n++){let s=t[n];if(s.tag==="DFLT")return s.script.defaultLangSys.featureIndexes}return[]},Jt.prototype.getScriptFeaturesIndexes=function(t){if(!this.font.tables.gsub)return[];if(!t)return this.getDefaultScriptFeaturesIndexes();let s=this.font.tables.gsub.scripts;for(let a=0;a<s.length;a++){let l=s[a];if(l.tag===t&&l.script.defaultLangSys)return l.script.defaultLangSys.featureIndexes;{let h=l.langSysRecords;if(h)for(let d=0;d<h.length;d++){let B=h[d];if(B.tag===t)return B.langSys.featureIndexes}}}return this.getDefaultScriptFeaturesIndexes()},Jt.prototype.mapTagsToFeatures=function(t,n){let s={};for(let a=0;a<t.length;a++){let l=t[a].tag,h=t[a].feature;s[l]=h}this.features[n].tags=s},Jt.prototype.getScriptFeatures=function(t){let n=this.features[t];if(Object.prototype.hasOwnProperty.call(this.features,t))return n;let s=this.getScriptFeaturesIndexes(t);if(!s)return null;let a=this.font.tables.gsub;return n=s.map(l=>a.features[l]),this.features[t]=n,this.mapTagsToFeatures(n,t),n},Jt.prototype.getSubstitutionType=function(t,n){let s=t.lookupType.toString(),a=n.substFormat.toString();return s+a},Jt.prototype.getLookupMethod=function(t,n){let s=this.getSubstitutionType(t,n);switch(s){case"11":return a=>yw.apply(this,[a,n]);case"12":return a=>Cw.apply(this,[a,n]);case"63":return a=>bw.apply(this,[a,n]);case"41":return a=>xw.apply(this,[a,n]);case"21":return a=>Iw.apply(this,[a,n]);case"51":return a=>Qw.apply(this,[a,n]);case"53":return a=>vw.apply(this,[a,n]);default:throw new Error(`substitutionType : ${s} lookupType: ${t.lookupType} - substFormat: ${n.substFormat} is not yet supported`)}},Jt.prototype.lookupFeature=function(t){let n=t.contextParams,s=n.index,a=this.getFeature({tag:t.tag,script:t.script});if(!a)return new Error(`font '${(this.font.names.unicode||this.font.names.windows||this.font.names.macintosh).fullName.en}' doesn't support feature '${t.tag}' for script '${t.script}'.`);let l=this.getFeatureLookups(a),h=[].concat(n.context);for(let d=0;d<l.length;d++){let B=l[d],w=this.getLookupSubtables(B);for(let x=0;x<w.length;x++){let C=w[x],S=this.getSubstitutionType(B,C),T;S==="71"?(S=this.getSubstitutionType(C,C.extension),T=this.getLookupMethod(C,C.extension),C=C.extension):T=this.getLookupMethod(B,C);let Y;switch(S){case"11":Y=T(n.current),Y&&h.splice(s,1,new qr({id:11,tag:t.tag,substitution:Y}));break;case"12":Y=T(n.current),Y&&h.splice(s,1,new qr({id:12,tag:t.tag,substitution:Y}));break;case"63":Y=T(n),Array.isArray(Y)&&Y.length&&h.splice(s,1,new qr({id:63,tag:t.tag,substitution:Y}));break;case"41":Y=T(n),Y&&h.splice(s,1,new qr({id:41,tag:t.tag,substitution:Y}));break;case"21":Y=T(n.current),Y&&h.splice(s,1,new qr({id:21,tag:t.tag,substitution:Y}));break;case"51":case"53":Y=T(n),Array.isArray(Y)&&Y.length&&h.splice(s,1,new qr({id:parseInt(S),tag:t.tag,substitution:Y}));break}n=new St(h,s),!(Array.isArray(Y)&&!Y.length)&&(Y=null)}}return h.length?h:null},Jt.prototype.supports=function(t){if(!t.script)return!1;this.getScriptFeatures(t.script);let n=Object.prototype.hasOwnProperty.call(this.features,t.script);if(!t.tag)return n;let s=this.features[t.script].some(a=>a.tag===t.tag);return n&&s},Jt.prototype.getLookupSubtables=function(t){return t.subtables||null},Jt.prototype.getLookupByIndex=function(t){return this.font.tables.gsub.lookups[t]||null},Jt.prototype.getFeatureLookups=function(t){return t.lookupListIndexes.map(this.getLookupByIndex.bind(this))},Jt.prototype.getFeature=function(n){if(!this.font)return{FAIL:"No font was found"};Object.prototype.hasOwnProperty.call(this.features,n.script)||this.getScriptFeatures(n.script);let s=this.features[n.script];return s?s.tags[n.tag]?this.features[n.script].tags[n.tag]:null:{FAIL:`No feature for script ${n.script}`}};var Fw=Jt;function Tw(t){let n=t.current,s=t.get(-1);return s===null&&Xr(n)||!Xr(s)&&Xr(n)}function Sw(t){let n=t.get(1);return n===null||!Xr(n)}var Dw={startCheck:Tw,endCheck:Sw};function Mw(t){let n=t.current,s=t.get(-1);return(Xr(n)||zr(n))&&!Xr(s)}function Uw(t){let n=t.get(1);switch(!0){case n===null:return!0;case(!Xr(n)&&!zr(n)):{let s=ww(n);if(!s)return!0;if(s){let a=!1;if(a=t.lookahead.some(l=>Xr(l)||zr(l)),!a)return!0}break}default:return!1}}var kw={startCheck:Mw,endCheck:Uw};function Yw(t,n,s){n[s].setState(t.tag,t.substitution)}function Ow(t,n,s){n[s].setState(t.tag,t.substitution)}function na(t,n,s){for(let a=0;a<t.substitution.length;a++){let l=t.substitution[a],h=n[s+a];if(Array.isArray(l)){l.length?h.setState(t.tag,l[0]):h.setState("deleted",!0);continue}h.setState(t.tag,l)}}function Nw(t,n,s){let a=n[s];a.setState(t.tag,t.substitution.ligGlyph);let l=t.substitution.components.length;for(let h=0;h<l;h++)a=n[s+h+1],a.setState("deleted",!0)}var au={11:Yw,12:Ow,63:na,41:Nw,51:na,53:na};function Rw(t,n,s){t instanceof qr&&au[t.id]&&au[t.id](t,n,s)}var gi=Rw;function Gw(t){let n=[].concat(t.backtrack);for(let s=n.length-1;s>=0;s--){let a=n[s],l=ou(a),h=zr(a);if(!l&&!h)return!0;if(l)return!1}return!1}function Lw(t){if(ou(t.current))return!1;for(let n=0;n<t.lookahead.length;n++){let s=t.lookahead[n];if(!zr(s))return!0}return!1}function Pw(t){let n="arab",s=this.featuresTags[n],a=this.tokenizer.getRangeTokens(t);if(a.length===1)return;let l=new St(a.map(d=>d.getState("glyphIndex")),0),h=new St(a.map(d=>d.char),0);for(let d=0;d<a.length;d++){let B=a[d];if(zr(B.char))continue;l.setCurrentIndex(d),h.setCurrentIndex(d);let w=0;Gw(h)&&(w|=1),Lw(h)&&(w|=2);let x;switch(w){case 1:x="fina";break;case 2:x="init";break;case 3:x="medi";break}if(s.indexOf(x)===-1)continue;let C=this.query.lookupFeature({tag:x,script:n,contextParams:l});if(C instanceof Error){console.info(C.message);continue}for(let S=0;S<C.length;S++){let T=C[S];T instanceof qr&&(gi(T,a,S),l.context[S]=T.substitution)}}}var Hw=Pw;function Au(t,n){let s=t.map(a=>a.activeState.value);return new St(s,n||0)}function Ww(t){let n="arab",s=this.tokenizer.getRangeTokens(t),a=Au(s);for(let l=0;l<a.context.length;l++){a.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"rlig",script:n,contextParams:a});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}a=Au(s)}}}var Jw=Ww;function Vw(t){return t.index===0&&t.context.length>1}function jw(t){return t.index===t.context.length-1}var _w={startCheck:Vw,endCheck:jw};function lu(t,n){let s=t.map(a=>a.activeState.value);return new St(s,n||0)}function Zw(t){let n="delf",s="ccmp",a=this.tokenizer.getRangeTokens(t),l=lu(a);for(let h=0;h<l.context.length;h++){if(!this.query.getFeature({tag:s,script:n,contextParams:l}))continue;l.setCurrentIndex(h);let d=this.query.lookupFeature({tag:s,script:n,contextParams:l});if(d.length){for(let B=0;B<d.length;B++){let w=d[B];gi(w,a,h)}l=lu(a)}}}var Xw=Zw;function zw(t){let n=t.current,s=t.get(-1);return s===null&&xs(n)||!xs(s)&&xs(n)}function qw(t){let n=t.get(1);return n===null||!xs(n)}var Kw={startCheck:zw,endCheck:qw};function cu(t,n){let s=t.map(a=>a.activeState.value);return new St(s,n||0)}function $w(t){let n="latn",s=this.tokenizer.getRangeTokens(t),a=cu(s);for(let l=0;l<a.context.length;l++){a.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"liga",script:n,contextParams:a});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}a=cu(s)}}}var ey=$w;function ty(t){let n=t.current,s=t.get(-1);return s===null&&bs(n)||!bs(s)&&bs(n)}function ry(t){let n=t.get(1);return n===null||!bs(n)}var iy={startCheck:ty,endCheck:ry};function uu(t,n){let s=t.map(a=>a.activeState.value);return new St(s,n||0)}function ny(t){let n="thai",s=this.tokenizer.getRangeTokens(t),a=uu(s,0);for(let l=0;l<a.context.length;l++){a.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"ccmp",script:n,contextParams:a});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}a=uu(s,l)}}}var sy=ny;function hu(t,n){let s=t.map(a=>a.activeState.value);return new St(s,n||0)}function oy(t){let n="thai",s=this.tokenizer.getRangeTokens(t),a=hu(s,0);for(let l=0;l<a.context.length;l++){a.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"liga",script:n,contextParams:a});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}a=hu(s,l)}}}var ay=oy;function fu(t,n){let s=t.map(a=>a.activeState.value);return new St(s,n||0)}function Ay(t){let n="thai",s=this.tokenizer.getRangeTokens(t),a=fu(s,0);for(let l=0;l<a.context.length;l++){a.setCurrentIndex(l);let h=this.query.lookupFeature({tag:"rlig",script:n,contextParams:a});if(h.length){for(let d=0;d<h.length;d++){let B=h[d];gi(B,s,l)}a=fu(s,l)}}}var ly=Ay;function sa(t){if(t===null)return!1;let n=t.codePointAt(0);return n>=6155&&n<=6157||n>=65024&&n<=65039||n>=917760&&n<=917999}function cy(t){let n=t.current,s=t.get(1);return s===null&&sa(n)||sa(s)}function uy(t){let n=t.get(1);return n===null||!sa(n)}var hy={startCheck:cy,endCheck:uy};function fy(t){let n=this.query.font,s=this.tokenizer.getRangeTokens(t);if(s[1].setState("deleted",!0),n.tables.cmap&&n.tables.cmap.varSelectorList){let a=s[0].char.codePointAt(0),l=s[1].char.codePointAt(0),h=n.tables.cmap.varSelectorList[l];if(h!==void 0&&h.nonDefaultUVS){let d=h.nonDefaultUVS.uvsMappings;if(d[a]){let B=d[a].glyphID;n.glyphs.glyphs[B]!==void 0&&s[0].setState("glyphIndex",B)}}}}var py=fy;function Zt(t){this.baseDir=t||"ltr",this.tokenizer=new Ew,this.featuresTags={}}Zt.prototype.setText=function(t){this.text=t},Zt.prototype.contextChecks={ccmpReplacementCheck:_w,latinWordCheck:Kw,arabicWordCheck:Dw,arabicSentenceCheck:kw,thaiWordCheck:iy,unicodeVariationSequenceCheck:hy};function Ni(t){let n=this.contextChecks[`${t}Check`];return this.tokenizer.registerContextChecker(t,n.startCheck,n.endCheck)}function dy(){return Ni.call(this,"ccmpReplacement"),Ni.call(this,"latinWord"),Ni.call(this,"arabicWord"),Ni.call(this,"arabicSentence"),Ni.call(this,"thaiWord"),Ni.call(this,"unicodeVariationSequence"),this.tokenizer.tokenize(this.text)}function gy(){let t=this.tokenizer.getContextRanges("arabicSentence");for(let n=0;n<t.length;n++){let s=t[n],a=this.tokenizer.getRangeTokens(s);this.tokenizer.replaceRange(s.startIndex,s.endOffset,a.reverse())}}Zt.prototype.registerFeatures=function(t,n){let s=n.filter(a=>this.query.supports({script:t,tag:a}));Object.prototype.hasOwnProperty.call(this.featuresTags,t)?this.featuresTags[t]=this.featuresTags[t].concat(s):this.featuresTags[t]=s},Zt.prototype.applyFeatures=function(t,n){if(!t)throw new Error("No valid font was provided to apply features");this.query||(this.query=new Fw(t));for(let s=0;s<n.length;s++){let a=n[s];this.query.supports({script:a.script})&&this.registerFeatures(a.script,a.tags)}},Zt.prototype.registerModifier=function(t,n,s){this.tokenizer.registerModifier(t,n,s)};function Cn(){if(this.tokenizer.registeredModifiers.indexOf("glyphIndex")===-1)throw new Error("glyphIndex modifier is required to apply arabic presentation features.")}function my(){if(!Object.prototype.hasOwnProperty.call(this.featuresTags,"arab"))return;Cn.call(this);let n=this.tokenizer.getContextRanges("arabicWord");for(let s=0;s<n.length;s++){let a=n[s];Hw.call(this,a)}}function By(){Cn.call(this);let t=this.tokenizer.getContextRanges("ccmpReplacement");for(let n=0;n<t.length;n++){let s=t[n];Xw.call(this,s)}}function Ey(){if(!this.hasFeatureEnabled("arab","rlig"))return;Cn.call(this);let t=this.tokenizer.getContextRanges("arabicWord");for(let n=0;n<t.length;n++){let s=t[n];Jw.call(this,s)}}function wy(){if(!this.hasFeatureEnabled("latn","liga"))return;Cn.call(this);let t=this.tokenizer.getContextRanges("latinWord");for(let n=0;n<t.length;n++){let s=t[n];ey.call(this,s)}}function yy(){let t=this.tokenizer.getContextRanges("unicodeVariationSequence");for(let n=0;n<t.length;n++){let s=t[n];py.call(this,s)}}function Cy(){Cn.call(this);let t=this.tokenizer.getContextRanges("thaiWord");for(let n=0;n<t.length;n++){let s=t[n];this.hasFeatureEnabled("thai","liga")&&ay.call(this,s),this.hasFeatureEnabled("thai","rlig")&&ly.call(this,s),this.hasFeatureEnabled("thai","ccmp")&&sy.call(this,s)}}Zt.prototype.checkContextReady=function(t){return!!this.tokenizer.getContext(t)},Zt.prototype.applyFeaturesToContexts=function(){this.checkContextReady("ccmpReplacement")&&By.call(this),this.checkContextReady("arabicWord")&&(my.call(this),Ey.call(this)),this.checkContextReady("latinWord")&&wy.call(this),this.checkContextReady("arabicSentence")&&gy.call(this),this.checkContextReady("thaiWord")&&Cy.call(this),this.checkContextReady("unicodeVariationSequence")&&yy.call(this)},Zt.prototype.hasFeatureEnabled=function(t,n){return(this.featuresTags[t]||[]).indexOf(n)!==-1},Zt.prototype.processText=function(t){(!this.text||this.text!==t)&&(this.setText(t),dy.call(this),this.applyFeaturesToContexts())},Zt.prototype.getBidiText=function(t){return this.processText(t),this.tokenizer.getText()},Zt.prototype.getTextGlyphs=function(t){this.processText(t);let n=[];for(let s=0;s<this.tokenizer.tokens.length;s++){let a=this.tokenizer.tokens[s];if(a.state.deleted)continue;let l=a.activeState.value;n.push(Array.isArray(l)?l[0]:l)}return n};var by=Zt;function oa(t){return{fontFamily:{en:t.familyName||" "},fontSubfamily:{en:t.styleName||" "},fullName:{en:t.fullName||t.familyName+" "+t.styleName},postScriptName:{en:t.postScriptName||(t.familyName+t.styleName).replace(/\s/g,"")},designer:{en:t.designer||" "},designerURL:{en:t.designerURL||" "},manufacturer:{en:t.manufacturer||" "},manufacturerURL:{en:t.manufacturerURL||" "},license:{en:t.license||" "},licenseURL:{en:t.licenseURL||" "},version:{en:t.version||"Version 0.1"},description:{en:t.description||" "},copyright:{en:t.copyright||" "},trademark:{en:t.trademark||" "}}}function et(t){if(t=t||{},t.tables=t.tables||{},!t.empty){if(!t.familyName)throw new Error("When creating a new Font object, familyName is required.");if(!t.styleName)throw new Error("When creating a new Font object, styleName is required.");if(!t.unitsPerEm)throw new Error("When creating a new Font object, unitsPerEm is required.");if(!t.ascender)throw new Error("When creating a new Font object, ascender is required.");if(t.descender>0)throw new Error("When creating a new Font object, negative descender value is required.");this.names={},this.names.unicode=oa(t),this.names.macintosh=oa(t),this.names.windows=oa(t),this.unitsPerEm=t.unitsPerEm||1e3,this.ascender=t.ascender,this.descender=t.descender,this.createdTimestamp=t.createdTimestamp,this.italicAngle=t.italicAngle||0,this.weightClass=t.weightClass||0;let n=0;t.fsSelection?n=t.fsSelection:(this.italicAngle<0?n|=this.fsSelectionValues.ITALIC:this.italicAngle>0&&(n|=this.fsSelectionValues.OBLIQUE),this.weightClass>=600&&(n|=this.fsSelectionValues.BOLD),n===0&&(n=this.fsSelectionValues.REGULAR)),(!t.panose||!Array.isArray(t.panose))&&(t.panose=[0,0,0,0,0,0,0,0,0]),this.tables=Object.assign(t.tables,{os2:Object.assign({usWeightClass:t.weightClass||this.usWeightClasses.MEDIUM,usWidthClass:t.widthClass||this.usWidthClasses.MEDIUM,bFamilyType:t.panose[0]||0,bSerifStyle:t.panose[1]||0,bWeight:t.panose[2]||0,bProportion:t.panose[3]||0,bContrast:t.panose[4]||0,bStrokeVariation:t.panose[5]||0,bArmStyle:t.panose[6]||0,bLetterform:t.panose[7]||0,bMidline:t.panose[8]||0,bXHeight:t.panose[9]||0,fsSelection:n},t.tables.os2)})}this.supported=!0,this.glyphs=new dr.GlyphSet(this,t.glyphs||[]),this.encoding=new Jl(this),this.position=new BE(this),this.substitution=new QE(this),this.tables=this.tables||{},this.tables=new Proxy(this.tables,{set:(n,s,a)=>(n[s]=a,n.fvar&&(n.gvar||n.cff2)&&!this.variation&&(this.variation=new LE(this)),!0)}),this.palettes=new Uc(this),this.layers=new vE(this),this.svgImages=new IE(this),this._push=null,this._hmtxTableData={},Object.defineProperty(this,"hinting",{get:function(){return this._hinting?this._hinting:this.outlinesFormat==="truetype"?this._hinting=new gw(this):null}})}et.prototype.hasChar=function(t){return this.encoding.charToGlyphIndex(t)>0},et.prototype.charToGlyphIndex=function(t){return this.encoding.charToGlyphIndex(t)},et.prototype.charToGlyph=function(t){let n=this.charToGlyphIndex(t),s=this.glyphs.get(n);return s||(s=this.glyphs.get(0)),s},et.prototype.updateFeatures=function(t){return this.defaultRenderOptions.features.map(n=>n.script==="latn"?{script:"latn",tags:n.tags.filter(s=>t[s])}:n)},et.prototype.stringToGlyphIndexes=function(t,n){let s=new by,a=h=>this.charToGlyphIndex(h.char);s.registerModifier("glyphIndex",null,a);let l=n?this.updateFeatures(n.features):this.defaultRenderOptions.features;return s.applyFeatures(this,l),s.getTextGlyphs(t)},et.prototype.stringToGlyphs=function(t,n){let s=this.stringToGlyphIndexes(t,n),a=s.length,l=new Array(a),h=this.glyphs.get(0);for(let d=0;d<a;d+=1)l[d]=this.glyphs.get(s[d])||h;return l},et.prototype.nameToGlyphIndex=function(t){return this.glyphNames.nameToGlyphIndex(t)},et.prototype.nameToGlyph=function(t){let n=this.nameToGlyphIndex(t),s=this.glyphs.get(n);return s||(s=this.glyphs.get(0)),s},et.prototype.glyphIndexToName=function(t){return this.glyphNames.glyphIndexToName?this.glyphNames.glyphIndexToName(t):""},et.prototype.getKerningValue=function(t,n){t=t.index||t,n=n.index||n;let s=this.position.defaultKerningTables;return s?this.position.getKerningValue(s,t,n):this.kerningPairs[t+","+n]||0},et.prototype.defaultRenderOptions={kerning:!0,features:[{script:"arab",tags:["init","medi","fina","rlig"]},{script:"latn",tags:["liga","rlig"]},{script:"thai",tags:["liga","rlig","ccmp"]}],hinting:!1,usePalette:0,drawLayers:!0,drawSVG:!0},et.prototype.forEachGlyph=function(t,n,s,a,l,h){n=n!==void 0?n:0,s=s!==void 0?s:0,a=a!==void 0?a:72,l=Object.assign({},this.defaultRenderOptions,l);let d=1/this.unitsPerEm*a,B=this.stringToGlyphs(t,l),w;if(l.kerning){let x=l.script||this.position.getDefaultScriptName();w=this.position.getKerningTables(x,l.language)}for(let x=0;x<B.length;x+=1){let C=B[x];if(h.call(this,C,n,s,a,l),C.advanceWidth&&(n+=C.advanceWidth*d),l.kerning&&x<B.length-1){let S=w?this.position.getKerningValue(w,C.index,B[x+1].index):this.getKerningValue(C,B[x+1]);n+=S*d}l.letterSpacing?n+=l.letterSpacing*a:l.tracking&&(n+=l.tracking/1e3*a)}return n},et.prototype.getPath=function(t,n,s,a,l){l=Object.assign({},this.defaultRenderOptions,l);let h=new z;if(h._layers=[],rc(this,h,a),h.stroke){let d=1/(h.unitsPerEm||1e3)*a;h.strokeWidth*=d}return this.forEachGlyph(t,n,s,a,l,(d,B,w,x)=>{let C=d.getPath(B,w,x,l,this);if(l.drawSVG||l.drawLayers){let S=C._layers;if(S&&S.length){for(let T=0;T<S.length;T++){let Y=S[T];h._layers.push(Y)}return}}h.extend(C)}),h},et.prototype.getPaths=function(t,n,s,a,l){l=Object.assign({},this.defaultRenderOptions,l);let h=[];return this.forEachGlyph(t,n,s,a,l,function(d,B,w,x){let C=d.getPath(B,w,x,l,this);h.push(C)}),h},et.prototype.getAdvanceWidth=function(t,n,s){return s=Object.assign({},this.defaultRenderOptions,s),this.forEachGlyph(t,0,0,n,s,function(){})},et.prototype.draw=function(t,n,s,a,l,h){this.getPath(n,s,a,l,h).draw(t)},et.prototype.drawPoints=function(t,n,s,a,l,h){h=Object.assign({},this.defaultRenderOptions,h),this.forEachGlyph(n,s,a,l,h,function(d,B,w,x){d.drawPoints(t,B,w,x,h,this)})},et.prototype.drawMetrics=function(t,n,s,a,l,h){h=Object.assign({},this.defaultRenderOptions,h),this.forEachGlyph(n,s,a,l,h,function(d,B,w,x){d.drawMetrics(t,B,w,x)})},et.prototype.getEnglishName=function(t){let n=(this.names.unicode||this.names.macintosh||this.names.windows)[t];if(n)return n.en},et.prototype.validate=function(){let t=[],n=this;function s(l,h){l||(console.warn(`[opentype.js] ${h}`),t.push(h))}function a(l){let h=n.getEnglishName(l);s(h&&h.trim().length>0,"No English "+l+" specified.")}if(a("fontFamily"),a("weightName"),a("manufacturer"),a("copyright"),a("version"),s(this.unitsPerEm>0,"No unitsPerEm specified."),this.tables.colr){let l=this.tables.colr.baseGlyphRecords,h=-1;for(let d=0;d<l.length;d++){let B=l[d].glyphID;if(s(h<l[d].glyphID,`baseGlyphs must be sorted by GlyphID in ascending order, but glyphID ${B} comes after ${h}`),h>l[d].glyphID)break;h=B}}return t},et.prototype.toTables=function(){return mE.fontToTable(this)},et.prototype.toBuffer=function(){return console.warn("Font.toBuffer is deprecated. Use Font.toArrayBuffer instead."),this.toArrayBuffer()},et.prototype.toArrayBuffer=function(){let n=this.toTables().encode(),s=new ArrayBuffer(n.length),a=new Uint8Array(s);for(let l=0;l<n.length;l++)a[l]=n[l];return s},et.prototype.download=function(){console.error("DEPRECATED: platform-specific actions are to be implemented on user-side")},et.prototype.fsSelectionValues={ITALIC:1,UNDERSCORE:2,NEGATIVE:4,OUTLINED:8,STRIKEOUT:16,BOLD:32,REGULAR:64,USER_TYPO_METRICS:128,WWS:256,OBLIQUE:512},et.prototype.macStyleValues={BOLD:1,ITALIC:2,UNDERLINE:4,OUTLINED:8,SHADOW:16,CONDENSED:32,EXTENDED:64},et.prototype.usWidthClasses={ULTRA_CONDENSED:1,EXTRA_CONDENSED:2,CONDENSED:3,SEMI_CONDENSED:4,MEDIUM:5,SEMI_EXPANDED:6,EXPANDED:7,EXTRA_EXPANDED:8,ULTRA_EXPANDED:9},et.prototype.usWeightClasses={THIN:100,EXTRA_LIGHT:200,LIGHT:300,NORMAL:400,MEDIUM:500,SEMI_BOLD:600,BOLD:700,EXTRA_BOLD:800,BLACK:900};var pu=et;function xy(t,n){let s=new he.Parser(t,n),a=s.parseUShort(),l=s.parseUShort();a!==1&&console.warn(`Unsupported hvar table version ${a}.${l}`);let h=[a,l],d=s.parsePointer32(function(){return this.parseItemVariationStore()}),B=s.parsePointer32(function(){return this.parseDeltaSetIndexMap()}),w=s.parsePointer32(function(){return this.parseDeltaSetIndexMap()}),x=s.parsePointer32(function(){return this.parseDeltaSetIndexMap()});return{version:h,itemVariationStore:d,advanceWidth:B,lsb:w,rsb:x}}function Qy(){console.warn("Writing of hvar tables is not yet supported.")}var vy={make:Qy,parse:xy},Iy=function(){return{coverage:this.parsePointer(V.coverage),attachPoints:this.parseList(V.pointer(V.uShortList))}},Fy=function(){var t=this.parseUShort();if(G.argument(t===1||t===2||t===3,"Unsupported CaretValue table version."),t===1)return{coordinate:this.parseShort()};if(t===2)return{pointindex:this.parseShort()};if(t===3)return{coordinate:this.parseShort()}},Ty=function(){return this.parseList(V.pointer(Fy))},Sy=function(){return{coverage:this.parsePointer(V.coverage),ligGlyphs:this.parseList(V.pointer(Ty))}},Dy=function(){return this.parseUShort(),this.parseList(V.pointer(V.coverage))};function My(t,n){n=n||0;let s=new V(t,n),a=s.parseVersion(1);G.argument(a===1||a===1.2||a===1.3,"Unsupported GDEF table version.");var l={version:a,classDef:s.parsePointer(V.classDef),attachList:s.parsePointer(Iy),ligCaretList:s.parsePointer(Sy),markAttachClassDef:s.parsePointer(V.classDef)};return a>=1.2&&(l.markGlyphSets=s.parsePointer(Dy)),l}var Uy={parse:My},nr=new Array(10);nr[1]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();if(s===1)return{posFormat:1,coverage:this.parsePointer(V.coverage),value:this.parseValueRecord()};if(s===2)return{posFormat:2,coverage:this.parsePointer(V.coverage),values:this.parseValueRecordList()};G.assert(!1,"0x"+n.toString(16)+": GPOS lookup type 1 format must be 1 or 2.")},nr[2]=function(){let n=this.offset+this.relativeOffset,s=this.parseUShort();G.assert(s===1||s===2,"0x"+n.toString(16)+": GPOS lookup type 2 format must be 1 or 2.");let a=this.parsePointer(V.coverage),l=this.parseUShort(),h=this.parseUShort();if(s===1)return{posFormat:s,coverage:a,valueFormat1:l,valueFormat2:h,pairSets:this.parseList(V.pointer(V.list(function(){return{secondGlyph:this.parseUShort(),value1:this.parseValueRecord(l),value2:this.parseValueRecord(h)}})))};if(s===2){let d=this.parsePointer(V.classDef),B=this.parsePointer(V.classDef),w=this.parseUShort(),x=this.parseUShort();return{posFormat:s,coverage:a,valueFormat1:l,valueFormat2:h,classDef1:d,classDef2:B,class1Count:w,class2Count:x,classRecords:this.parseList(w,V.list(x,function(){return{value1:this.parseValueRecord(l),value2:this.parseValueRecord(h)}}))}}},nr[3]=function(){return{error:"GPOS Lookup 3 not supported"}},nr[4]=function(){return{error:"GPOS Lookup 4 not supported"}},nr[5]=function(){return{error:"GPOS Lookup 5 not supported"}},nr[6]=function(){return{error:"GPOS Lookup 6 not supported"}},nr[7]=function(){return{error:"GPOS Lookup 7 not supported"}},nr[8]=function(){return{error:"GPOS Lookup 8 not supported"}},nr[9]=function(){return{error:"GPOS Lookup 9 not supported"}};function ky(t,n){n=n||0;let s=new V(t,n),a=s.parseVersion(1);return G.argument(a===1||a===1.1,"Unsupported GPOS table version "+a),a===1?{version:a,scripts:s.parseScriptList(),features:s.parseFeatureList(),lookups:s.parseLookupList(nr)}:{version:a,scripts:s.parseScriptList(),features:s.parseFeatureList(),lookups:s.parseLookupList(nr),variations:s.parseFeatureVariationsList()}}var Yy=new Array(10);function Oy(t){return new $.Table("GPOS",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new $.ScriptList(t.scripts)},{name:"features",type:"TABLE",value:new $.FeatureList(t.features)},{name:"lookups",type:"TABLE",value:new $.LookupList(t.lookups,Yy)}])}var Ny={parse:ky,make:Oy};function Ry(t){let n={};t.skip("uShort");let s=t.parseUShort();G.argument(s===0,"Unsupported kern sub-table version."),t.skip("uShort",2);let a=t.parseUShort();t.skip("uShort",3);for(let l=0;l<a;l+=1){let h=t.parseUShort(),d=t.parseUShort(),B=t.parseShort();n[h+","+d]=B}return n}function Gy(t){let n={};t.skip("uShort"),t.parseULong()>1&&console.warn("Only the first kern subtable is supported."),t.skip("uLong");let l=t.parseUShort()&255;if(t.skip("uShort"),l===0){let h=t.parseUShort();t.skip("uShort",3);for(let d=0;d<h;d+=1){let B=t.parseUShort(),w=t.parseUShort(),x=t.parseShort();n[B+","+w]=x}}return n}function Ly(t,n){let s=new he.Parser(t,n),a=s.parseUShort();if(a===0)return Ry(s);if(a===1)return Gy(s);throw new Error("Unsupported kern table version ("+a+").")}var Py={parse:Ly};function Hy(t,n,s,a){let l=new he.Parser(t,n),h=a?l.parseUShort:l.parseULong,d=[];for(let B=0;B<s+1;B+=1){let w=h.call(l);a&&(w*=2),d.push(w)}return d}var Wy={parse:Hy};function du(t,n){let s=[],a=12;for(let l=0;l<n;l+=1){let h=he.getTag(t,a),d=he.getULong(t,a+4),B=he.getULong(t,a+8),w=he.getULong(t,a+12);s.push({tag:h,checksum:d,offset:B,length:w,compression:!1}),a+=16}return s}function Jy(t,n){let s=[],a=44;for(let l=0;l<n;l+=1){let h=he.getTag(t,a),d=he.getULong(t,a+4),B=he.getULong(t,a+8),w=he.getULong(t,a+12),x;B<w?x="WOFF":x=!1,s.push({tag:h,offset:d,compression:x,compressedLength:B,length:w}),a+=20}return s}function ze(t,n){if(n.compression==="WOFF"){let s=new Uint8Array(t.buffer,n.offset+2,n.compressedLength-2),a=new Uint8Array(n.length);if(fe(s,a),a.byteLength!==n.length)throw new Error("Decompression error: "+n.tag+" decompressed length doesn't match recorded length");return{data:new DataView(a.buffer,0),offset:0}}else return{data:t,offset:n.offset}}function Vy(t,n={}){let s,a,l=new pu({empty:!0});t.constructor!==ArrayBuffer&&(t=new Uint8Array(t).buffer);let h=new DataView(t,0),d,B=[],w=he.getTag(h,0);if(w==="\0\0\0"||w==="true"||w==="typ1")l.outlinesFormat="truetype",d=he.getUShort(h,4),B=du(h,d);else if(w==="OTTO")l.outlinesFormat="cff",d=he.getUShort(h,4),B=du(h,d);else if(w==="wOFF"){let Se=he.getTag(h,4);if(Se==="\0\0\0")l.outlinesFormat="truetype";else if(Se==="OTTO")l.outlinesFormat="cff";else throw new Error("Unsupported OpenType flavor "+w);d=he.getUShort(h,12),B=Jy(h,d)}else if(w==="wOF2"){let Se="https://github.com/opentypejs/opentype.js/issues/183#issuecomment-1147228025";throw new Error("WOFF2 require an external decompressor library, see examples at: "+Se)}else throw new Error("Unsupported OpenType signature "+w);let x,C,S,T,Y,U,L,ee,Te,xe,Re,Je,$e,nt,st,Bt,sr,Ve;for(let Se=0;Se<d;Se+=1){let we=B[Se],Ce;switch(we.tag){case"avar":L=we;break;case"cmap":Ce=ze(h,we),l.tables.cmap=Wl.parse(Ce.data,Ce.offset),l.encoding=new Vl(l.tables.cmap);break;case"cvt ":Ce=ze(h,we),Ve=new he.Parser(Ce.data,Ce.offset),l.tables.cvt=Ve.parseShortList(we.length/2);break;case"fvar":S=we;break;case"STAT":T=we;break;case"gvar":Y=we;break;case"cvar":U=we;break;case"fpgm":Ce=ze(h,we),Ve=new he.Parser(Ce.data,Ce.offset),l.tables.fpgm=Ve.parseByteList(we.length);break;case"head":Ce=ze(h,we),l.tables.head=Ac.parse(Ce.data,Ce.offset),l.unitsPerEm=l.tables.head.unitsPerEm,s=l.tables.head.indexToLocFormat;break;case"hhea":Ce=ze(h,we),l.tables.hhea=lc.parse(Ce.data,Ce.offset),l.ascender=l.tables.hhea.ascender,l.descender=l.tables.hhea.descender,l.numberOfHMetrics=l.tables.hhea.numberOfHMetrics;break;case"HVAR":$e=we;break;case"hmtx":Je=we;break;case"ltag":Ce=ze(h,we),a=uc.parse(Ce.data,Ce.offset);break;case"COLR":Ce=ze(h,we),l.tables.colr=gc.parse(Ce.data,Ce.offset);break;case"CPAL":Ce=ze(h,we),l.tables.cpal=Xl.parse(Ce.data,Ce.offset);break;case"maxp":Ce=ze(h,we),l.tables.maxp=hc.parse(Ce.data,Ce.offset),l.numGlyphs=l.tables.maxp.numGlyphs;break;case"name":Bt=we;break;case"OS/2":Ce=ze(h,we),l.tables.os2=jo.parse(Ce.data,Ce.offset);break;case"post":Ce=ze(h,we),l.tables.post=fc.parse(Ce.data,Ce.offset),l.glyphNames=new No(l.tables.post);break;case"prep":Ce=ze(h,we),Ve=new he.Parser(Ce.data,Ce.offset),l.tables.prep=Ve.parseByteList(we.length);break;case"glyf":ee=we;break;case"loca":st=we;break;case"CFF ":x=we;break;case"CFF2":C=we;break;case"kern":nt=we;break;case"GDEF":Te=we;break;case"GPOS":xe=we;break;case"GSUB":Re=we;break;case"meta":sr=we;break;case"gasp":try{Ce=ze(h,we),l.tables.gasp=Cc.parse(Ce.data,Ce.offset)}catch(vt){console.warn("Failed to parse gasp table, skipping."),console.warn(vt)}break;case"SVG ":Ce=ze(h,we),l.tables.svg=bc.parse(Ce.data,Ce.offset);break;default:break}}let Vt=ze(h,Bt);if(l.tables.name=pn.parse(Vt.data,Vt.offset,a),l.names=l.tables.name,ee&&st){let Se=s===0,we=ze(h,st),Ce=Wy.parse(we.data,we.offset,l.numGlyphs,Se),vt=ze(h,ee);l.glyphs=Nc.parse(vt.data,vt.offset,Ce,l,n)}else if(x){let Se=ze(h,x);Jo.parse(Se.data,Se.offset,l,n)}else if(C){let Se=ze(h,C);Jo.parse(Se.data,Se.offset,l,n)}else throw new Error("Font doesn't contain TrueType, CFF or CFF2 outlines.");let Dt=ze(h,Je);if(cc.parse(l,Dt.data,Dt.offset,l.numberOfHMetrics,l.numGlyphs,l.glyphs,n),W0(l,n),nt){let Se=ze(h,nt);l.kerningPairs=Py.parse(Se.data,Se.offset)}else l.kerningPairs={};if(Te){let Se=ze(h,Te);l.tables.gdef=Uy.parse(Se.data,Se.offset)}if(xe){let Se=ze(h,xe);l.tables.gpos=Ny.parse(Se.data,Se.offset),l.position.init()}if(Re){let Se=ze(h,Re);l.tables.gsub=pc.parse(Se.data,Se.offset)}if(S){let Se=ze(h,S);l.tables.fvar=mc.parse(Se.data,Se.offset,l.names)}if(T){let Se=ze(h,T);l.tables.stat=Bc.parse(Se.data,Se.offset,l.tables.fvar)}if(Y){S||console.warn("This font provides a gvar table, but no fvar table, which is required for variable fonts."),ee||console.warn("This font provides a gvar table, but no glyf table. Glyph variation only works with TrueType outlines.");let Se=ze(h,Y);l.tables.gvar=yc.parse(Se.data,Se.offset,l.tables.fvar,l.glyphs)}if(U){S||console.warn("This font provides a cvar table, but no fvar table, which is required for variable fonts."),l.tables.cvt||console.warn("This font provides a cvar table, but no cvt table which could be made variable."),ee||console.warn("This font provides a gvar table, but no glyf table. Glyph variation only works with TrueType outlines.");let Se=ze(h,U);l.tables.cvar=wc.parse(Se.data,Se.offset,l.tables.fvar,l.tables.cvt||[])}if(L){S||console.warn("This font provides an avar table, but no fvar table, which is required for variable fonts.");let Se=ze(h,L);l.tables.avar=Ec.parse(Se.data,Se.offset,l.tables.fvar)}if($e){S||console.warn("This font provides an HVAR table, but no fvar table, which is required for variable fonts."),Je||console.warn("This font provides an HVAR table, but no hmtx table to vary.");let Se=ze(h,$e);l.tables.hvar=vy.parse(Se.data,Se.offset,l.tables.fvar)}if(sr){let Se=ze(h,sr);l.tables.meta=dc.parse(Se.data,Se.offset),l.metas=l.tables.meta}return l.palettes=new Uc(l),l}function jy(){console.error("DEPRECATED! migrate to: opentype.parse(buffer, opt) See: https://github.com/opentypejs/opentype.js/issues/675")}function _y(){console.error('DEPRECATED! migrate to: opentype.parse(require("fs").readFileSync(url), opt)')}return u(f)})();(function(r,e){typeof define=="function"&&define.amd?define(e):typeof vo=="object"&&vo.exports?vo.exports=e():r.opentype=e()})(typeof self<"u"?self:x0,()=>({...b0,default:b0}))});var Mu=bn(Du(),1),{program:GT,createCommand:LT,createArgument:PT,createOption:HT,CommanderError:WT,InvalidArgumentError:JT,InvalidOptionArgumentError:VT,Command:Gi,Argument:jT,Option:Li,Help:_T}=Mu.default;var Ds=["https://meta.fabricmc.net","https://meta2.fabricmc.net","https://meta3.fabricmc.net"],gC=["https://maven.fabricmc.net","https://maven2.fabricmc.net","https://maven3.fabricmc.net"],mC=0;async function Ms(){return Ys(Ds,"/v2/versions/game")}async function Us(){return Ys(Ds,"/v2/versions/loader")}async function Uu(){return Ys(Ds,"/v2/versions/yarn")}async function ku(r){return Ys(Ds,"/v2/versions/yarn/"+r)}function BC(){return Ru("/net/fabricmc/fabric-api/fabric-api/maven-metadata.xml")}function Yu(){return Ru("/net/fabricmc/fabric-language-kotlin/maven-metadata.xml")}async function ks(r){let i=(await BC()).filter(o=>yC(o,r)).pop();if(!i)throw new Error(`Could not find a valid Fabric API version for Minecraft ${r}`);return i}function EC(r){return wC(r)[0]}function wC(r){return r.split("-")[0].split(".").map(i=>parseInt(i))}function yC(r,e){if(!e)return!1;if(e=="1.18")return r=="0.44.0+1.18";let i=e;if(["1.14","1.15","1.16","1.17","1.18","1.19","1.20","20w14infinite","1.18_experimental"].forEach(u=>{e.startsWith(u)&&(i=u)}),EC(e)>=26){let u=e.indexOf("-");var c=e.substring(0,u===-1?e.length:u);i=c}return e.endsWith("_unobfuscated")?i="1.21.11_unobfuscated":e.startsWith("25w14craftmine")?i="25w14craftmine":e.startsWith("22w13oneblockatatime")?i="22w13oneblockatatime":e.startsWith("25w")?i="1.21.11":e.startsWith("24w")?i="1.21.4":e.startsWith("23w")?i="1.20.5":e.startsWith("22w")?i="1.19.3":e.startsWith("1.18.2")?i="1.18.2":e.startsWith("1.19.1")?i="1.19.1":e.startsWith("1.19.2")?i="1.19.2":e.startsWith("1.19.3")?i="1.19.3":e.startsWith("1.19.4")?i="1.19.4":e.startsWith("1.20.1")?i="1.20.1":e.startsWith("1.20.2")?i="1.20.2":e.startsWith("1.20.3")?i="1.20.3":e.startsWith("1.20.4")?i="1.20.4":e.startsWith("1.20.5")?i="1.20.5":e.startsWith("1.20.6")?i="1.20.6":e.startsWith("1.21.6")?i="1.21.6":e.startsWith("1.21.7")?i="1.21.7":e.startsWith("1.21.8")?i="1.21.8":e.startsWith("1.21.9")?i="1.21.9":e.startsWith("1.21.10")?i="1.21.10":e.startsWith("1.21.11")?i="1.21.11":e.startsWith("1.21.5")?i="1.21.5":e.startsWith("1.21.4")?i="1.21.4":e.startsWith("1.21.3")?i="1.21.3":e.startsWith("1.21.2")?i="1.21.2":e.startsWith("1.21.1")?i="1.21.1":e.startsWith("1.21")?i="1.21":e.startsWith("21w")?i="1.18":e.startsWith("20w")?i="1.17":(e.startsWith("19w")||e.startsWith("18w"))&&(i="1.14"),r.endsWith("-"+i)||r.endsWith("+"+i)}var Ou=r=>{let i=new DOMParser().parseFromString(r,"text/xml");return Array.from(i.getElementsByTagName("version")).map(o=>o.childNodes[0].nodeValue)};function Nu(r){Ou=r}async function Ru(r){let e=await CC(gC,r);return Ou(e)}async function Ys(r,e){return await(await Gu(r,e)).json()}async function CC(r,e){return await(await Gu(r,e)).text()}async function Gu(r,e){let i;for(var o of[5e3,3e4])for(var A of r){let c=A+e;try{let u=await fetch(c,{signal:AbortSignal.timeout(o)});if(u.ok)return mC=r.indexOf(A),u;throw new Error(`HTTP ${u.status} ${u.statusText}`.trim())}catch(u){i??=u instanceof Error?u.message:String(u),console.error(u)}}throw new Error(`Failed to fetch: ${r[0]+e}. ${i}`)}var Ls=class extends Error{constructor(r){super(r),this.name="Eta Error"}},Hu=class extends Ls{constructor(r){super(r),this.name="EtaParser Error"}},bC=class extends Ls{constructor(r){super(r),this.name="EtaRuntime Error"}};var xC=class extends Ls{constructor(r){super(r),this.name="EtaNameResolution Error"}};function Qn(r,e,i){let o=e.slice(0,i).split(/\n/),A=o.length,c=o[A-1].length+1;throw r+=" at line "+A+" col "+c+`:
131
131
 
132
132
  `+e.split(/\n/)[A-1]+`
133
- `+Array(c).join(" ")+"^",new Hu(r)}function QC(r,e,i,a){let A=e.split(`
134
- `),c=Math.max(i-3,0),u=Math.min(A.length,i+3),f=a,p=A.slice(c,u).map((m,E)=>{let b=E+c+1;return(b===i?" >> ":" ")+b+"| "+m}).join(`
133
+ `+Array(c).join(" ")+"^",new Hu(r)}function QC(r,e,i,o){let A=e.split(`
134
+ `),c=Math.max(i-3,0),u=Math.min(A.length,i+3),f=o,p=A.slice(c,u).map((m,E)=>{let b=E+c+1;return(b===i?" >> ":" ")+b+"| "+m}).join(`
135
135
  `),g=new bC((f?f+":"+i+`
136
136
  `:"line "+i+`
137
137
  `)+p+`
138
138
 
139
- `+r.message);throw g.name=r.name,g.cause=r,g}var vC=(async()=>{}).constructor;function IC(r,e){let i=this.config,a=e?.async?vC:Function;try{return new a(i.varName,"options",this.compileToString.call(this,r,e))}catch(A){throw A instanceof SyntaxError?new Hu(`Bad template syntax
139
+ `+r.message);throw g.name=r.name,g.cause=r,g}var vC=(async()=>{}).constructor;function IC(r,e){let i=this.config,o=e?.async?vC:Function;try{return new o(i.varName,"options",this.compileToString.call(this,r,e))}catch(A){throw A instanceof SyntaxError?new Hu(`Bad template syntax
140
140
 
141
141
  `+A.message+`
142
142
  `+Array(A.message.length+1).join("=")+`
143
143
  `+this.compileToString.call(this,r,e)+`
144
- `):A}}function FC(r,e){let i=this.config,a=e?.async,A=this.compileBody,c=this.parse.call(this,r),u=`${i.functionHeader}
144
+ `):A}}function FC(r,e){let i=this.config,o=e?.async,A=this.compileBody,c=this.parse.call(this,r),u=`${i.functionHeader}
145
145
  let include = (__eta_t, __eta_d) => this.render(__eta_t, {...${i.varName}, ...(__eta_d ?? {})}, options);
146
146
  let includeAsync = (__eta_t, __eta_d) => this.renderAsync(__eta_t, {...${i.varName}, ...(__eta_d ?? {})}, options);
147
147
 
@@ -160,19 +160,19 @@ async function blockAsync(name,fn){if(__eta.layout){if(fn){__eta.blocks[name]=aw
160
160
 
161
161
  ${A.call(this,c)}
162
162
  if (__eta.layout) {
163
- __eta.res = ${a?"await includeAsync":"include"} (__eta.layout, {...${i.varName}, body: __eta.res, ...__eta.layoutData, __blocks: __eta.blocks});
163
+ __eta.res = ${o?"await includeAsync":"include"} (__eta.layout, {...${i.varName}, body: __eta.res, ...__eta.layoutData, __blocks: __eta.blocks});
164
164
  }
165
165
  ${i.useWith?"}":""}${i.debug?"} catch (e) { this.RuntimeErr(e, __eta.templateStr, __eta.line, options.filepath) }":""}
166
166
  return __eta.res;
167
- `;if(i.plugins)for(let f=0;f<i.plugins.length;f++){let p=i.plugins[f];p.processFnString&&(u=p.processFnString(u,i))}return u}function TC(r){let e=this.config,i=0,a=r.length,A="";for(;i<a;i++){let c=r[i];if(typeof c=="string")A+="__eta.res+='"+c+`';
167
+ `;if(i.plugins)for(let f=0;f<i.plugins.length;f++){let p=i.plugins[f];p.processFnString&&(u=p.processFnString(u,i))}return u}function TC(r){let e=this.config,i=0,o=r.length,A="";for(;i<o;i++){let c=r[i];if(typeof c=="string")A+="__eta.res+='"+c+`';
168
168
  `;else{let u=c.t,f=c.val||"";e.debug&&(A+="__eta.line="+c.lineNo+`
169
169
  `),u==="r"?(e.autoFilter&&(f="__eta.f("+f+")"),A+="__eta.res+="+f+`;
170
170
  `):u==="i"?(e.autoFilter&&(f="__eta.f("+f+")"),e.autoEscape&&(f="__eta.e("+f+")"),A+="__eta.res+="+f+`;
171
171
  `):u==="e"?A+=f+`
172
172
  `:Object.hasOwn(e.customTags,u)&&(A+=`__eta.res+=this.config.customTags[${JSON.stringify(u)}](${JSON.stringify(f)},${e.varName});
173
- `)}}return A}function SC(r,e,i,a){let A,c;return Array.isArray(e.autoTrim)?(A=e.autoTrim[1],c=e.autoTrim[0]):A=c=e.autoTrim,(i||i===!1)&&(A=i),(a||a===!1)&&(c=a),!c&&!A?r:A==="slurp"&&c==="slurp"?r.trim():(A==="_"||A==="slurp"?r=r.trimStart():(A==="-"||A==="nl")&&(r=r.replace(/^(?:\r\n|\n|\r)/,"")),c==="_"||c==="slurp"?r=r.trimEnd():(c==="-"||c==="nl")&&(r=r.replace(/(?:\r\n|\n|\r)$/,"")),r)}var DC={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function MC(r){return DC[r]}function UC(r){let e=String(r);return/[&<>"']/.test(e)?e.replace(/[&<>"']/g,MC):e}var Lu={autoEscape:!0,autoFilter:!1,autoTrim:[!1,"nl"],cache:!1,cacheFilepaths:!0,customTags:{},debug:!1,escapeFunction:UC,filterFunction:r=>String(r),outputFunctionName:"output",functionHeader:"",parse:{exec:"",interpolate:"=",raw:"~"},plugins:[],rmWhitespace:!1,tags:["<%","%>"],useWith:!1,varName:"it",defaultExtension:".eta"},Os=/`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})*}|(?!\${)[^\\`])*`/g,Ns=/'(?:\\[\s\w"'\\`]|[^\n\r'\\])*?'/g,Rs=/"(?:\\[\s\w"'\\`]|[^\n\r"\\])*?"/g;function Gs(r){return r.replace(/[.*+\-?^${}()|[\]\\]/g,"\\$&")}function kC(r,e){return r.slice(0,e).split(`
174
- `).length}function YC(r){let e=this.config,i=[],a=!1,A=0,c=e.parse,u=Object.keys(e.customTags);if(e.plugins)for(let b=0;b<e.plugins.length;b++){let y=e.plugins[b];y.processTemplate&&(r=y.processTemplate(r,e))}e.rmWhitespace&&(r=r.replace(/[\r\n]+/g,`
175
- `).replace(/^\s+|\s+$/gm,"")),Os.lastIndex=0,Ns.lastIndex=0,Rs.lastIndex=0;function f(b,y){b&&(b=SC(b,e,a,y),b&&(b=b.replace(/\\|'/g,"\\$&").replace(/\r\n|\n|\r/g,"\\n"),i.push(b)))}let p=[c.exec,c.interpolate,c.raw,...u].reduce((b,y)=>b&&y?b+"|"+Gs(y):y?Gs(y):b,""),g=RegExp(Gs(e.tags[0])+"(-|_)?\\s*("+p+")?\\s*","g"),m=RegExp("'|\"|`|\\/\\*|(\\s*(-|_)?"+Gs(e.tags[1])+")","g"),E;for(;E=g.exec(r);){let b=r.slice(A,E.index);A=E[0].length+E.index;let y=E[1],Q=E[2]||"";f(b,y),m.lastIndex=A;let v,I=!1;for(;v=m.exec(r);)if(v[1]){let F=r.slice(A,v.index);g.lastIndex=A=m.lastIndex,a=v[2],I={t:Q===c.exec?"e":Q===c.raw?"r":Q===c.interpolate?"i":u.includes(Q)?Q:"",val:F};break}else{let F=v[0];if(F==="/*"){let k=r.indexOf("*/",m.lastIndex);k===-1&&Qn("unclosed comment",r,v.index),m.lastIndex=k}else F==="'"?(Ns.lastIndex=v.index,Ns.exec(r)?m.lastIndex=Ns.lastIndex:Qn("unclosed string",r,v.index)):F==='"'?(Rs.lastIndex=v.index,Rs.exec(r)?m.lastIndex=Rs.lastIndex:Qn("unclosed string",r,v.index)):F==="`"&&(Os.lastIndex=v.index,Os.exec(r)?m.lastIndex=Os.lastIndex:Qn("unclosed string",r,v.index))}I?(e.debug&&(I.lineNo=kC(r,E.index)),i.push(I)):Qn("unclosed tag",r,E.index)}if(f(r.slice(A,r.length),!1),e.plugins)for(let b=0;b<e.plugins.length;b++){let y=e.plugins[b];y.processAST&&(i=y.processAST(i,e))}return i}function Wu(r,e){let i=e?.async?this.templatesAsync:this.templatesSync;if(this.resolvePath&&this.readFile&&!r.startsWith("@")){let a=e.filepath,A=i.get(a);if(this.config.cache&&A)return A;{let c=this.readFile(a),u=this.compile(c,e);return this.config.cache&&i.define(a,u),u}}else{let a=i.get(r);if(a)return a;throw new xC(`Failed to get template '${r}'`)}}function Ju(r,e,i){let a,A={...i,async:!1};return typeof r=="string"?(this.resolvePath&&this.readFile&&!r.startsWith("@")&&(A.filepath=this.resolvePath(r,A)),a=Wu.call(this,r,A)):a=r,a.call(this,e,A)}function Vu(r,e,i){let a,A={...i,async:!0};typeof r=="string"?(this.resolvePath&&this.readFile&&!r.startsWith("@")&&(A.filepath=this.resolvePath(r,A)),a=Wu.call(this,r,A)):a=r;let c=a.call(this,e,A);return Promise.resolve(c)}function OC(r,e){let i=this.compile(r,{async:!1});return Ju.call(this,i,e)}function NC(r,e){let i=this.compile(r,{async:!0});return Vu.call(this,i,e)}var Pu=class{constructor(r){this.cache=r}define(r,e){this.cache[r]=e}get(r){return this.cache[r]}remove(r){delete this.cache[r]}reset(){this.cache={}}load(r){this.cache={...this.cache,...r}}},RC=class{constructor(r){r?this.config={...Lu,...r}:this.config={...Lu};let e=[this.config.parse.exec,this.config.parse.interpolate,this.config.parse.raw,"-","_"];for(let i of Object.keys(this.config.customTags))if(e.includes(i))throw new Ls(`Custom tag prefix "${i}" conflicts with a built-in prefix`)}config;RuntimeErr=QC;compile=IC;compileToString=FC;compileBody=TC;parse=YC;render=Ju;renderAsync=Vu;renderString=OC;renderStringAsync=NC;filepathCache={};templatesSync=new Pu({});templatesAsync=new Pu({});resolvePath=null;readFile=null;configure(r){this.config={...this.config,...r}}withConfig(r){return{...this,config:{...this.config,...r}}}loadTemplate(r,e,i){if(typeof e=="string")(i?.async?this.templatesAsync:this.templatesSync).define(r,this.compile(e,i));else{let a=this.templatesSync;(e.constructor.name==="AsyncFunction"||i?.async)&&(a=this.templatesAsync),a.define(r,e)}}},ju=class extends RC{};var GC=new ju({autoTrim:!1});function Et(r,e){return GC.renderString(r,e)}var _u=`<% if (it.kotlin) { -%>
173
+ `)}}return A}function SC(r,e,i,o){let A,c;return Array.isArray(e.autoTrim)?(A=e.autoTrim[1],c=e.autoTrim[0]):A=c=e.autoTrim,(i||i===!1)&&(A=i),(o||o===!1)&&(c=o),!c&&!A?r:A==="slurp"&&c==="slurp"?r.trim():(A==="_"||A==="slurp"?r=r.trimStart():(A==="-"||A==="nl")&&(r=r.replace(/^(?:\r\n|\n|\r)/,"")),c==="_"||c==="slurp"?r=r.trimEnd():(c==="-"||c==="nl")&&(r=r.replace(/(?:\r\n|\n|\r)$/,"")),r)}var DC={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};function MC(r){return DC[r]}function UC(r){let e=String(r);return/[&<>"']/.test(e)?e.replace(/[&<>"']/g,MC):e}var Lu={autoEscape:!0,autoFilter:!1,autoTrim:[!1,"nl"],cache:!1,cacheFilepaths:!0,customTags:{},debug:!1,escapeFunction:UC,filterFunction:r=>String(r),outputFunctionName:"output",functionHeader:"",parse:{exec:"",interpolate:"=",raw:"~"},plugins:[],rmWhitespace:!1,tags:["<%","%>"],useWith:!1,varName:"it",defaultExtension:".eta"},Os=/`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})*}|(?!\${)[^\\`])*`/g,Ns=/'(?:\\[\s\w"'\\`]|[^\n\r'\\])*?'/g,Rs=/"(?:\\[\s\w"'\\`]|[^\n\r"\\])*?"/g;function Gs(r){return r.replace(/[.*+\-?^${}()|[\]\\]/g,"\\$&")}function kC(r,e){return r.slice(0,e).split(`
174
+ `).length}function YC(r){let e=this.config,i=[],o=!1,A=0,c=e.parse,u=Object.keys(e.customTags);if(e.plugins)for(let b=0;b<e.plugins.length;b++){let y=e.plugins[b];y.processTemplate&&(r=y.processTemplate(r,e))}e.rmWhitespace&&(r=r.replace(/[\r\n]+/g,`
175
+ `).replace(/^\s+|\s+$/gm,"")),Os.lastIndex=0,Ns.lastIndex=0,Rs.lastIndex=0;function f(b,y){b&&(b=SC(b,e,o,y),b&&(b=b.replace(/\\|'/g,"\\$&").replace(/\r\n|\n|\r/g,"\\n"),i.push(b)))}let p=[c.exec,c.interpolate,c.raw,...u].reduce((b,y)=>b&&y?b+"|"+Gs(y):y?Gs(y):b,""),g=RegExp(Gs(e.tags[0])+"(-|_)?\\s*("+p+")?\\s*","g"),m=RegExp("'|\"|`|\\/\\*|(\\s*(-|_)?"+Gs(e.tags[1])+")","g"),E;for(;E=g.exec(r);){let b=r.slice(A,E.index);A=E[0].length+E.index;let y=E[1],Q=E[2]||"";f(b,y),m.lastIndex=A;let v,I=!1;for(;v=m.exec(r);)if(v[1]){let F=r.slice(A,v.index);g.lastIndex=A=m.lastIndex,o=v[2],I={t:Q===c.exec?"e":Q===c.raw?"r":Q===c.interpolate?"i":u.includes(Q)?Q:"",val:F};break}else{let F=v[0];if(F==="/*"){let k=r.indexOf("*/",m.lastIndex);k===-1&&Qn("unclosed comment",r,v.index),m.lastIndex=k}else F==="'"?(Ns.lastIndex=v.index,Ns.exec(r)?m.lastIndex=Ns.lastIndex:Qn("unclosed string",r,v.index)):F==='"'?(Rs.lastIndex=v.index,Rs.exec(r)?m.lastIndex=Rs.lastIndex:Qn("unclosed string",r,v.index)):F==="`"&&(Os.lastIndex=v.index,Os.exec(r)?m.lastIndex=Os.lastIndex:Qn("unclosed string",r,v.index))}I?(e.debug&&(I.lineNo=kC(r,E.index)),i.push(I)):Qn("unclosed tag",r,E.index)}if(f(r.slice(A,r.length),!1),e.plugins)for(let b=0;b<e.plugins.length;b++){let y=e.plugins[b];y.processAST&&(i=y.processAST(i,e))}return i}function Wu(r,e){let i=e?.async?this.templatesAsync:this.templatesSync;if(this.resolvePath&&this.readFile&&!r.startsWith("@")){let o=e.filepath,A=i.get(o);if(this.config.cache&&A)return A;{let c=this.readFile(o),u=this.compile(c,e);return this.config.cache&&i.define(o,u),u}}else{let o=i.get(r);if(o)return o;throw new xC(`Failed to get template '${r}'`)}}function Ju(r,e,i){let o,A={...i,async:!1};return typeof r=="string"?(this.resolvePath&&this.readFile&&!r.startsWith("@")&&(A.filepath=this.resolvePath(r,A)),o=Wu.call(this,r,A)):o=r,o.call(this,e,A)}function Vu(r,e,i){let o,A={...i,async:!0};typeof r=="string"?(this.resolvePath&&this.readFile&&!r.startsWith("@")&&(A.filepath=this.resolvePath(r,A)),o=Wu.call(this,r,A)):o=r;let c=o.call(this,e,A);return Promise.resolve(c)}function OC(r,e){let i=this.compile(r,{async:!1});return Ju.call(this,i,e)}function NC(r,e){let i=this.compile(r,{async:!0});return Vu.call(this,i,e)}var Pu=class{constructor(r){this.cache=r}define(r,e){this.cache[r]=e}get(r){return this.cache[r]}remove(r){delete this.cache[r]}reset(){this.cache={}}load(r){this.cache={...this.cache,...r}}},RC=class{constructor(r){r?this.config={...Lu,...r}:this.config={...Lu};let e=[this.config.parse.exec,this.config.parse.interpolate,this.config.parse.raw,"-","_"];for(let i of Object.keys(this.config.customTags))if(e.includes(i))throw new Ls(`Custom tag prefix "${i}" conflicts with a built-in prefix`)}config;RuntimeErr=QC;compile=IC;compileToString=FC;compileBody=TC;parse=YC;render=Ju;renderAsync=Vu;renderString=OC;renderStringAsync=NC;filepathCache={};templatesSync=new Pu({});templatesAsync=new Pu({});resolvePath=null;readFile=null;configure(r){this.config={...this.config,...r}}withConfig(r){return{...this,config:{...this.config,...r}}}loadTemplate(r,e,i){if(typeof e=="string")(i?.async?this.templatesAsync:this.templatesSync).define(r,this.compile(e,i));else{let o=this.templatesSync;(e.constructor.name==="AsyncFunction"||i?.async)&&(o=this.templatesAsync),o.define(r,e)}}},ju=class extends RC{};var GC=new ju({autoTrim:!1});function Et(r,e){return GC.renderString(r,e)}var _u=`<% if (it.kotlin) { -%>
176
176
  import org.jetbrains.kotlin.gradle.dsl.JvmTarget
177
177
 
178
178
  <% } -%>
@@ -300,13 +300,13 @@ publishing {
300
300
 
301
301
  // Should match your modid
302
302
  rootProject.name = '<%= it.modid %>'
303
- `;function Ps(r){return kr(r)>=26||ei(r)>=17}function Xu(r){return kr(r)>=26||ei(r)>=18}function Hs(r){return kr(r)>=26||ei(r)>=19}function Ei(r){return kr(r)>=26||r.endsWith("_unobfuscated")}function kr(r){return vo(r)[0]}function ei(r){return vo(r)[1]}function Ws(r){return vo(r)[2]}function vo(r){return r.split("-")[0].split(".").map(i=>parseInt(i))}function HC(r,e){let i=[],a=e?"Modid":"Mod Name";return r.length==0?[`${a} is empty!`]:(r.length==1?i.push(`${a} is only a single character! (It must be at least 2 characters long)!`):r.length>64&&i.push(`${a} has more than 64 characters!`),r.toLocaleLowerCase().startsWith("fabric")&&i.push("Mod id starts with 'fabric', which is generally reserved for Fabric itself."),i.length===0?void 0:i)}function Io(r){if(r===void 0)return;let e=HC(r,!0)??[],i=r.charAt(0);(i<"a"||i>"z")&&e.push("Modid starts with an invalid character '"+i+"' (it must belowercase a-z)");let a=null;for(let A=1;A<r.length;A++){let c=r.charAt(A);c=="-"||c=="_"||"0"<=c&&c<="9"||"a"<=c&&c<="z"||(a==null&&(a=[]),a.push(c))}if(a!=null){let A="Modid contains invalid characters: "+a.map(c=>"'"+c+"'").join(", ")+"!";e.push(A+"!")}if(e.length!=0)return e}function Fo(r){return r.toLowerCase().replaceAll(/\s+/g,"-").replaceAll(/[^a-za-z0-9-_]/g,"")}var WC={compatibility:"1_8",mixin:"JAVA_8",release:8},JC={compatibility:"16",mixin:"JAVA_16",release:16},zu={compatibility:"17",mixin:"JAVA_17",release:17},VC={compatibility:"21",mixin:"JAVA_21",release:21},jC={compatibility:"25",mixin:"JAVA_25",release:25};function Yr(r){let e=kr(r),i=ei(r);return e>=26?jC:i<=16?WC:i==17?JC:i<=19||i==20&&Ws(r)<=4?zu:VC}var _C=/^[a-z_][a-z0-9_]*(\.[a-z_][a-z0-9_]*)*$/,ZC=`
303
+ `;function Ps(r){return kr(r)>=26||ei(r)>=17}function Xu(r){return kr(r)>=26||ei(r)>=18}function Hs(r){return kr(r)>=26||ei(r)>=19}function Ei(r){return kr(r)>=26||r.endsWith("_unobfuscated")}function kr(r){return va(r)[0]}function ei(r){return va(r)[1]}function Ws(r){return va(r)[2]}function va(r){return r.split("-")[0].split(".").map(i=>parseInt(i))}function HC(r,e){let i=[],o=e?"Modid":"Mod Name";return r.length==0?[`${o} is empty!`]:(r.length==1?i.push(`${o} is only a single character! (It must be at least 2 characters long)!`):r.length>64&&i.push(`${o} has more than 64 characters!`),r.toLocaleLowerCase().startsWith("fabric")&&i.push("Mod id starts with 'fabric', which is generally reserved for Fabric itself."),i.length===0?void 0:i)}function Ia(r){if(r===void 0)return;let e=HC(r,!0)??[],i=r.charAt(0);(i<"a"||i>"z")&&e.push("Modid starts with an invalid character '"+i+"' (it must belowercase a-z)");let o=null;for(let A=1;A<r.length;A++){let c=r.charAt(A);c=="-"||c=="_"||"0"<=c&&c<="9"||"a"<=c&&c<="z"||(o==null&&(o=[]),o.push(c))}if(o!=null){let A="Modid contains invalid characters: "+o.map(c=>"'"+c+"'").join(", ")+"!";e.push(A+"!")}if(e.length!=0)return e}function Fa(r){return r.toLowerCase().replaceAll(/\s+/g,"-").replaceAll(/[^a-za-z0-9-_]/g,"")}var WC={compatibility:"1_8",mixin:"JAVA_8",release:8},JC={compatibility:"16",mixin:"JAVA_16",release:16},zu={compatibility:"17",mixin:"JAVA_17",release:17},VC={compatibility:"21",mixin:"JAVA_21",release:21},jC={compatibility:"25",mixin:"JAVA_25",release:25};function Yr(r){let e=kr(r),i=ei(r);return e>=26?jC:i<=16?WC:i==17?JC:i<=19||i==20&&Ws(r)<=4?zu:VC}var _C=/^[a-z_][a-z0-9_]*(\.[a-z_][a-z0-9_]*)*$/,ZC=`
304
304
  abstract continue for new switch assert default goto package synchronized
305
305
  boolean do if private this break double implements protected throw byte else
306
306
  import public throws case enum instanceof return transient catch extends int
307
307
  short try char final interface static void class finally long strictfp
308
308
  volatile const float native super while _ true false null
309
- `.trim().split(/\s+/),XC=["net.minecraft.","com.mojang.","net.fabricmc.","java."];function Js(r){let e=[];_C.test(r.toLowerCase())||e.push("Package name is not a valid Java package name!");let i=r.split(".").filter(a=>ZC.includes(a));i.length!=0&&e.push(`Package name contains illegal component: '${i[0]}'`);for(let a of XC)r.toLowerCase().startsWith(a)?e.push(`Package name starts with '${a}', which is reserved!`):r.toLowerCase()+"."==a&&e.push(`Package name is '${a}', which is reserved!`);return e}var zC=["zero","one","two","three","four","five","six","seven","eight","nine"];function Ku(r){let e=r.match(/^\d+/);if(!(e&&e[0]))return[r];let i=e[0],a=r.substring(i.length);return[...i.split("").map(A=>zC[parseInt(A)]),a]}function qu(r){return r.filter(Boolean).map(e=>e[0].toUpperCase()+e.slice(1)).join("")}function $u(r){let e=qu(r.split(/\b/).map(i=>i.replaceAll(/\W/g,"")));return qu(Ku(e))}function vn(r){return r.toLowerCase().replaceAll(/[\s/]+/g,".").replaceAll(/[^a-z0-9_\.]/g,"")}function eh(r){let e=Ku(vn(r)).join("");if(Js(e).length===0)return e}async function th(r,e){await r.write("build.gradle",Et(_u,{...e,java:Yr(e.minecraftVersion)})),await r.write("settings.gradle",Et(Zu,e))}var rh=`<% if (it.kotlin) { -%>
309
+ `.trim().split(/\s+/),XC=["net.minecraft.","com.mojang.","net.fabricmc.","java."];function Js(r){let e=[];_C.test(r.toLowerCase())||e.push("Package name is not a valid Java package name!");let i=r.split(".").filter(o=>ZC.includes(o));i.length!=0&&e.push(`Package name contains illegal component: '${i[0]}'`);for(let o of XC)r.toLowerCase().startsWith(o)?e.push(`Package name starts with '${o}', which is reserved!`):r.toLowerCase()+"."==o&&e.push(`Package name is '${o}', which is reserved!`);return e}var zC=["zero","one","two","three","four","five","six","seven","eight","nine"];function Ku(r){let e=r.match(/^\d+/);if(!(e&&e[0]))return[r];let i=e[0],o=r.substring(i.length);return[...i.split("").map(A=>zC[parseInt(A)]),o]}function qu(r){return r.filter(Boolean).map(e=>e[0].toUpperCase()+e.slice(1)).join("")}function $u(r){let e=qu(r.split(/\b/).map(i=>i.replaceAll(/\W/g,"")));return qu(Ku(e))}function vn(r){return r.toLowerCase().replaceAll(/[\s/]+/g,".").replaceAll(/[^a-z0-9_\.]/g,"")}function eh(r){let e=Ku(vn(r)).join("");if(Js(e).length===0)return e}async function th(r,e){await r.write("build.gradle",Et(_u,{...e,java:Yr(e.minecraftVersion)})),await r.write("settings.gradle",Et(Zu,e))}var rh=`<% if (it.kotlin) { -%>
310
310
  import org.jetbrains.kotlin.gradle.dsl.JvmTarget
311
311
 
312
312
  <% } -%>
@@ -462,7 +462,7 @@ group=<%= it.packageName %>
462
462
 
463
463
  # Dependencies
464
464
  fabric_api_version=<%= it.fabricVersion %>
465
- `;async function ah(r,e){await r.write("gradle.properties",Et(sh,e)),e.gradleKotlin?await nh(r,e):await th(r,e)}function In(r){for(var e=globalThis.atob(r),i=e.length,a=new Uint8Array(i),A=0;A<i;A++)a[A]=e.charCodeAt(A);return a.buffer}var oh=`#!/bin/sh
465
+ `;async function oh(r,e){await r.write("gradle.properties",Et(sh,e)),e.gradleKotlin?await nh(r,e):await th(r,e)}function In(r){for(var e=globalThis.atob(r),i=e.length,o=new Uint8Array(i),A=0;A<i;A++)o[A]=e.charCodeAt(A);return o.buffer}var ah=`#!/bin/sh
466
466
 
467
467
  #
468
468
  # Copyright \xA9 2015 the original authors.
@@ -871,7 +871,7 @@ jobs:
871
871
  with:
872
872
  name: Artifacts
873
873
  path: build/libs/
874
- `;async function uh({writer:r}){await r.write("gradlew",oh,{executable:!0}),await r.write("gradlew.bat",Ah),await r.write("gradle/wrapper/gradle-wrapper.properties",lh),await r.write("gradle/wrapper/gradle-wrapper.jar",In(ch)),await r.write(".gitignore",Vs),await r.write(".github/workflows/build.yml",js)}var To=`package <%= it.packageName %>;
874
+ `;async function uh({writer:r}){await r.write("gradlew",ah,{executable:!0}),await r.write("gradlew.bat",Ah),await r.write("gradle/wrapper/gradle-wrapper.properties",lh),await r.write("gradle/wrapper/gradle-wrapper.jar",In(ch)),await r.write(".gitignore",Vs),await r.write(".github/workflows/build.yml",js)}var Ta=`package <%= it.packageName %>;
875
875
 
876
876
  import <%= it.targetClassFull %>;
877
877
  import org.spongepowered.asm.mixin.Mixin;
@@ -885,7 +885,7 @@ public class <%= it.className %> {
885
885
  private void init(CallbackInfo info) {
886
886
  // This code is injected into the start of <%= it.targetClass %>.<%= it.targetMethod %>()V
887
887
  }
888
- }`;async function hh(r,e){let i=e.packageName+".mixin",a="ExampleMixin",A="MinecraftServer",c="net.minecraft.server.MinecraftServer",u=e.mojmap?"loadLevel":"loadWorld",f={required:!0,package:i,compatibilityLevel:Yr(e.minecraftVersion).mixin,mixins:[a],injectors:{defaultRequire:1},overwrites:{requireAnnotations:!0}},p=`${e.modid}.mixins.json`;return await r.write(`src/main/resources/${p}`,JSON.stringify(f,null," ")),await r.write(`src/main/java/${i.replaceAll(".","/")}/${a}.java`,Et(To,{className:a,packageName:i,targetClass:A,targetClassFull:c,targetMethod:u})),[p]}async function fh(r,e){let i=e.packageName+".client.mixin",a="ExampleClientMixin",A=e.mojmap?"Minecraft":"MinecraftClient",c=`net.minecraft.client.${A}`,u="run",f={required:!0,package:i,compatibilityLevel:Yr(e.minecraftVersion).mixin,client:[a],injectors:{defaultRequire:1},overwrites:{requireAnnotations:!0}},p=`${e.modid}.client.mixins.json`;return await r.write(`src/client/resources/${p}`,JSON.stringify(f,null," ")),await r.write(`src/client/java/${i.replaceAll(".","/")}/${a}.java`,Et(To,{className:a,packageName:i,targetClass:A,targetClassFull:c,targetMethod:u})),[{config:p,environment:"client"}]}var ph=`package <%= it.package %>;
888
+ }`;async function hh(r,e){let i=e.packageName+".mixin",o="ExampleMixin",A="MinecraftServer",c="net.minecraft.server.MinecraftServer",u=e.mojmap?"loadLevel":"loadWorld",f={required:!0,package:i,compatibilityLevel:Yr(e.minecraftVersion).mixin,mixins:[o],injectors:{defaultRequire:1},overwrites:{requireAnnotations:!0}},p=`${e.modid}.mixins.json`;return await r.write(`src/main/resources/${p}`,JSON.stringify(f,null," ")),await r.write(`src/main/java/${i.replaceAll(".","/")}/${o}.java`,Et(Ta,{className:o,packageName:i,targetClass:A,targetClassFull:c,targetMethod:u})),[p]}async function fh(r,e){let i=e.packageName+".client.mixin",o="ExampleClientMixin",A=e.mojmap?"Minecraft":"MinecraftClient",c=`net.minecraft.client.${A}`,u="run",f={required:!0,package:i,compatibilityLevel:Yr(e.minecraftVersion).mixin,client:[o],injectors:{defaultRequire:1},overwrites:{requireAnnotations:!0}},p=`${e.modid}.client.mixins.json`;return await r.write(`src/client/resources/${p}`,JSON.stringify(f,null," ")),await r.write(`src/client/java/${i.replaceAll(".","/")}/${o}.java`,Et(Ta,{className:o,packageName:i,targetClass:A,targetClassFull:c,targetMethod:u})),[{config:p,environment:"client"}]}var ph=`package <%= it.package %>;
889
889
 
890
890
  import net.fabricmc.api.ModInitializer;
891
891
 
@@ -991,7 +991,7 @@ import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator
991
991
  object <%= it.className %> : DataGeneratorEntrypoint {
992
992
  override fun onInitializeDataGenerator(fabricDataGenerator: FabricDataGenerator) {
993
993
  }
994
- }`;function fb(r,e){let i=kr(e),a=ei(e);return i>1||a>20?{name:`${r.class}.${r.factoryName}`,isConstructor:!1}:{name:r.class,isConstructor:!0}}function pb(r){if(!(r.unobfuscated||r.mojmap))return{package:"net.minecraft.util",class:"Identifier",factoryName:"of"};let e=kr(r.minecraftVersion),i=ei(r.minecraftVersion),a=Ws(r.minecraftVersion);return{package:"net.minecraft.resources",class:e>1||i==21&&a==11?"Identifier":"ResourceLocation",factoryName:"fromNamespaceAndPath"}}function db(r){let e=pb(r),i=fb(e,r.minecraftVersion);return{...e,factory:i}}async function wh(r,e){let i=$u(e.projectName),a={package:e.packageName,clientPackage:e.packageName+".client",className:i,classFullName:e.packageName+"."+i,clientClassFullName:e.packageName+".client."+i,path:e.packageName.replaceAll(".","/")+"/"+i,clientPath:e.packageName.replaceAll(".","/")+"/client/"+i,modid:e.modid,slf4j:Xu(e.minecraftVersion),clientEntrypoint:e.splitSources,dataEntrypoint:e.dataGeneration,identifier:db(e)};return e.kotlin?await mb(r,a):await gb(r,a)}async function gb(r,e){var i={main:[e.classFullName]};if(await r.write(`src/main/java/${e.path}.java`,Et(ph,e)),e.clientEntrypoint&&(await r.write(`src/client/java/${e.clientPath}Client.java`,Et(gh,{...e,className:e.className+"Client",package:e.clientPackage})),i={...i,client:[e.clientClassFullName+"Client"]}),e.dataEntrypoint){let a=e.clientEntrypoint?"client":"main",A=e.clientEntrypoint?e.clientPath:e.path,c=e.clientEntrypoint?e.clientClassFullName:e.classFullName;await r.write(`src/${a}/java/${A}DataGenerator.java`,Et(Bh,{...e,className:e.className+"DataGenerator",package:e.clientEntrypoint?e.clientPackage:e.package})),i={...i,"fabric-datagen":[c+"DataGenerator"]}}return i}async function mb(r,e){var i={main:[{value:e.classFullName,adapter:"kotlin"}]};if(await r.write(`src/main/kotlin/${e.path}.kt`,Et(dh,e)),e.clientEntrypoint&&(await r.write(`src/client/kotlin/${e.clientPath}Client.kt`,Et(mh,{...e,className:e.className+"Client",package:e.clientPackage})),i={...i,client:[{value:e.clientClassFullName+"Client",adapter:"kotlin"}]}),e.dataEntrypoint){let a=e.clientEntrypoint?"client":"main",A=e.clientEntrypoint?e.clientPath:e.path,c=e.clientEntrypoint?e.clientClassFullName:e.classFullName;await r.write(`src/${a}/kotlin/${A}DataGenerator.kt`,Et(Eh,{...e,className:e.className+"DataGenerator",package:e.clientEntrypoint?e.clientPackage:e.package})),i={...i,"fabric-datagen":[{value:c+"DataGenerator",adapter:"kotlin"}]}}return i}var yh="iVBORw0KGgoAAAANSUhEUgAAAIAAAACAAQMAAAD58POIAAAABlBMVEUAAAD///+l2Z/dAAABeklEQVRIx9XTsW1cMQwGYAoKIlfWbaAVUroKbxSPcBtIQRaTN9EILFkI+l3ovXuSLvYZCK4wK+IrWBD/T1iGHg41fBUcygwWKY7QLGiCuoLaNoOY+1BnKFfQDUhnyGeZIZ3lNEO+LFBef01gyutlAlvOEzRb6MIDVCskDAD01MEJCTeKjWgHI1wp1A3Ui9Wg5HSHoFaDkN1BgroOzwN4ORkJuQNXX738NsKFAULpEI2wdIhAdRLTCM1JzBIHsMJZokSAkK/ApQMAbMADhCycDzASsoQObwDwR31Sn154AFJHpwPqT6NENACZOgIambYBNrCYAOSQflAcIEDCmPXEDyrQ42GP9wBuBXuAMqBENxBneCGegVNYIPsFygrqFqh2gXYDZoG+j5BuIC6QVyh8D444aPgXBKi/B9XtUD+ANkH9CsAuNz4D/wH8/Rx4gPZIsP8DDlAeHrRBXUFXkCugQ/YLUJhBiCeg3o8JsICdAKm38OhtGio2zveBd37Jm8IEWUmfAAAAAElFTkSuQmCC";function Ch(r,e,i){if(!e)return In(yh);let a=i.create(128,128);return a!=null&&Bb(a,r)?a.getPng():In(yh)}function Bb(r,e){let i=r.getContext("2d");if(i==null)return!1;i.fillStyle="#ffffff",i.fillRect(0,0,128,128);let a=e.split(/\s+/),A=0,c=Array(a.length),u=65;for(;;){A=0;for(let p of a){let g=u;do g--,i.font=`${g}px ${Pi}`;while(i.measureText(p).width>124);u=Math.min(u,g)}for(let p=0;p<a.length;p++){let g=a[p];i.font=`${u}px ${Pi}`;let m=r.measureText(i,g);c[p]=m.ascent+m.descent,A+=c[p]}if(A+=(a.length-1)*2,A<=124)break}let f=(128-A)/2;for(let p=0;p<a.length;p++){let g=0;for(let b of c.slice(0,p))g+=b+2;let m=a[p];i.font=`${u}px ${Pi}`,i.fillStyle="#000000",i.textAlign="center";let E=r.measureText(i,m);i.fillText(m,64,f+g+E.ascent)}return!0}function Eb(r){return Number(r.split(".")[1])>=59}async function bh(r,e,i){let a=[...await hh(r,i),...i.splitSources?await fh(r,i):[]],A=i.minecraftVersion.indexOf("-");var c=i.minecraftVersion.substring(0,A===-1?i.minecraftVersion.length:A+1);let u={schemaVersion:1,id:i.modid,version:"${version}",name:i.projectName,description:"This is an example description! Tell everyone what your mod is about!",authors:["Me!"],contact:{homepage:"https://fabricmc.net/",sources:"https://github.com/FabricMC/fabric-example-mod"},license:"CC0-1.0",icon:`assets/${i.modid}/icon.png`,environment:"*",entrypoints:await wh(r,i),mixins:a,depends:{fabricloader:">="+i.loaderVersion,minecraft:"~"+c,java:">="+Yr(i.minecraftVersion).release}};u.depends[Eb(i.fabricVersion)?"fabric-api":"fabric"]="*",i.kotlin&&(u.depends={...u.depends,"fabric-language-kotlin":"*"}),await r.write("src/main/resources/fabric.mod.json",JSON.stringify(u,null," ")),await r.write(`src/main/resources/assets/${i.modid}/icon.png`,Ch(i.projectName,i.uniqueModIcon,e))}var xh=`#
994
+ }`;function fb(r,e){let i=kr(e),o=ei(e);return i>1||o>20?{name:`${r.class}.${r.factoryName}`,isConstructor:!1}:{name:r.class,isConstructor:!0}}function pb(r){if(!(r.unobfuscated||r.mojmap))return{package:"net.minecraft.util",class:"Identifier",factoryName:"of"};let e=kr(r.minecraftVersion),i=ei(r.minecraftVersion),o=Ws(r.minecraftVersion);return{package:"net.minecraft.resources",class:e>1||i==21&&o==11?"Identifier":"ResourceLocation",factoryName:"fromNamespaceAndPath"}}function db(r){let e=pb(r),i=fb(e,r.minecraftVersion);return{...e,factory:i}}async function wh(r,e){let i=$u(e.projectName),o={package:e.packageName,clientPackage:e.packageName+".client",className:i,classFullName:e.packageName+"."+i,clientClassFullName:e.packageName+".client."+i,path:e.packageName.replaceAll(".","/")+"/"+i,clientPath:e.packageName.replaceAll(".","/")+"/client/"+i,modid:e.modid,slf4j:Xu(e.minecraftVersion),clientEntrypoint:e.splitSources,dataEntrypoint:e.dataGeneration,identifier:db(e)};return e.kotlin?await mb(r,o):await gb(r,o)}async function gb(r,e){var i={main:[e.classFullName]};if(await r.write(`src/main/java/${e.path}.java`,Et(ph,e)),e.clientEntrypoint&&(await r.write(`src/client/java/${e.clientPath}Client.java`,Et(gh,{...e,className:e.className+"Client",package:e.clientPackage})),i={...i,client:[e.clientClassFullName+"Client"]}),e.dataEntrypoint){let o=e.clientEntrypoint?"client":"main",A=e.clientEntrypoint?e.clientPath:e.path,c=e.clientEntrypoint?e.clientClassFullName:e.classFullName;await r.write(`src/${o}/java/${A}DataGenerator.java`,Et(Bh,{...e,className:e.className+"DataGenerator",package:e.clientEntrypoint?e.clientPackage:e.package})),i={...i,"fabric-datagen":[c+"DataGenerator"]}}return i}async function mb(r,e){var i={main:[{value:e.classFullName,adapter:"kotlin"}]};if(await r.write(`src/main/kotlin/${e.path}.kt`,Et(dh,e)),e.clientEntrypoint&&(await r.write(`src/client/kotlin/${e.clientPath}Client.kt`,Et(mh,{...e,className:e.className+"Client",package:e.clientPackage})),i={...i,client:[{value:e.clientClassFullName+"Client",adapter:"kotlin"}]}),e.dataEntrypoint){let o=e.clientEntrypoint?"client":"main",A=e.clientEntrypoint?e.clientPath:e.path,c=e.clientEntrypoint?e.clientClassFullName:e.classFullName;await r.write(`src/${o}/kotlin/${A}DataGenerator.kt`,Et(Eh,{...e,className:e.className+"DataGenerator",package:e.clientEntrypoint?e.clientPackage:e.package})),i={...i,"fabric-datagen":[{value:c+"DataGenerator",adapter:"kotlin"}]}}return i}var yh="iVBORw0KGgoAAAANSUhEUgAAAIAAAACAAQMAAAD58POIAAAABlBMVEUAAAD///+l2Z/dAAABeklEQVRIx9XTsW1cMQwGYAoKIlfWbaAVUroKbxSPcBtIQRaTN9EILFkI+l3ovXuSLvYZCK4wK+IrWBD/T1iGHg41fBUcygwWKY7QLGiCuoLaNoOY+1BnKFfQDUhnyGeZIZ3lNEO+LFBef01gyutlAlvOEzRb6MIDVCskDAD01MEJCTeKjWgHI1wp1A3Ui9Wg5HSHoFaDkN1BgroOzwN4ORkJuQNXX738NsKFAULpEI2wdIhAdRLTCM1JzBIHsMJZokSAkK/ApQMAbMADhCycDzASsoQObwDwR31Sn154AFJHpwPqT6NENACZOgIambYBNrCYAOSQflAcIEDCmPXEDyrQ42GP9wBuBXuAMqBENxBneCGegVNYIPsFygrqFqh2gXYDZoG+j5BuIC6QVyh8D444aPgXBKi/B9XtUD+ANkH9CsAuNz4D/wH8/Rx4gPZIsP8DDlAeHrRBXUFXkCugQ/YLUJhBiCeg3o8JsICdAKm38OhtGio2zveBd37Jm8IEWUmfAAAAAElFTkSuQmCC";function Ch(r,e,i){if(!e)return In(yh);let o=i.create(128,128);return o!=null&&Bb(o,r)?o.getPng():In(yh)}function Bb(r,e){let i=r.getContext("2d");if(i==null)return!1;i.fillStyle="#ffffff",i.fillRect(0,0,128,128);let o=e.split(/\s+/),A=0,c=Array(o.length),u=65;for(;;){A=0;for(let p of o){let g=u;do g--,i.font=`${g}px ${Pi}`;while(i.measureText(p).width>124);u=Math.min(u,g)}for(let p=0;p<o.length;p++){let g=o[p];i.font=`${u}px ${Pi}`;let m=r.measureText(i,g);c[p]=m.ascent+m.descent,A+=c[p]}if(A+=(o.length-1)*2,A<=124)break}let f=(128-A)/2;for(let p=0;p<o.length;p++){let g=0;for(let b of c.slice(0,p))g+=b+2;let m=o[p];i.font=`${u}px ${Pi}`,i.fillStyle="#000000",i.textAlign="center";let E=r.measureText(i,m);i.fillText(m,64,f+g+E.ascent)}return!0}function Eb(r){return Number(r.split(".")[1])>=59}async function bh(r,e,i){let o=[...await hh(r,i),...i.splitSources?await fh(r,i):[]],A=i.minecraftVersion.indexOf("-");var c=i.minecraftVersion.substring(0,A===-1?i.minecraftVersion.length:A+1);let u={schemaVersion:1,id:i.modid,version:"${version}",name:i.projectName,description:"This is an example description! Tell everyone what your mod is about!",authors:["Me!"],contact:{homepage:"https://fabricmc.net/",sources:"https://github.com/FabricMC/fabric-example-mod"},license:"CC0-1.0",icon:`assets/${i.modid}/icon.png`,environment:"*",entrypoints:await wh(r,i),mixins:o,depends:{fabricloader:">="+i.loaderVersion,minecraft:"~"+c,java:">="+Yr(i.minecraftVersion).release}};u.depends[Eb(i.fabricVersion)?"fabric-api":"fabric"]="*",i.kotlin&&(u.depends={...u.depends,"fabric-language-kotlin":"*"}),await r.write("src/main/resources/fabric.mod.json",JSON.stringify(u,null," ")),await r.write(`src/main/resources/assets/${i.modid}/icon.png`,Ch(i.projectName,i.uniqueModIcon,e))}var xh=`#
995
995
  # https://help.github.com/articles/dealing-with-line-endings/
996
996
  #
997
997
  # Linux start script should use lf
@@ -1129,12 +1129,12 @@ For setup instructions, please see the [Fabric Documentation page](https://docs.
1129
1129
  ## License
1130
1130
 
1131
1131
  This template is available under the CC0 license. Feel free to learn from it and incorporate it in your own projects.
1132
- `;async function Ih(r,e){await r.write(".gitattributes",xh),await r.write(".gitignore",Vs),await r.write(".github/workflows/build.yml",js),await r.write("LICENSE",Qh),await r.write("README.md",Et(vh,e))}async function So(){let r=await Ms();return r.filter(e=>{let i=e.version;return i.startsWith("1.14")&&i!="1.14.4"?!1:e.stable?!0:r[0].version==i})}var Pi="Comic Relief";async function Fh(r){let e=await bb(r.config);await uh(r),await ah(r.writer,e),await bh(r.writer,r.canvas,e),await Ih(r.writer,e)}async function bb(r){let e=Ei(r.minecraftVersion);return{...r,splitSources:Hs(r.minecraftVersion)&&r.splitSources,dataGeneration:Ps(r.minecraftVersion)&&r.dataGeneration,loaderVersion:(await Us()).find(i=>i.stable).version,fabricVersion:await ks(r.minecraftVersion),yarnVersion:e?void 0:(await ku(r.minecraftVersion))[0].version,kotlin:await xb(r),unobfuscated:e}}async function xb(r){if(!r.useKotlin)return;let i=(await Yu()).pop(),a=i.split("+kotlin.")[1];return{fabricKotlinAdapterVersion:i,kotlinVersion:a}}var I0=bn(ag(),1);var og=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",Fv=og+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",Tv="["+og+"]["+Fv+"]*",Sv=new RegExp("^"+Tv+"$");function Ag(r,e){let i=[],a=e.exec(r);for(;a;){let A=[];A.startIndex=e.lastIndex-a[0].length;let c=a.length;for(let u=0;u<c;u++)A.push(a[u]);i.push(A),a=e.exec(r)}return i}var PA=function(r){let e=Sv.exec(r);return!(e===null||typeof e>"u")};function lg(r){return typeof r<"u"}var Gn=["hasOwnProperty","toString","valueOf","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__"],la=["__proto__","constructor","prototype"];var Dv={allowBooleanAttributes:!1,unpairedTags:[]};function fg(r,e){e=Object.assign({},Dv,e);let i=[],a=!1,A=!1;r[0]==="\uFEFF"&&(r=r.substr(1));for(let c=0;c<r.length;c++)if(r[c]==="<"&&r[c+1]==="?"){if(c+=2,c=cg(r,c),c.err)return c}else if(r[c]==="<"){let u=c;if(c++,r[c]==="!"){c=ug(r,c);continue}else{let f=!1;r[c]==="/"&&(f=!0,c++);let p="";for(;c<r.length&&r[c]!==">"&&r[c]!==" "&&r[c]!==" "&&r[c]!==`
1133
- `&&r[c]!=="\r";c++)p+=r[c];if(p=p.trim(),p[p.length-1]==="/"&&(p=p.substring(0,p.length-1),c--),!Gv(p)){let E;return p.trim().length===0?E="Invalid space after '<'.":E="Tag '"+p+"' is an invalid name.",mt("InvalidTag",E,Yt(r,c))}let g=kv(r,c);if(g===!1)return mt("InvalidAttr","Attributes for '"+p+"' have open quote.",Yt(r,c));let m=g.value;if(c=g.index,m[m.length-1]==="/"){let E=c-m.length;m=m.substring(0,m.length-1);let b=hg(m,e);if(b===!0)a=!0;else return mt(b.err.code,b.err.msg,Yt(r,E+b.err.line))}else if(f)if(g.tagClosed){if(m.trim().length>0)return mt("InvalidTag","Closing tag '"+p+"' can't have attributes or invalid starting.",Yt(r,u));if(i.length===0)return mt("InvalidTag","Closing tag '"+p+"' has not been opened.",Yt(r,u));{let E=i.pop();if(p!==E.tagName){let b=Yt(r,E.tagStartPos);return mt("InvalidTag","Expected closing tag '"+E.tagName+"' (opened in line "+b.line+", col "+b.col+") instead of closing tag '"+p+"'.",Yt(r,u))}i.length==0&&(A=!0)}}else return mt("InvalidTag","Closing tag '"+p+"' doesn't have proper closing.",Yt(r,c));else{let E=hg(m,e);if(E!==!0)return mt(E.err.code,E.err.msg,Yt(r,c-m.length+E.err.line));if(A===!0)return mt("InvalidXml","Multiple possible root nodes found.",Yt(r,c));e.unpairedTags.indexOf(p)!==-1||i.push({tagName:p,tagStartPos:u}),a=!0}for(c++;c<r.length;c++)if(r[c]==="<")if(r[c+1]==="!"){c++,c=ug(r,c);continue}else if(r[c+1]==="?"){if(c=cg(r,++c),c.err)return c}else break;else if(r[c]==="&"){let E=Nv(r,c);if(E==-1)return mt("InvalidChar","char '&' is not expected.",Yt(r,c));c=E}else if(A===!0&&!ji(r[c]))return mt("InvalidXml","Extra text at the end",Yt(r,c));r[c]==="<"&&c--}}else{if(ji(r[c]))continue;return mt("InvalidChar","char '"+r[c]+"' is not expected.",Yt(r,c))}if(a){if(i.length==1)return mt("InvalidTag","Unclosed tag '"+i[0].tagName+"'.",Yt(r,i[0].tagStartPos));if(i.length>0)return mt("InvalidXml","Invalid '"+JSON.stringify(i.map(c=>c.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1})}else return mt("InvalidXml","Start tag expected.",1);return!0}function ji(r){return r===" "||r===" "||r===`
1134
- `||r==="\r"}function cg(r,e){let i=e;for(;e<r.length;e++)if(r[e]=="?"||r[e]==" "){let a=r.substr(i,e-i);if(e>5&&a==="xml")return mt("InvalidXml","XML declaration allowed only at the start of the document.",Yt(r,e));if(r[e]=="?"&&r[e+1]==">"){e++;break}else continue}return e}function ug(r,e){if(r.length>e+5&&r[e+1]==="-"&&r[e+2]==="-"){for(e+=3;e<r.length;e++)if(r[e]==="-"&&r[e+1]==="-"&&r[e+2]===">"){e+=2;break}}else if(r.length>e+8&&r[e+1]==="D"&&r[e+2]==="O"&&r[e+3]==="C"&&r[e+4]==="T"&&r[e+5]==="Y"&&r[e+6]==="P"&&r[e+7]==="E"){let i=1;for(e+=8;e<r.length;e++)if(r[e]==="<")i++;else if(r[e]===">"&&(i--,i===0))break}else if(r.length>e+9&&r[e+1]==="["&&r[e+2]==="C"&&r[e+3]==="D"&&r[e+4]==="A"&&r[e+5]==="T"&&r[e+6]==="A"&&r[e+7]==="["){for(e+=8;e<r.length;e++)if(r[e]==="]"&&r[e+1]==="]"&&r[e+2]===">"){e+=2;break}}return e}var Mv='"',Uv="'";function kv(r,e){let i="",a="",A=!1;for(;e<r.length;e++){if(r[e]===Mv||r[e]===Uv)a===""?a=r[e]:a!==r[e]||(a="");else if(r[e]===">"&&a===""){A=!0;break}i+=r[e]}return a!==""?!1:{value:i,index:e,tagClosed:A}}function Yv(r){let e=[],i=r.length,a=0;for(;a<i;){let A=a;for(;a<i&&ji(r[a]);)a++;if(a>=i)break;if(r[a]==="="){a=A+1;continue}let c=r.slice(A,a),u=a;for(;a<i&&!ji(r[a])&&r[a]!=="=";)a++;let f=r.slice(u,a),p,g=a;for(;g<i&&ji(r[g]);)g++;g<i&&r[g]==="="&&(p=r.slice(a,g+1),a=g+1);let m,E,b=a;for(;b<i&&ji(r[b]);)b++;if(b<i&&(r[b]==='"'||r[b]==="'")){let Q=b+1,v=r.indexOf(r[b],Q);v!==-1&&(m=r[b],E=r.slice(Q,v),a=v+1)}let y={startIndex:A};y[1]=c,y[2]=f,y[3]=p,y[4]=m!==void 0?!0:void 0,y[5]=m,y[6]=E,e.push(y)}return e}function hg(r,e){let i=Yv(r),a={};for(let A=0;A<i.length;A++){if(i[A][1].length===0)return mt("InvalidAttr","Attribute '"+i[A][2]+"' has no space in starting.",Ln(i[A]));if(i[A][3]!==void 0&&i[A][4]===void 0)return mt("InvalidAttr","Attribute '"+i[A][2]+"' is without value.",Ln(i[A]));if(i[A][3]===void 0&&!e.allowBooleanAttributes)return mt("InvalidAttr","boolean attribute '"+i[A][2]+"' is not allowed.",Ln(i[A]));let c=i[A][2];if(!Rv(c))return mt("InvalidAttr","Attribute '"+c+"' is an invalid name.",Ln(i[A]));if(!Object.prototype.hasOwnProperty.call(a,c))a[c]=1;else return mt("InvalidAttr","Attribute '"+c+"' is repeated.",Ln(i[A]))}return!0}function Ov(r,e){let i=/\d/;for(r[e]==="x"&&(e++,i=/[\da-fA-F]/);e<r.length;e++){if(r[e]===";")return e;if(!r[e].match(i))break}return-1}function Nv(r,e){if(e++,r[e]===";")return-1;if(r[e]==="#")return e++,Ov(r,e);let i=0;for(;e<r.length;e++,i++)if(!(r[e].match(/\w/)&&i<20)){if(r[e]===";")break;return-1}return e}function mt(r,e,i){return{err:{code:r,msg:e,line:i.line||i,col:i.col}}}function Rv(r){return PA(r)}function Gv(r){return PA(r)}function Yt(r,e){let i=r.substring(0,e).split(/\r?\n/);return{line:i.length,col:i[i.length-1].length+1}}function Ln(r){return r.startIndex+r[1].length}var HA={cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",euro:"\u20AC",dollar:"$",fnof:"\u0192",inr:"\u20B9",af:"\u060B",birr:"\u1265\u122D",peso:"\u20B1",rub:"\u20BD",won:"\u20A9",yuan:"\xA5",cedil:"\xB8"};var Pn={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'},WA={nbsp:"\xA0",copy:"\xA9",reg:"\xAE",trade:"\u2122",mdash:"\u2014",ndash:"\u2013",hellip:"\u2026",laquo:"\xAB",raquo:"\xBB",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",bull:"\u2022",para:"\xB6",sect:"\xA7",deg:"\xB0",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE"};var _i=Object.freeze({ALLOW:"allow",BLOCK:"block",THROW:"throw"}),Lv=new Set("!?\\\\/[]$%{}^&*()<>|+");function pg(r){if(r[0]==="#")throw new Error(`[EntityReplacer] Invalid character '#' in entity name: "${r}"`);for(let e of r)if(Lv.has(e))throw new Error(`[EntityReplacer] Invalid character '${e}' in entity name: "${r}"`);return r}function Hn(...r){let e=Object.create(null);for(let i of r)if(i)for(let a of Object.keys(i)){let A=i[a];if(typeof A=="string")e[a]=A;else if(A&&typeof A=="object"&&A.val!==void 0){let c=A.val;typeof c=="string"&&(e[a]=c)}}return e}var Ci="external",ca="base",JA="all";function Pv(r){return!r||r===Ci?new Set([Ci]):r===JA?new Set([JA]):r===ca?new Set([ca]):Array.isArray(r)?new Set(r):new Set([Ci])}var Lt=Object.freeze({allow:0,leave:1,remove:2,throw:3}),Hv=new Set([9,10,13]);function Wv(r){if(!r)return{xmlVersion:1,onLevel:Lt.allow,nullLevel:Lt.remove};let e=r.xmlVersion===1.1?1.1:1,i=Lt[r.onNCR]??Lt.allow,a=Lt[r.nullNCR]??Lt.remove,A=Math.max(a,Lt.remove);return{xmlVersion:e,onLevel:i,nullLevel:A}}var Zi=class{constructor(e={}){this._limit=e.limit||{},this._maxTotalExpansions=this._limit.maxTotalExpansions||0,this._maxExpandedLength=this._limit.maxExpandedLength||0,this._postCheck=typeof e.postCheck=="function"?e.postCheck:a=>a,this._limitTiers=Pv(this._limit.applyLimitsTo??Ci),this._numericAllowed=e.numericAllowed??!0,this._baseMap=Hn(Pn,e.namedEntities||null),this._externalMap=Object.create(null),this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this._removeSet=new Set(e.remove&&Array.isArray(e.remove)?e.remove:[]),this._leaveSet=new Set(e.leave&&Array.isArray(e.leave)?e.leave:[]);let i=Wv(e.ncr);this._ncrXmlVersion=i.xmlVersion,this._ncrOnLevel=i.onLevel,this._ncrNullLevel=i.nullLevel,this._onExternalEntity=typeof e.onExternalEntity=="function"?e.onExternalEntity:null,this._onInputEntity=typeof e.onInputEntity=="function"?e.onInputEntity:null}_applyRegistrationHook(e,i,a,A){if(!e)return!0;let c=e(i,a);if(c===_i.BLOCK)return!1;if(c===_i.THROW)throw new Error(`[EntityDecoder] Registration of ${A} entity "&${i};" was rejected by hook`);return!0}setExternalEntities(e){if(e)for(let A of Object.keys(e))pg(A);if(!this._onExternalEntity){this._externalMap=Hn(e);return}let i=Hn(e),a=Object.create(null);for(let[A,c]of Object.entries(i))this._applyRegistrationHook(this._onExternalEntity,A,c,"external")&&(a[A]=c);this._externalMap=a}addExternalEntity(e,i){pg(e),typeof i=="string"&&i.indexOf("&")===-1&&this._applyRegistrationHook(this._onExternalEntity,e,i,"external")&&(this._externalMap[e]=i)}addInputEntities(e){if(this._totalExpansions=0,this._expandedLength=0,!this._onInputEntity){this._inputMap=Hn(e);return}let i=Hn(e),a=Object.create(null);for(let[A,c]of Object.entries(i))this._applyRegistrationHook(this._onInputEntity,A,c,"input")&&(a[A]=c);this._inputMap=a}reset(){return this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this}setXmlVersion(e){this._ncrXmlVersion=e===1.1?1.1:1}decode(e){if(typeof e!="string"||e.length===0||e.indexOf("&")===-1)return e;let i=e,a=[],A=e.length,c=0,u=0,f=this._maxTotalExpansions>0,p=this._maxExpandedLength>0,g=f||p;for(;u<A;){if(e.charCodeAt(u)!==38){u++;continue}let E=u+1;for(;E<A&&e.charCodeAt(E)!==59&&E-u<=32;)E++;if(E>=A||e.charCodeAt(E)!==59){u++;continue}let b=e.slice(u+1,E);if(b.length===0){u++;continue}let y,Q;if(this._removeSet.has(b))y="",Q===void 0&&(Q=Ci);else if(this._leaveSet.has(b)){u++;continue}else if(b.charCodeAt(0)===35){let v=this._resolveNCR(b);if(v===void 0){u++;continue}y=v,Q=ca}else{let v=this._resolveName(b);y=v?.value,Q=v?.tier}if(y===void 0){u++;continue}if(u>c&&a.push(e.slice(c,u)),a.push(y),c=E+1,u=c,g&&this._tierCounts(Q)){if(f&&(this._totalExpansions++,this._totalExpansions>this._maxTotalExpansions))throw new Error(`[EntityReplacer] Entity expansion count limit exceeded: ${this._totalExpansions} > ${this._maxTotalExpansions}`);if(p){let v=y.length-(b.length+2);if(v>0&&(this._expandedLength+=v,this._expandedLength>this._maxExpandedLength))throw new Error(`[EntityReplacer] Expanded content length limit exceeded: ${this._expandedLength} > ${this._maxExpandedLength}`)}}}c<A&&a.push(e.slice(c));let m=a.length===0?e:a.join("");return this._postCheck(m,i)}_tierCounts(e){return this._limitTiers.has(JA)?!0:this._limitTiers.has(e)}_resolveName(e){if(e in this._inputMap)return{value:this._inputMap[e],tier:Ci};if(e in this._externalMap)return{value:this._externalMap[e],tier:Ci};if(e in this._baseMap)return{value:this._baseMap[e],tier:ca}}_classifyNCR(e){return e===0?this._ncrNullLevel:e>=55296&&e<=57343||this._ncrXmlVersion===1&&e>=1&&e<=31&&!Hv.has(e)?Lt.remove:-1}_applyNCRAction(e,i,a){switch(e){case Lt.allow:return String.fromCodePoint(a);case Lt.remove:return"";case Lt.leave:return;case Lt.throw:throw new Error(`[EntityDecoder] Prohibited numeric character reference &${i}; (U+${a.toString(16).toUpperCase().padStart(4,"0")})`);default:return String.fromCodePoint(a)}}_resolveNCR(e){let i=e.charCodeAt(1),a;if(i===120||i===88?a=parseInt(e.slice(2),16):a=parseInt(e.slice(1),10),Number.isNaN(a)||a<0||a>1114111)return;let A=this._classifyNCR(a);if(!this._numericAllowed&&A<Lt.remove)return;let c=A===-1?this._ncrOnLevel:Math.max(this._ncrOnLevel,A);return this._applyNCRAction(c,e,a)}};var dg=r=>Gn.includes(r)?"__"+r:r,Jv={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0,unicode:!1},tagValueProcessor:function(r,e){return e},attributeValueProcessor:function(r,e){return e},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,entityDecoder:null,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(r,e,i){return r},captureMetaData:!1,maxNestedTags:100,strictReservedNames:!0,jPath:!0,onDangerousProperty:dg};function Vv(r,e){if(typeof r!="string")return;let i=r.toLowerCase();if(Gn.some(a=>i===a.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${r}" is a reserved JavaScript keyword that could cause prototype pollution`);if(la.some(a=>i===a.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${r}" is a reserved JavaScript keyword that could cause prototype pollution`)}function gg(r,e){return typeof r=="boolean"?{enabled:r,maxEntitySize:1e4,maxExpansionDepth:1e4,maxTotalExpansions:1/0,maxExpandedLength:1e5,maxEntityCount:1e3,allowedTags:null,tagFilter:null,appliesTo:"all"}:typeof r=="object"&&r!==null?{enabled:r.enabled!==!1,maxEntitySize:Math.max(1,r.maxEntitySize??1e4),maxExpansionDepth:Math.max(1,r.maxExpansionDepth??1e4),maxTotalExpansions:Math.max(1,r.maxTotalExpansions??1/0),maxExpandedLength:Math.max(1,r.maxExpandedLength??1e5),maxEntityCount:Math.max(1,r.maxEntityCount??1e3),allowedTags:r.allowedTags??null,tagFilter:r.tagFilter??null,appliesTo:r.appliesTo??"all"}:gg(!0)}var mg=function(r){let e=Object.assign({},Jv,r),i=[{value:e.attributeNamePrefix,name:"attributeNamePrefix"},{value:e.attributesGroupName,name:"attributesGroupName"},{value:e.textNodeName,name:"textNodeName"},{value:e.cdataPropName,name:"cdataPropName"},{value:e.commentPropName,name:"commentPropName"}];for(let{value:a,name:A}of i)a&&Vv(a,A);return e.onDangerousProperty===null&&(e.onDangerousProperty=dg),e.processEntities=gg(e.processEntities,e.htmlEntities),e.unpairedTagsSet=new Set(e.unpairedTags),e.stopNodes&&Array.isArray(e.stopNodes)&&(e.stopNodes=e.stopNodes.map(a=>typeof a=="string"&&a.startsWith("*.")?".."+a.substring(2):a)),e};var bi;typeof Symbol!="function"?bi="@@xmlMetadata":bi=Symbol("XML Node Metadata");var Pt=class{constructor(e){this.tagname=e,this.child=[],this[":@"]=Object.create(null)}add(e,i){e==="__proto__"&&(e="#__proto__"),this.child.push({[e]:i})}addChild(e,i){e.tagname==="__proto__"&&(e.tagname="#__proto__"),e[":@"]&&Object.keys(e[":@"]).length>0?this.child.push({[e.tagname]:e.child,":@":e[":@"]}):this.child.push({[e.tagname]:e.child}),this.addStartIndex(i)}addStartIndex(e){e!==void 0&&(this.child[this.child.length-1][bi]={startIndex:e})}addEndIndex(e){let i=this.child[this.child.length-1];i!==void 0&&i[bi]!==void 0&&i[bi].endIndex===void 0&&(i[bi].endIndex=e)}static getMetaDataSymbol(){return bi}};var Bg=":A-Za-z_\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD",jv=Bg+"\\-\\.\\d\xB7\u0300-\u036F\u203F-\u2040",Eg=":A-Za-z_\xC0-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}",_v=Eg+"\\-\\.\\d\xB7\u0300-\u036F\u0487\u203F-\u2040",VA=(r,e,i="")=>{let a=r.replace(":",""),A=e.replace(":",""),c=`[${a}][${A}]*`;return{name:new RegExp(`^[${r}][${e}]*$`,i),ncName:new RegExp(`^${c}$`,i),qName:new RegExp(`^${c}(?::${c})?$`,i),nmToken:new RegExp(`^[${e}]+$`,i),nmTokens:new RegExp(`^[${e}]+(?:\\s+[${e}]+)*$`,i)}},Zv=VA(Bg,jv),Xv=VA(Eg,_v,"u"),wg=":A-Za-z_",zv=wg+"\\-\\.\\d",qv=VA(wg,zv),Kv=(r="1.0",e=!1)=>e?qv:r==="1.1"?Xv:Zv;var jA=(r,{xmlVersion:e="1.0",asciiOnly:i=!1}={})=>Kv(e,i).qName.test(r);var Jn=class{constructor(e,i){this.suppressValidationErr=!e,this.options=e,this.xmlVersion=i||1}setXmlVersion(e=1){this.xmlVersion=e}readDocType(e,i){let a=Object.create(null),A=0;if(e[i+3]==="O"&&e[i+4]==="C"&&e[i+5]==="T"&&e[i+6]==="Y"&&e[i+7]==="P"&&e[i+8]==="E"){i=i+9;let c=1,u=!1,f=!1,p=null,g="";for(;i<e.length;i++){if(p!==null){e[i]===p&&(p=null),g+=e[i];continue}if(!u&&!f&&(e[i]==='"'||e[i]==="'")){p=e[i],g+=e[i];continue}if(e[i]==="<"&&!f){if(u&&xi(e,"!ENTITY",i)){i+=7;let m,E;if([m,E,i]=this.readEntityExp(e,i+1,this.suppressValidationErr),E.indexOf("&")===-1){if(this.options.enabled!==!1&&this.options.maxEntityCount!=null&&A>=this.options.maxEntityCount)throw new Error(`Entity count (${A+1}) exceeds maximum allowed (${this.options.maxEntityCount})`);a[m]=E,A++}}else if(u&&xi(e,"!ELEMENT",i)){i+=8;let{index:m}=this.readElementExp(e,i+1);i=m}else if(u&&xi(e,"!ATTLIST",i))i+=8;else if(u&&xi(e,"!NOTATION",i)){i+=9;let{index:m}=this.readNotationExp(e,i+1,this.suppressValidationErr);i=m}else if(xi(e,"!--",i))f=!0;else throw new Error("Invalid DOCTYPE");c++,g=""}else if(e[i]===">"){if(f?e[i-1]==="-"&&e[i-2]==="-"&&(f=!1,c--):c--,c===0)break}else e[i]==="["?u=!0:g+=e[i]}if(p!==null||c!==0)throw new Error("Unclosed DOCTYPE")}else throw new Error("Invalid Tag instead of DOCTYPE");return{entities:a,i}}readEntityExp(e,i){i=Ht(e,i);let a=i;for(;i<e.length&&!/\s/.test(e[i])&&e[i]!=='"'&&e[i]!=="'";)i++;let A=e.substring(a,i);if(Wn(A,{xmlVersion:this.xmlVersion}),i=Ht(e,i),!this.suppressValidationErr){if(e.substring(i,i+6).toUpperCase()==="SYSTEM")throw new Error("External entities are not supported");if(e[i]==="%")throw new Error("Parameter entities are not supported")}let c="";if([i,c]=this.readIdentifierVal(e,i,"entity"),this.options.enabled!==!1&&this.options.maxEntitySize!=null&&c.length>this.options.maxEntitySize)throw new Error(`Entity "${A}" size (${c.length}) exceeds maximum allowed size (${this.options.maxEntitySize})`);return i--,[A,c,i]}readNotationExp(e,i){i=Ht(e,i);let a=i;for(;i<e.length&&!/\s/.test(e[i]);)i++;let A=e.substring(a,i);!this.suppressValidationErr&&Wn(A,{xmlVersion:this.xmlVersion}),i=Ht(e,i);let c=e.substring(i,i+6).toUpperCase();if(!this.suppressValidationErr&&c!=="SYSTEM"&&c!=="PUBLIC")throw new Error(`Expected SYSTEM or PUBLIC, found "${c}"`);i+=c.length,i=Ht(e,i);let u=null,f=null;if(c==="PUBLIC")[i,u]=this.readIdentifierVal(e,i,"publicIdentifier"),i=Ht(e,i),(e[i]==='"'||e[i]==="'")&&([i,f]=this.readIdentifierVal(e,i,"systemIdentifier"));else if(c==="SYSTEM"&&([i,f]=this.readIdentifierVal(e,i,"systemIdentifier"),!this.suppressValidationErr&&!f))throw new Error("Missing mandatory system identifier for SYSTEM notation");return{notationName:A,publicIdentifier:u,systemIdentifier:f,index:--i}}readIdentifierVal(e,i,a){let A="",c=e[i];if(c!=='"'&&c!=="'")throw new Error(`Expected quoted string, found "${c}"`);i++;let u=i;for(;i<e.length&&e[i]!==c;)i++;if(A=e.substring(u,i),e[i]!==c)throw new Error(`Unterminated ${a} value`);return i++,[i,A]}readElementExp(e,i){i=Ht(e,i);let a=i;for(;i<e.length&&!/\s/.test(e[i]);)i++;let A=e.substring(a,i);if(!this.suppressValidationErr&&!jA(A,{xmlVersion:this.xmlVersion}))throw new Error(`Invalid element name: "${A}"`);i=Ht(e,i);let c="";if(e[i]==="E"&&xi(e,"MPTY",i))i+=4;else if(e[i]==="A"&&xi(e,"NY",i))i+=2;else if(e[i]==="("){i++;let u=i;for(;i<e.length&&e[i]!==")";)i++;if(c=e.substring(u,i),e[i]!==")")throw new Error("Unterminated content model")}else if(!this.suppressValidationErr)throw new Error(`Invalid Element Expression, found "${e[i]}"`);return{elementName:A,contentModel:c.trim(),index:i}}readAttlistExp(e,i){i=Ht(e,i);let a=i;for(;i<e.length&&!/\s/.test(e[i]);)i++;let A=e.substring(a,i);for(Wn(A,{xmlVersion:this.xmlVersion}),i=Ht(e,i),a=i;i<e.length&&!/\s/.test(e[i]);)i++;let c=e.substring(a,i);if(!Wn(c,{xmlVersion:this.xmlVersion}))throw new Error(`Invalid attribute name: "${c}"`);i=Ht(e,i);let u="";if(e.substring(i,i+8).toUpperCase()==="NOTATION"){if(u="NOTATION",i+=8,i=Ht(e,i),e[i]!=="(")throw new Error(`Expected '(', found "${e[i]}"`);i++;let p=[];for(;i<e.length&&e[i]!==")";){let g=i;for(;i<e.length&&e[i]!=="|"&&e[i]!==")";)i++;let m=e.substring(g,i);if(m=m.trim(),!Wn(m,{xmlVersion:this.xmlVersion}))throw new Error(`Invalid notation name: "${m}"`);p.push(m),e[i]==="|"&&(i++,i=Ht(e,i))}if(e[i]!==")")throw new Error("Unterminated list of notations");i++,u+=" ("+p.join("|")+")"}else{let p=i;for(;i<e.length&&!/\s/.test(e[i]);)i++;u+=e.substring(p,i);let g=["CDATA","ID","IDREF","IDREFS","ENTITY","ENTITIES","NMTOKEN","NMTOKENS"];if(!this.suppressValidationErr&&!g.includes(u.toUpperCase()))throw new Error(`Invalid attribute type: "${u}"`)}i=Ht(e,i);let f="";return e.substring(i,i+8).toUpperCase()==="#REQUIRED"?(f="#REQUIRED",i+=8):e.substring(i,i+7).toUpperCase()==="#IMPLIED"?(f="#IMPLIED",i+=7):[i,f]=this.readIdentifierVal(e,i,"ATTLIST"),{elementName:A,attributeName:c,attributeType:u,defaultValue:f,index:i}}},Ht=(r,e)=>{for(;e<r.length&&/\s/.test(r[e]);)e++;return e};function xi(r,e,i){for(let a=0;a<e.length;a++)if(e[a]!==r[i+a+1])return!1;return!0}function Wn(r,e){if(jA(r,{xmlVersion:e}))return r;throw new Error(`Invalid entity name ${r}`)}var $v=[48,1632,1776,2406,2534,2662,2790,2918,3046,3174,3302,3430,3558,3664,3792,3872,4160,4240,6112,6160,6470,6608,6784,6800,6992,7088,7232,7248,65296,120782,120792,120802,120812,120822,66720,68912,69734,69872,69942,70096,70384,70736,70864,71248,71360,71472,71904,72016,72688,72784,73040,73120,73552,92768,92864,93008,123200,123632,124144,125264,130032],ua=255,ha=new Map,yg=65535,Cg=1632,Xi=Cg,e2=yg-Cg+1,fa=new Uint8Array(e2).fill(ua);for(let r of $v)for(let e=0;e<10;e++){let i=r+e;i<=yg?fa[i-Xi]=e:ha.set(i,e)}var bg=48,xg=57,Qg=45,pa=new Set([8722,65293,65123]);function t2(r){if(typeof r!="string")return r;let e=r.length;if(e===0)return r;let i=-1;for(let A=0;A<e;A++){let c=r.charCodeAt(A);if(!(c>=bg&&c<=xg||c===Qg)){if(c<Xi){if(pa.has(c)){i=A;break}continue}if(c>=55296&&c<=56319){if(A+1<e){let u=r.charCodeAt(A+1);if(u>=56320&&u<=57343){let f=65536+(c-55296<<10)+(u-56320);if(ha.has(f)){i=A;break}}}continue}if(fa[c-Xi]!==ua||pa.has(c)){i=A;break}}}if(i===-1)return r;let a=[];i>0&&a.push(r.slice(0,i));for(let A=i;A<e;A++){let c=r.charCodeAt(A);if(c>=bg&&c<=xg||c===Qg){a.push(r[A]);continue}if(c<Xi){a.push(pa.has(c)?"-":r[A]);continue}if(c>=55296&&c<=56319){if(A+1<e){let f=r.charCodeAt(A+1);if(f>=56320&&f<=57343){let p=65536+(c-55296<<10)+(f-56320),g=ha.get(p);if(g!==void 0){a.push(String.fromCharCode(g+48)),A++;continue}}}a.push(r[A]);continue}if(pa.has(c)){a.push("-");continue}let u=fa[c-Xi];a.push(u!==ua?String.fromCharCode(u+48):r[A])}return a.join("")}var vg=t2;var r2=/^[-+]?0x[a-fA-F0-9]+$/,i2=/^0b[01]+$/,n2=/^0o[0-7]+$/,s2=/^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/,a2={hex:!0,binary:!1,octal:!1,leadingZeros:!0,decimalPoint:".",eNotation:!0,infinity:"original",unicode:!1};function ZA(r,e={}){if(e=Object.assign({},a2,e),!r||typeof r!="string")return r;let i=r.trim();if(i.length===0)return r;if(e.skipLike!==void 0&&e.skipLike.test(i))return r;if(i==="0"||e.unicode&&(i=vg(i),i==="0"))return 0;if(e.hex&&r2.test(i))return _A(i,16);if(e.binary&&i2.test(i))return _A(i,2);if(e.octal&&n2.test(i))return _A(i,8);if(isFinite(i)){if(i.includes("e")||i.includes("E"))return A2(r,i,e);{let a=s2.exec(i);if(a){let A=a[1]||"",c=a[2],u=l2(a[3]),f=A?r[c.length+1]===".":r[c.length]===".";if(!e.leadingZeros&&(c.length>1||c.length===1&&!f))return r;{let p=Number(i),g=String(p);if(p===0)return p;if(g.search(/[eE]/)!==-1)return e.eNotation?p:r;if(i.indexOf(".")!==-1)return g==="0"||g===u||g===`${A}${u}`?p:r;let m=c?u:i;return c?m===g||A+m===g?p:r:m===g||m===A+g?p:r}}else return r}}else return c2(r,Number(i),e)}var o2=/^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;function A2(r,e,i){if(!i.eNotation)return r;let a=e.match(o2);if(a){let A=a[1]||"",c=a[3].indexOf("e")===-1?"E":"e",u=a[2],f=A?r[u.length+1]===c:r[u.length]===c;return u.length>1&&f?r:u.length===1&&(a[3].startsWith(`.${c}`)||a[3][0]===c)?Number(e):u.length>0?i.leadingZeros&&!f?(e=(a[1]||"")+a[3],Number(e)):r:Number(e)}else return r}function l2(r){if(r&&r.indexOf(".")!==-1){let e=r.length;for(;e>0&&r.charCodeAt(e-1)===48;)e--;return r=r.slice(0,e),r==="."?r="0":r[0]==="."?r="0"+r:r[r.length-1]==="."&&(r=r.substring(0,r.length-1)),r}return r}function _A(r,e){let i=r.trim();if((e===2||e===8)&&(r=i.substring(2)),parseInt)return parseInt(r,e);if(Number.parseInt)return Number.parseInt(r,e);if(window&&window.parseInt)return window.parseInt(r,e);throw new Error("parseInt, Number.parseInt, window.parseInt are not supported")}function c2(r,e,i){let a=e===1/0;switch(i.infinity.toLowerCase()){case"null":return null;case"infinity":return e;case"string":return a?"Infinity":"-Infinity";default:return r}}function XA(r){return typeof r=="function"?r:Array.isArray(r)?e=>{for(let i of r)if(typeof i=="string"&&e===i||i instanceof RegExp&&i.test(e))return!0}:()=>!1}var Qi=class{constructor(e,i={},a){this.pattern=e,this.separator=i.separator||".",this.segments=this._parse(e),this.data=a,this._hasDeepWildcard=this.segments.some(A=>A.type==="deep-wildcard"),this._hasAttributeCondition=this.segments.some(A=>A.attrName!==void 0),this._hasPositionSelector=this.segments.some(A=>A.position!==void 0)}_parse(e){let i=[],a=0,A="";for(;a<e.length;)e[a]===this.separator?a+1<e.length&&e[a+1]===this.separator?(A.trim()&&(i.push(this._parseSegment(A.trim())),A=""),i.push({type:"deep-wildcard"}),a+=2):(A.trim()&&i.push(this._parseSegment(A.trim())),A="",a++):(A+=e[a],a++);return A.trim()&&i.push(this._parseSegment(A.trim())),i}_parseSegment(e){let i={type:"tag"},a=null,A=e,c=e.match(/^([^\[]+)(\[[^\]]*\])(.*)$/);if(c&&(A=c[1]+c[3],c[2])){let m=c[2].slice(1,-1);m&&(a=m)}let u,f=A;if(A.includes("::")){let m=A.indexOf("::");if(u=A.substring(0,m).trim(),f=A.substring(m+2).trim(),!u)throw new Error(`Invalid namespace in pattern: ${e}`)}let p,g=null;if(f.includes(":")){let m=f.lastIndexOf(":"),E=f.substring(0,m).trim(),b=f.substring(m+1).trim();["first","last","odd","even"].includes(b)||/^nth\(\d+\)$/.test(b)?(p=E,g=b):p=f}else p=f;if(!p)throw new Error(`Invalid segment pattern: ${e}`);if(i.tag=p,u&&(i.namespace=u),a)if(a.includes("=")){let m=a.indexOf("=");i.attrName=a.substring(0,m).trim(),i.attrValue=a.substring(m+1).trim()}else i.attrName=a.trim();if(g){let m=g.match(/^nth\((\d+)\)$/);m?(i.position="nth",i.positionValue=parseInt(m[1],10)):i.position=g}return i}get length(){return this.segments.length}hasDeepWildcard(){return this._hasDeepWildcard}hasAttributeCondition(){return this._hasAttributeCondition}hasPositionSelector(){return this._hasPositionSelector}toString(){return this.pattern}};var zi=class{constructor(){this._byDepthAndTag=new Map,this._wildcardByDepth=new Map,this._deepWildcards=[],this._deepByTerminalTag=new Map,this._patterns=new Set,this._sealed=!1}add(e){if(this._sealed)throw new TypeError("ExpressionSet is sealed. Create a new ExpressionSet to add more expressions.");if(this._patterns.has(e.pattern))return this;if(this._patterns.add(e.pattern),e.hasDeepWildcard()){let c=e.segments[e.segments.length-1];if(c&&c.type!=="deep-wildcard"&&c.tag!=="*"){let u=c.tag;this._deepByTerminalTag.has(u)||this._deepByTerminalTag.set(u,[]),this._deepByTerminalTag.get(u).push(e)}else this._deepWildcards.push(e);return this}let i=e.length,A=e.segments[e.segments.length-1]?.tag;if(!A||A==="*")this._wildcardByDepth.has(i)||this._wildcardByDepth.set(i,[]),this._wildcardByDepth.get(i).push(e);else{let c=`${i}:${A}`;this._byDepthAndTag.has(c)||this._byDepthAndTag.set(c,[]),this._byDepthAndTag.get(c).push(e)}return this}addAll(e){for(let i of e)this.add(i);return this}has(e){return this._patterns.has(e.pattern)}get size(){return this._patterns.size}seal(){return this._sealed=!0,this}get isSealed(){return this._sealed}matchesAny(e){return this.findMatch(e)!==null}findMatch(e){let i=e.getDepth(),a=e.getCurrentTag(),A=`${i}:${a}`,c=this._byDepthAndTag.get(A);if(c){for(let p=0;p<c.length;p++)if(e.matches(c[p]))return c[p]}let u=this._wildcardByDepth.get(i);if(u){for(let p=0;p<u.length;p++)if(e.matches(u[p]))return u[p]}let f=this._deepByTerminalTag.get(a);if(f){for(let p=0;p<f.length;p++)if(e.matches(f[p]))return f[p]}for(let p=0;p<this._deepWildcards.length;p++)if(e.matches(this._deepWildcards[p]))return this._deepWildcards[p];return null}};var zA=class{constructor(e){this._matcher=e}get separator(){return this._matcher.separator}getCurrentTag(){let e=this._matcher.path;return e.length>0?e[e.length-1].tag:void 0}getCurrentNamespace(){let e=this._matcher.path;return e.length>0?e[e.length-1].namespace:void 0}getAttrValue(e){let i=this._matcher.path;if(i.length!==0)return i[i.length-1].values?.[e]}hasAttr(e){let i=this._matcher.path;if(i.length===0)return!1;let a=i[i.length-1];return a.values!==void 0&&e in a.values}getAnyParentAttr(e){return this._matcher.getAnyParentAttr(e)}hasAnyParentAttr(e){return this._matcher.hasAnyParentAttr(e)}getPosition(){let e=this._matcher.path;return e.length===0?-1:e[e.length-1].position??0}getCounter(){let e=this._matcher.path;return e.length===0?-1:e[e.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this._matcher.path.length}toString(e,i=!0){return this._matcher.toString(e,i)}toArray(){return this._matcher.path.map(e=>e.tag)}matches(e){return this._matcher.matches(e)}matchesAny(e){return e.matchesAny(this._matcher)}},qi=class{constructor(e={}){this.separator=e.separator||".",this.path=[],this.siblingStacks=[],this._pathStringCache=null,this._view=new zA(this),this._keptAttrs=[]}push(e,i=null,a=null,A=null){this._pathStringCache=null,this.path.length>0&&(this.path[this.path.length-1].values=void 0);let c=this.path.length,u=this.siblingStacks[c];u||(u={counts:new Map,total:0},this.siblingStacks[c]=u);let f=a?`${a}:${e}`:e,p=u.counts.get(f)||0,g=u.total;u.counts.set(f,p+1),u.total++;let m={tag:e,position:g,counter:p};a!=null&&(m.namespace=a),i!=null&&(m.values=i),this.path.push(m);let E=this.path.length,b=A!==null?A.keep:null;if(b!=null&&b.length>0&&i)for(let y=0;y<b.length;y++){let Q=b[y];i[Q]!==void 0&&this._keptAttrs.push({depth:E,name:Q,value:i[Q]})}}pop(){if(this.path.length===0)return;this._pathStringCache=null;let e=this.path.pop();this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1);let i=this.path.length+1;for(;this._keptAttrs.length>0&&this._keptAttrs[this._keptAttrs.length-1].depth>=i;)this._keptAttrs.pop();return e}updateCurrent(e){if(this.path.length>0){let i=this.path[this.path.length-1];e!=null&&(i.values=e)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(e){if(this.path.length!==0)return this.path[this.path.length-1].values?.[e]}hasAttr(e){if(this.path.length===0)return!1;let i=this.path[this.path.length-1];return i.values!==void 0&&e in i.values}getAnyParentAttr(e){let i=this._keptAttrs;for(let a=i.length-1;a>=0;a--)if(i[a].name===e)return i[a].value}hasAnyParentAttr(e){let i=this._keptAttrs;for(let a=i.length-1;a>=0;a--)if(i[a].name===e)return!0;return!1}getPosition(){return this.path.length===0?-1:this.path[this.path.length-1].position??0}getCounter(){return this.path.length===0?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(e,i=!0){let a=e||this.separator;if(a===this.separator&&i===!0){if(this._pathStringCache!==null)return this._pathStringCache;let c=this.path.map(u=>u.namespace?`${u.namespace}:${u.tag}`:u.tag).join(a);return this._pathStringCache=c,c}return this.path.map(c=>i&&c.namespace?`${c.namespace}:${c.tag}`:c.tag).join(a)}toArray(){return this.path.map(e=>e.tag)}reset(){this._pathStringCache=null,this.path=[],this.siblingStacks=[],this._keptAttrs=[]}matches(e){let i=e.segments;return i.length===0?!1:e.hasDeepWildcard()?this._matchWithDeepWildcard(i):this._matchSimple(i)}_matchSimple(e){if(this.path.length!==e.length)return!1;for(let i=0;i<e.length;i++)if(!this._matchSegment(e[i],this.path[i],i===this.path.length-1))return!1;return!0}_matchWithDeepWildcard(e){let i=this.path.length-1,a=e.length-1;for(;a>=0&&i>=0;){let A=e[a];if(A.type==="deep-wildcard"){if(a--,a<0)return!0;let c=e[a],u=!1;for(let f=i;f>=0;f--)if(this._matchSegment(c,this.path[f],f===this.path.length-1)){i=f-1,a--,u=!0;break}if(!u)return!1}else{if(!this._matchSegment(A,this.path[i],i===this.path.length-1))return!1;i--,a--}}return a<0}_matchSegment(e,i,a){if(e.tag!=="*"&&e.tag!==i.tag||e.namespace!==void 0&&e.namespace!=="*"&&e.namespace!==i.namespace||e.attrName!==void 0&&(!a||!i.values||!(e.attrName in i.values)||e.attrValue!==void 0&&String(i.values[e.attrName])!==String(e.attrValue)))return!1;if(e.position!==void 0){if(!a)return!1;let A=i.counter??0;if(e.position==="first"&&A!==0)return!1;if(e.position==="odd"&&A%2!==1)return!1;if(e.position==="even"&&A%2!==0)return!1;if(e.position==="nth"&&A!==e.positionValue)return!1}return!0}matchesAny(e){return e.matchesAny(this)}snapshot(){return{path:this.path.map(e=>({...e})),siblingStacks:this.siblingStacks.map(e=>e&&{counts:new Map(e.counts),total:e.total}),keptAttrs:this._keptAttrs.map(e=>({...e}))}}restore(e){this._pathStringCache=null,this.path=e.path.map(i=>({...i})),this.siblingStacks=e.siblingStacks.map(i=>i&&{counts:new Map(i.counts),total:i.total}),this._keptAttrs=(e.keptAttrs||[]).map(i=>({...i}))}readOnly(){return this._view}};var u2=[{id:"html-script-open",description:"<script opening tag",pattern:/<script[\s>/]/i},{id:"html-script-close",description:"</script closing tag",pattern:/<\/script[\s>]/i},{id:"html-javascript-protocol",description:"javascript: URI scheme (with optional whitespace/encoding)",pattern:/j[\t\n\r ]*a[\t\n\r ]*v[\t\n\r ]*a[\t\n\r ]*s[\t\n\r ]*c[\t\n\r ]*r[\t\n\r ]*i[\t\n\r ]*p[\t\n\r ]*t[\t\n\r ]*:/i},{id:"html-vbscript-protocol",description:"vbscript: URI scheme",pattern:/vbscript[\t\n\r ]*:/i},{id:"html-data-html",description:"data:text/html URI \u2014 can execute scripts in browsers",pattern:/data[\t\n\r ]*:[\t\n\r ]*text\/html/i},{id:"html-data-xhtml",description:"data:application/xhtml+xml URI",pattern:/data[\t\n\r ]*:[\t\n\r ]*application\/xhtml/i},{id:"html-data-svg",description:"data:image/svg+xml URI \u2014 can execute scripts",pattern:/data[\t\n\r ]*:[\t\n\r ]*image\/svg\+xml/i},{id:"html-inline-event-handler",description:"Inline event handler attributes: onclick=, onerror=, onload=, etc.",pattern:/\bon\w{1,30}\s*=/i},{id:"html-entity-obfuscated-script",description:"HTML-entity-encoded <script (e.g. &#x3C;script or &lt;script)",pattern:/(?:&#x0*3[Cc];?|&#0*60;?|&lt;)\s*script/i},{id:"html-entity-obfuscated-javascript",description:'HTML-entity-encoded javascript: (partial \u2014 catches common &#106; or &#x6a; for "j")',pattern:/(?:&#x0*6[Aa];?|&#0*106;?)\s*(?:&#x0*61;?|a)[\s\S]{0,80}script\s*:/i},{id:"html-style-expression",description:"CSS expression() \u2014 IE-era code execution in style attributes",pattern:/style[\s\S]{0,20}expression\s*\(/i},{id:"html-object-embed",description:"<object or <embed tags that can load active content",pattern:/<(?:object|embed)[\s>/]/i},{id:"html-base-tag",description:"<base href= \u2014 can hijack all relative URLs on a page",pattern:/<base[\s>]/i},{id:"html-meta-refresh",description:'<meta http-equiv="refresh" \u2014 can redirect users',pattern:/<meta[\s\S]{0,40}http-equiv[\s\S]{0,20}refresh/i},{id:"html-srcdoc",description:"srcdoc= attribute on iframes \u2014 embeds HTML that can run scripts",pattern:/srcdoc\s*=/i},{id:"html-iframe",description:"<iframe tag",pattern:/<iframe[\s>/]/i},{id:"html-form",description:"<form tag \u2014 can be used for phishing / credential harvesting injection",pattern:/<form[\s>/]/i}],Ki=u2;var h2=[{id:"xml-cdata-injection",description:"CDATA section injection: <![CDATA[ breaks out of text node context",pattern:/<!\[CDATA\[/i},{id:"xml-cdata-close",description:"CDATA close sequence: ]]> can terminate an enclosing CDATA section",pattern:/\]\]>/},{id:"xml-processing-instruction",description:"XML processing instruction: <?xml-stylesheet or <?php etc.",pattern:/<\?(?:xml[\- ]|php|asp)/i},{id:"xml-doctype-injection",description:"DOCTYPE declaration embedded in content \u2014 can define entities",pattern:/<!DOCTYPE(?:[\s[]|$)/i},{id:"xml-entity-system",description:"SYSTEM keyword \u2014 used in external entity declarations (XXE)",pattern:/\bSYSTEM\s+["']/i},{id:"xml-entity-public",description:"PUBLIC keyword \u2014 used in external entity declarations (XXE)",pattern:/\bPUBLIC\s+["']/i},{id:"xml-entity-declaration",description:"<!ENTITY declaration \u2014 defines entities, potential XXE or entity expansion",pattern:/<!ENTITY[\s%]/i},{id:"xml-billion-laughs",description:"Entity reference chaining / billion laughs: repeated &eX; style references",pattern:/(?:&\w{1,20};){3,}/},{id:"xml-namespace-confusion",description:"xmlns: attribute injection \u2014 can redefine namespaces to confuse parsers",pattern:/\bxmlns(?::\w{1,40})?\s*=/i},{id:"xml-comment-injection",description:"<!-- comment injection \u2014 can hide content from some parsers",pattern:/<!--/},{id:"xml-comment-close",description:"--> closes an enclosing XML comment",pattern:/-->/},{id:"xml-pi-close",description:"?> closes an enclosing processing instruction",pattern:/\?>/}],$i=h2;var f2=[{id:"svg-script-element",description:"<script element inside SVG executes JavaScript",pattern:/<script[\s>/]/i},{id:"svg-xlink-href-javascript",description:"xlink:href with javascript: \u2014 classic SVG XSS via <a> or <use>",pattern:/xlink\s*:\s*href\s*=\s*["']?\s*javascript\s*:/i},{id:"svg-href-javascript",description:"href= with javascript: in SVG context (<a>, <animate>, etc.)",pattern:/href\s*=\s*["']?\s*javascript\s*:/i},{id:"svg-foreignobject",description:"<foreignObject embeds HTML inside SVG \u2014 can execute scripts",pattern:/<foreignObject[\s>/]/i},{id:"svg-use-external",description:"<use xlink:href or href pointing to external resource (non-fragment URL)",pattern:/<use[\s\S]{0,60}(?:xlink\s*:\s*)?href\s*=\s*(?:["'][^#]|[^"'#\s>])/i},{id:"svg-animate-href",description:'<animate attributeName="href" \u2014 can dynamically change href to javascript:',pattern:/<animate[\s\S]{0,80}attributeName\s*=\s*["'][\s]*href["']/i},{id:"svg-animate-xlinkhref",description:'<animate attributeName="xlink:href"',pattern:/<animate[\s\S]{0,80}attributeName\s*=\s*["'][\s]*xlink\s*:\s*href["']/i},{id:"svg-set-javascript",description:'<set to="javascript:..." \u2014 sets an attribute to a javascript: URI',pattern:/<set[\s\S]{0,80}to\s*=\s*["']?\s*javascript\s*:/i},{id:"svg-event-handler",description:"SVG-specific event handler attributes: onload=, onerror=, onactivate=, etc.",pattern:/\bon(?:load|error|activate|begin|end|repeat|focus|blur|click|mouse\w{1,20}|key\w{1,20})\s*=/i},{id:"svg-handler-generic",description:"Generic on* handler catch-all for SVG attributes",pattern:/\bon\w{1,30}\s*=/i},{id:"svg-filter-feimage",description:"<feImage href= \u2014 filter primitive that can load external resources",pattern:/<feImage[\s\S]{0,80}(?:xlink\s*:\s*)?href\s*=/i},{id:"svg-image-external",description:"<image xlink:href with http/https or javascript protocol",pattern:/<image[\s\S]{0,80}(?:xlink\s*:\s*)?href\s*=\s*["']?\s*(?:https?|javascript)\s*:/i},{id:"svg-style-javascript",description:"style= attribute containing javascript: (e.g. background:url(javascript:...))",pattern:/style\s*=[\s\S]{0,60}javascript\s*:/i}],qA=f2;var p2=[{id:"sql-block-comment-open",description:"SQL block comment open: /* ... */ \u2014 unusual in legitimate user text",pattern:/\/\*/},{id:"sql-union-select",description:"UNION SELECT \u2014 most common SQL injection aggregation attack",pattern:/\bUNION\s{1,20}(?:ALL\s{1,20})?SELECT\b/i},{id:"sql-drop-table",description:"DROP TABLE \u2014 destructive DDL injection",pattern:/\bDROP\s{1,20}TABLE\b/i},{id:"sql-drop-database",description:"DROP DATABASE \u2014 destructive DDL injection",pattern:/\bDROP\s{1,20}DATABASE\b/i},{id:"sql-insert-into",description:"INSERT INTO \u2014 data injection",pattern:/\bINSERT\s{1,20}INTO\b/i},{id:"sql-delete-from",description:"DELETE FROM \u2014 data deletion injection",pattern:/\bDELETE\s{1,20}FROM\b/i},{id:"sql-update-set",description:"UPDATE ... SET \u2014 data modification injection",pattern:/\bUPDATE\b[\s\S]{1,60}\bSET\b/i},{id:"sql-exec-xp",description:"EXEC xp_ \u2014 MSSQL extended stored procedure execution",pattern:/\bEXEC(?:UTE)?\s{1,20}xp_/i},{id:"sql-tautology-string",description:`Classic string tautology: ' OR '1'='1 or " OR "1"="1"`,pattern:/'\s{0,10}OR\s{0,10}'[^']{0,20}'\s*=\s*'[^']{0,20}/i},{id:"sql-tautology-numeric",description:"Numeric tautology: OR 1=1",pattern:/\bOR\s{1,10}1\s*=\s*1\b/i},{id:"sql-always-true-zero",description:"Numeric tautology: OR 0=0",pattern:/\bOR\s{1,10}0\s*=\s*0\b/i},{id:"sql-sleep-benchmark",description:"Time-based blind injection: SLEEP() or BENCHMARK()",pattern:/\b(?:SLEEP|BENCHMARK)\s*\(/i},{id:"sql-waitfor-delay",description:"MSSQL time-based blind injection: WAITFOR DELAY",pattern:/\bWAITFOR\s{1,20}DELAY\b/i},{id:"sql-char-function",description:"CHAR() function \u2014 used to obfuscate injected strings",pattern:/\bCHAR\s*\(\s*\d{1,3}/i},{id:"sql-information-schema",description:"INFORMATION_SCHEMA \u2014 reconnaissance query for table/column enumeration",pattern:/\bINFORMATION_SCHEMA\b/i}],Vn=p2;var d2=[{id:"shell-path-traversal-unix",description:"Unix path traversal: ../ \u2014 climbing the directory tree",pattern:/\.\.\//},{id:"shell-path-traversal-windows",description:"Windows path traversal: ..\\ \u2014 climbing the directory tree",pattern:/\.\.\\/},{id:"shell-path-traversal-encoded",description:"URL-encoded path traversal: %2e%2e or %2f variants",pattern:/%2e%2e|%2f\.\.|\.\.%2f/i},{id:"shell-null-byte",description:"Null byte injection: \\x00 or %00 \u2014 truncates strings in C-backed functions",pattern:/\x00|%00/},{id:"shell-semicolon",description:"Semicolon command separator: cmd1; cmd2",pattern:/;/},{id:"shell-pipe",description:"Pipe operator: cmd1 | cmd2",pattern:/\|/},{id:"shell-and-operator",description:"AND operator: cmd1 && cmd2",pattern:/&&/},{id:"shell-or-operator",description:"OR operator: cmd1 || cmd2",pattern:/\|\|/},{id:"shell-backtick",description:"Backtick command substitution: `cmd`",pattern:/`/},{id:"shell-dollar-paren",description:"Dollar-paren command substitution: $(cmd)",pattern:/\$\(/},{id:"shell-dollar-brace",description:"Dollar-brace variable expansion: ${var} \u2014 can be abused for injection",pattern:/\$\{/},{id:"shell-redirect-out",description:"Output redirection: cmd > file or cmd >> file",pattern:/>{1,2}/},{id:"shell-redirect-in",description:"Input redirection: cmd < file",pattern:/</},{id:"shell-newline-injection",description:"Newline injection: \\n or \\r \u2014 can inject new shell commands",pattern:/[\n\r]/},{id:"shell-glob-star",description:"Glob expansion: * or ? \u2014 can expand to unintended files",pattern:/[/\\][*?]/},{id:"shell-absolute-root",description:"Absolute root path injection: string starting with / or \\ (Windows UNC)",pattern:/^(?:\/|\\\\)/},{id:"shell-windows-drive",description:"Windows drive letter path injection: C:\\ or D:/",pattern:/^[a-zA-Z]:[/\\]/},{id:"shell-curl-wget",description:"curl/wget with URL or flags \u2014 can exfiltrate data or download payloads",pattern:/\b(?:curl|wget)\s+(?:https?:\/\/|ftp:\/\/|-)/i}],KA=d2;var g2=[{id:"redos-nested-quantifier-plus",description:"Nested + quantifier inside a group with outer quantifier: (a+)+, (.+b)*, etc.",pattern:/\([^)]*\+[^)]*\)[+*]/},{id:"redos-nested-quantifier-star",description:"Nested * quantifier: (a*)* or (a*)+ \u2014 catastrophic backtracking",pattern:/\([^)]*\*[^)]*\)[*+]/},{id:"redos-nested-groups",description:"Doubly nested quantified groups: ((a+)+) \u2014 guaranteed catastrophic",pattern:/\(\([^)]{0,40}\)[+*]\)[+*]/},{id:"redos-alternation-overlap",description:"Overlapping alternation under quantifier: (a|a)+ \u2014 ambiguous NFA paths",pattern:/\(([^|()]{1,20})\|(?:\1)(?:\|[^|()]{1,20}){0,5}\)[+*?]{1,2}/},{id:"redos-star-plus-concat",description:"(x*x)+ pattern \u2014 triggers super-linear backtracking",pattern:/\([^)]{0,10}\*[^)]{0,10}\)[+*]/},{id:"redos-dot-star-greedy",description:"(.*){n,} or (.+){n,} \u2014 repeated greedy dot quantifiers",pattern:/\(\.[*+]\)\{?\d/},{id:"redos-large-repetition",description:"Very large fixed or range repetition count {1000,} or {1000,n} \u2014 denial of service via backtracking",pattern:/\{\d{4,}(?:,\d*)?\}/},{id:"redos-catastrophic-alternation",description:"Long alternation with many similar branches \u2014 polynomial backtracking risk",pattern:/\([^)]{0,200}(?:\|[^|)]{0,50}){9,}\)/}],$A=g2;var _t=`["'\\s]*:`,m2=[{id:"nosql-where-operator",description:"$where \u2014 executes arbitrary JavaScript server-side in MongoDB",pattern:new RegExp(`\\$where${_t}`,"i")},{id:"nosql-ne-operator",description:'$ne \u2014 "not equal" operator used to bypass equality checks',pattern:new RegExp(`\\$ne${_t}`,"i")},{id:"nosql-gt-operator",description:'$gt \u2014 "greater than" used to bypass password/value checks',pattern:new RegExp(`\\$gte?${_t}`,"i")},{id:"nosql-lt-operator",description:'$lt / $lte \u2014 "less than" bypass variants',pattern:new RegExp(`\\$lte?${_t}`,"i")},{id:"nosql-regex-operator",description:"$regex \u2014 can be used to extract data character by character (blind injection)",pattern:new RegExp(`\\$regex${_t}`,"i")},{id:"nosql-or-operator",description:"$or \u2014 logical OR; used to create always-true conditions",pattern:new RegExp(`\\$or${_t}\\s*\\[`,"i")},{id:"nosql-and-operator",description:"$and \u2014 logical AND operator injection",pattern:new RegExp(`\\$and${_t}\\s*\\[`,"i")},{id:"nosql-nor-operator",description:"$nor \u2014 logical NOR operator injection",pattern:new RegExp(`\\$nor${_t}\\s*\\[`,"i")},{id:"nosql-exists-operator",description:"$exists \u2014 can enumerate fields to determine schema",pattern:new RegExp(`\\$exists${_t}`,"i")},{id:"nosql-in-operator",description:"$in \u2014 matches any value in a list; can enumerate values",pattern:new RegExp(`\\$in${_t}\\s*\\[`,"i")},{id:"nosql-expr-operator",description:"$expr \u2014 allows aggregation expressions in queries (MongoDB 3.6+)",pattern:new RegExp(`\\$expr${_t}`,"i")},{id:"nosql-function-operator",description:"$function \u2014 executes arbitrary JavaScript in MongoDB 4.4+",pattern:new RegExp(`\\$function${_t}`,"i")},{id:"nosql-accumulator-operator",description:"$accumulator \u2014 custom aggregation with arbitrary JS execution",pattern:new RegExp(`\\$accumulator${_t}`,"i")},{id:"nosql-proto-pollution",description:"__proto__ \u2014 prototype pollution via object key injection",pattern:/__proto__/},{id:"nosql-constructor-prototype",description:"constructor.prototype \u2014 alternative prototype pollution vector (dot notation or JSON key)",pattern:/constructor[\s"':.,{\[]*prototype/i},{id:"nosql-proto-bracket",description:'["__proto__"] \u2014 bracket-notation prototype pollution',pattern:/\[["']__proto__["']\]/}],el=m2;var B2=[{id:"log-crlf-injection",description:"CRLF injection: literal \\r or \\n embeds fake log lines",pattern:/[\r\n]/},{id:"log-url-encoded-crlf",description:"URL-encoded CRLF: %0d, %0a, %0D, %0A \u2014 decoded by some log parsers",pattern:/%0[dDaA]/},{id:"log-unicode-newline",description:"Unicode newline variants: U+2028 (line separator), U+2029 (paragraph separator)",pattern:/[\u2028\u2029]/},{id:"log-log4shell-jndi",description:"Log4Shell: ${jndi:...} triggers remote code execution in Apache Log4j",pattern:/\$\{jndi\s*:/i},{id:"log-log4shell-obfuscated",description:"Obfuscated Log4Shell: ${::-j}... lookup-bypass prefix used to evade WAF detection",pattern:/\$\{::-/},{id:"log-log4j-lookup",description:"Log4j lookup syntax: ${env:...}, ${sys:...}, ${ctx:...} \u2014 data exfiltration",pattern:/\$\{(?:env|sys|ctx|main|map|sd|web|docker|k8s|spring)\s*:/i},{id:"log-ssti-double-brace",description:"SSTI double-brace: {{expression}} \u2014 Jinja2, Twig, Handlebars, etc.",pattern:/\{\{[\s\S]{0,80}\}\}/},{id:"log-ssti-hash-brace",description:"SSTI hash-brace: #{expression} \u2014 Thymeleaf, Velocity, Ruby ERB",pattern:/#\{[\s\S]{0,80}\}/},{id:"log-ssti-dollar-brace",description:"SSTI/EL injection: ${expression with operators or method calls} \u2014 JSP EL, Freemarker, SpEL",pattern:/\$\{[^}]*(?:\.|\(|\*|\+|\bclass\b|\bruntime\b|\bprocess\b|\bexec\b)[^}]{0,80}\}/i},{id:"log-ssti-percent-tag",description:"SSTI ERB/ASP tag: <%= expression %> \u2014 Ruby ERB, ASP",pattern:/<%=[\s\S]{0,80}%>/},{id:"log-null-byte",description:"Null byte: \\x00 or %00 \u2014 can truncate log entries in C-backed loggers",pattern:/\x00|%00/},{id:"log-ansi-escape",description:"ANSI escape sequence: ESC[ \u2014 can manipulate terminal output when logs are tailed",pattern:/\x1b\[/}],tl=B2;var E2=[{id:"sql-line-comment",description:"SQL line comment: -- followed by whitespace or end of string",pattern:/--(?:\s|$)/},{id:"sql-stacked-query",description:"Stacked queries: semicolon immediately followed by a SQL keyword",pattern:/;\s{0,10}(?:SELECT|INSERT|UPDATE|DELETE|DROP|CREATE|ALTER|EXEC)\b/i},{id:"sql-hex-encoding",description:"Hex-encoded string injection: 0x41414141 style (MySQL)",pattern:/\b0x[0-9a-f]{4,}/i}],w2=[...Vn,...E2],rl=w2;Ki.label="HTML";$i.label="XML";qA.label="SVG";Vn.label="SQL";rl.label="SQL-STRICT";KA.label="SHELL";$A.label="REDOS";el.label="NOSQL";tl.label="LOG";var ok=Object.freeze({HTML:Ki,XML:$i,SVG:qA,SQL:Vn,"SQL-STRICT":rl,SHELL:KA,REDOS:$A,NOSQL:el,LOG:tl});function y2(r){if(typeof r!="string")throw new TypeError(`is-unsafe: first argument must be a string, got ${typeof r}`)}function C2(r){if(!(r instanceof RegExp)){if(Array.isArray(r)){if(r.length===0)throw new TypeError("is-unsafe: context must not be an empty array");if(Array.isArray(r[0])){for(let e of r)if(!Array.isArray(e)||e.length===0)throw new TypeError("is-unsafe: each context in the array must be a non-empty pattern array (PatternList)")}return}throw new TypeError(`is-unsafe: second argument must be a PatternList (e.g. HTML), an array of PatternLists (e.g. [HTML, XML]), or a RegExp. Got: ${typeof r}`)}}function b2(r){return r instanceof RegExp?{lists:null,regex:r}:Array.isArray(r[0])?{lists:r,regex:null}:{lists:[r],regex:null}}function x2(r,e){let i=e.label??"CUSTOM";for(let a of e)if(a.pattern.test(r))return{context:i,id:a.id,description:a.description,pattern:a.pattern};return null}function Ig(r,e){y2(r),C2(e);let{lists:i,regex:a}=b2(e);if(a)return a.test(r);for(let A of i)if(x2(r,A)!==null)return!0;return!1}function Q2(r,e){if(!r)return{};let i=e.attributesGroupName?r[e.attributesGroupName]:r;if(!i)return{};let a={};for(let A in i)if(A.startsWith(e.attributeNamePrefix)){let c=A.substring(e.attributeNamePrefix.length);a[c]=i[A]}else a[A]=i[A];return a}function v2(r){if(!r||typeof r!="string")return;let e=r.indexOf(":");if(e!==-1&&e>0){let i=r.substring(0,e);if(i!=="xmlns")return i}}var jn=class{constructor(e,i){this.options=e,this.currentNode=null,this.tagsNodeStack=[],this.parseXml=D2,this.parseTextData=I2,this.resolveNameSpace=F2,this.buildAttributesMap=S2,this.isItStopNode=Y2,this.replaceEntitiesValue=U2,this.readStopNodeData=R2,this.saveTextToParentTag=k2,this.addChild=M2,this.ignoreAttributesFn=XA(this.options.ignoreAttributes),this.entityExpansionCount=0,this.currentExpandedLength=0,this.doctypefound=!1;let a={...Pn};this.options.entityDecoder?this.entityDecoder=this.options.entityDecoder:(typeof this.options.htmlEntities=="object"?a=this.options.htmlEntities:this.options.htmlEntities===!0&&(a={...WA,...HA}),this.entityDecoder=new Zi({namedEntities:{...a,...i},numericAllowed:this.options.htmlEntities,limit:{maxTotalExpansions:this.options.processEntities.maxTotalExpansions,maxExpandedLength:this.options.processEntities.maxExpandedLength,applyLimitsTo:this.options.processEntities.appliesTo},onInputEntity:(c,u)=>Ig(u,[Ki,$i])?_i.BLOCK:_i.ALLOW})),this.matcher=new qi,this.readonlyMatcher=this.matcher.readOnly(),this.isCurrentNodeStopNode=!1,this.stopNodeExpressionsSet=new zi;let A=this.options.stopNodes;if(A&&A.length>0){for(let c=0;c<A.length;c++){let u=A[c];typeof u=="string"?this.stopNodeExpressionsSet.add(new Qi(u)):u instanceof Qi&&this.stopNodeExpressionsSet.add(u)}this.stopNodeExpressionsSet.seal()}}};function I2(r,e,i,a,A,c,u){let f=this.options;if(r!==void 0&&(f.trimValues&&!a&&(r=r.trim()),r.length>0)){u||(r=this.replaceEntitiesValue(r,e,i));let p=f.jPath?i.toString():i,g=f.tagValueProcessor(e,r,p,A,c);return g==null?r:typeof g!=typeof r||g!==r?g:f.trimValues||r.trim()===r?sl(r,f.parseTagValue,f.numberParseOptions):r}}function F2(r){if(this.options.removeNSPrefix){let e=r.split(":"),i=r.charAt(0)==="/"?"/":"";if(e[0]==="xmlns")return"";e.length===2&&(r=i+e[1])}return r}var T2=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function S2(r,e,i,a=!1){let A=this.options;if(a===!0||A.ignoreAttributes!==!0&&typeof r=="string"){let c=Ag(r,T2),u=c.length,f={},p=new Array(u),g=!1,m={};for(let y=0;y<u;y++){let Q=this.resolveNameSpace(c[y][1]),v=c[y][4];if(Q.length&&v!==void 0){let I=v;A.trimValues&&(I=I.trim()),I=this.replaceEntitiesValue(I,i,this.readonlyMatcher),p[y]=I,m[Q]=I,g=!0}}g&&typeof e=="object"&&e.updateCurrent&&e.updateCurrent(m);let E=A.jPath?e.toString():this.readonlyMatcher,b=!1;for(let y=0;y<u;y++){let Q=this.resolveNameSpace(c[y][1]);if(this.ignoreAttributesFn(Q,E))continue;let v=A.attributeNamePrefix+Q;if(Q.length)if(A.transformAttributeName&&(v=A.transformAttributeName(v)),v=Fg(v,A),c[y][4]!==void 0){let I=p[y],F=A.attributeValueProcessor(Q,I,E);F==null?f[v]=I:typeof F!=typeof I||F!==I?f[v]=F:f[v]=sl(I,A.parseAttributeValue,A.numberParseOptions),b=!0}else A.allowBooleanAttributes&&(f[v]=!0,b=!0)}if(!b)return;if(A.attributesGroupName&&!A.preserveOrder){let y={};return y[A.attributesGroupName]=f,y}return f}}var D2=function(r){r=r.replace(/\r\n?/g,`
1135
- `);let e=new Pt("!xml"),i=e,a="";this.matcher.reset(),this.entityDecoder.reset(),this.entityExpansionCount=0,this.currentExpandedLength=0,this.doctypefound=!1;let A=this.options,c=new Jn(A.processEntities),u=r.length;for(let f=0;f<u;f++)if(r[f]==="<"){let g=r.charCodeAt(f+1);if(g===47){let m=en(r,">",f,"Closing Tag is not closed."),E=r.substring(f+2,m).trim();if(A.removeNSPrefix){let y=E.indexOf(":");y!==-1&&(E=E.substr(y+1))}E=il(A.transformTagName,E,"",A).tagName,i&&(a=this.saveTextToParentTag(a,i,this.readonlyMatcher));let b=this.matcher.getCurrentTag();if(E&&A.unpairedTagsSet.has(E))throw new Error(`Unpaired tag can not be used as closing tag: </${E}>`);b&&A.unpairedTagsSet.has(b)&&(this.matcher.pop(),this.tagsNodeStack.pop()),this.matcher.pop(),this.isCurrentNodeStopNode=!1,i=this.tagsNodeStack.pop()||e,A.captureMetaData&&i&&i.addEndIndex(m+1),a="",f=m}else if(g===63){let m=nl(r,f,!1,"?>");if(!m)throw new Error("Pi Tag is not closed.");a=this.saveTextToParentTag(a,i,this.readonlyMatcher);let E=this.buildAttributesMap(m.tagExp,this.matcher,m.tagName,!0);if(E){let b=E[this.options.attributeNamePrefix+"version"];this.entityDecoder.setXmlVersion(Number(b)||1),c.setXmlVersion(Number(b)||1)}if(!(A.ignoreDeclaration&&m.tagName==="?xml"||A.ignorePiTags)){let b=new Pt(m.tagName);b.add(A.textNodeName,""),m.tagName!==m.tagExp&&m.attrExpPresent&&A.ignoreAttributes!==!0&&(b[":@"]=E),this.addChild(i,b,this.readonlyMatcher,f),A.captureMetaData&&i.addEndIndex(m.closeIndex+2)}f=m.closeIndex+1}else if(g===33&&r.charCodeAt(f+2)===45&&r.charCodeAt(f+3)===45){let m=en(r,"-->",f+4,"Comment is not closed.");if(A.commentPropName){let E=r.substring(f+4,m-2);a=this.saveTextToParentTag(a,i,this.readonlyMatcher),i.add(A.commentPropName,[{[A.textNodeName]:E}])}f=m}else if(g===33&&r.charCodeAt(f+2)===68){if(this.doctypefound)throw new Error("Multiple DOCTYPE declarations found.");this.doctypefound=!0;let m=c.readDocType(r,f);this.entityDecoder.addInputEntities(m.entities),f=m.i}else if(g===33&&r.charCodeAt(f+2)===91){let m=en(r,"]]>",f,"CDATA is not closed.")-2,E=r.substring(f+9,m);a=this.saveTextToParentTag(a,i,this.readonlyMatcher);let b=this.parseTextData(E,i.tagname,this.readonlyMatcher,!0,!1,!0,!0);b==null&&(b=""),A.cdataPropName?i.add(A.cdataPropName,[{[A.textNodeName]:E}]):i.add(A.textNodeName,b),f=m+2}else{let m=nl(r,f,A.removeNSPrefix);if(!m){let P=r.substring(Math.max(0,f-50),Math.min(u,f+50));throw new Error(`readTagExp returned undefined at position ${f}. Context: "${P}"`)}let E=m.tagName,b=m.rawTagName,y=m.tagExp,Q=m.attrExpPresent,v=m.closeIndex;if({tagName:E,tagExp:y}=il(A.transformTagName,E,y,A),A.strictReservedNames&&(E===A.commentPropName||E===A.cdataPropName||E===A.textNodeName||E===A.attributesGroupName))throw new Error(`Invalid tag name: ${E}`);i&&a&&i.tagname!=="!xml"&&(a=this.saveTextToParentTag(a,i,this.readonlyMatcher,!1));let I=i;I&&A.unpairedTagsSet.has(I.tagname)&&(i=this.tagsNodeStack.pop(),this.matcher.pop());let F=!1;y.length>0&&y.lastIndexOf("/")===y.length-1&&(F=!0,E[E.length-1]==="/"?(E=E.substr(0,E.length-1),y=E):y=y.substr(0,y.length-1),Q=E!==y);let k=null,_={},M;M=v2(b),E!==e.tagname&&this.matcher.push(E,{},M),E!==y&&Q&&(k=this.buildAttributesMap(y,this.matcher,E),k&&(_=Q2(k,A))),E!==e.tagname&&(this.isCurrentNodeStopNode=this.isItStopNode());let O=f;if(this.isCurrentNodeStopNode){let P="";if(F)f=m.closeIndex;else if(A.unpairedTagsSet.has(E))f=m.closeIndex;else{let re=this.readStopNodeData(r,b,v+1);if(!re)throw new Error(`Unexpected end of ${b}`);f=re.i,P=re.tagContent}let R=new Pt(E);k&&(R[":@"]=k),R.add(A.textNodeName,P),this.matcher.pop(),this.isCurrentNodeStopNode=!1,this.addChild(i,R,this.readonlyMatcher,O),A.captureMetaData&&i.addEndIndex(f+1)}else{if(F){({tagName:E,tagExp:y}=il(A.transformTagName,E,y,A));let P=new Pt(E);k&&(P[":@"]=k),this.addChild(i,P,this.readonlyMatcher,O),A.captureMetaData&&i.addEndIndex(v+1),this.matcher.pop(),this.isCurrentNodeStopNode=!1}else if(A.unpairedTagsSet.has(E)){let P=new Pt(E);k&&(P[":@"]=k),this.addChild(i,P,this.readonlyMatcher,O),A.captureMetaData&&i.addEndIndex(m.closeIndex+1),this.matcher.pop(),this.isCurrentNodeStopNode=!1,f=m.closeIndex;continue}else{let P=new Pt(E);if(this.tagsNodeStack.length>A.maxNestedTags)throw new Error("Maximum nested tags exceeded");this.tagsNodeStack.push(i),k&&(P[":@"]=k),this.addChild(i,P,this.readonlyMatcher,O),i=P}a="",f=v}}}else a+=r[f];return e.child};function M2(r,e,i,a){this.options.captureMetaData||(a=void 0);let A=this.options.jPath?i.toString():i,c=this.options.updateTag(e.tagname,A,e[":@"]);c===!1||(typeof c=="string"&&(e.tagname=c),r.addChild(e,a))}function U2(r,e,i){let a=this.options.processEntities;if(!a||!a.enabled)return r;if(a.allowedTags){let A=this.options.jPath?i.toString():i;if(!(Array.isArray(a.allowedTags)?a.allowedTags.includes(e):a.allowedTags(e,A)))return r}if(a.tagFilter){let A=this.options.jPath?i.toString():i;if(!a.tagFilter(e,A))return r}return this.entityDecoder.decode(r)}function k2(r,e,i,a){return r&&(a===void 0&&(a=e.child.length===0),r=this.parseTextData(r,e.tagname,i,!1,e[":@"]?Object.keys(e[":@"]).length!==0:!1,a),r!==void 0&&r!==""&&e.add(this.options.textNodeName,r),r=""),r}function Y2(){return this.stopNodeExpressionsSet.size===0?!1:this.matcher.matchesAny(this.stopNodeExpressionsSet)}function O2(r,e,i=">"){let a=0,A=r.length,c=i.charCodeAt(0),u=i.length>1?i.charCodeAt(1):-1,f="",p=e;for(let g=e;g<A;g++){let m=r.charCodeAt(g);if(a)m===a&&(a=0);else if(m===34||m===39)a=m;else if(m===c)if(u!==-1){if(r.charCodeAt(g+1)===u)return f+=r.substring(p,g),{data:f,index:g}}else return f+=r.substring(p,g),{data:f,index:g};else m===9&&!a&&(f+=r.substring(p,g)+" ",p=g+1)}}function en(r,e,i,a){let A=r.indexOf(e,i);if(A===-1)throw new Error(a);return A+e.length-1}function N2(r,e,i,a){let A=r.indexOf(e,i);if(A===-1)throw new Error(a);return A}function nl(r,e,i,a=">"){let A=O2(r,e+1,a);if(!A)return;let c=A.data,u=A.index,f=c.search(/\s/),p=c,g=!0;f!==-1&&(p=c.substring(0,f),c=c.substring(f+1).trimStart());let m=p;if(i){let E=p.indexOf(":");E!==-1&&(p=p.substr(E+1),g=p!==A.data.substr(E+1))}return{tagName:p,tagExp:c,closeIndex:u,attrExpPresent:g,rawTagName:m}}function R2(r,e,i){let a=i,A=1,c=r.length;for(;i<c;i++)if(r[i]==="<"){let u=r.charCodeAt(i+1);if(u===47){let f=N2(r,">",i,`${e} is not closed`);if(r.substring(i+2,f).trim()===e&&(A--,A===0))return{tagContent:r.substring(a,i),i:f};i=f}else if(u===63)i=en(r,"?>",i+1,"StopNode is not closed.");else if(u===33&&r.charCodeAt(i+2)===45&&r.charCodeAt(i+3)===45)i=en(r,"-->",i+3,"StopNode is not closed.");else if(u===33&&r.charCodeAt(i+2)===91)i=en(r,"]]>",i,"StopNode is not closed.")-2;else{let f=nl(r,i,!1);f&&((f&&f.tagName)===e&&f.tagExp[f.tagExp.length-1]!=="/"&&A++,i=f.closeIndex)}}}function sl(r,e,i){if(e&&typeof r=="string"){let a=r.trim();return a==="true"?!0:a==="false"?!1:ZA(r,i)}else return lg(r)?r:""}function il(r,e,i,a){if(r){let A=r(e);i===e&&(i=A),e=A}return e=Fg(e,a),{tagName:e,tagExp:i}}function Fg(r,e){if(la.includes(r))throw new Error(`[SECURITY] Invalid name: "${r}" is a reserved JavaScript keyword that could cause prototype pollution`);return Gn.includes(r)?e.onDangerousProperty(r):r}var al=Pt.getMetaDataSymbol();function G2(r,e){if(!r||typeof r!="object")return{};if(!e)return r;let i={};for(let a in r)if(a.startsWith(e)){let A=a.substring(e.length);i[A]=r[a]}else i[a]=r[a];return i}function ol(r,e,i,a){return Tg(r,e,i,a)}function Tg(r,e,i,a){let A,c={};for(let u=0;u<r.length;u++){let f=r[u],p=L2(f);if(p!==void 0&&p!==e.textNodeName){let g=G2(f[":@"]||{},e.attributeNamePrefix);i.push(p,g)}if(p===e.textNodeName)A===void 0?A=f[p]:A+=""+f[p];else{if(p===void 0)continue;if(f[p]){let g=Tg(f[p],e,i,a),m=H2(g,e);if(Object.keys(g).length===0&&e.alwaysCreateTextNode&&(g[e.textNodeName]=""),f[":@"]?P2(g,f[":@"],a,e):Object.keys(g).length===1&&g[e.textNodeName]!==void 0&&!e.alwaysCreateTextNode?g=g[e.textNodeName]:Object.keys(g).length===0&&(e.alwaysCreateTextNode?g[e.textNodeName]="":g=""),f[al]!==void 0&&typeof g=="object"&&g!==null&&(g[al]=f[al]),c[p]!==void 0&&Object.prototype.hasOwnProperty.call(c,p))Array.isArray(c[p])||(c[p]=[c[p]]),c[p].push(g);else{let E=e.jPath?a.toString():a;e.isArray(p,E,m)?c[p]=[g]:c[p]=g}p!==void 0&&p!==e.textNodeName&&i.pop()}}}return typeof A=="string"?A.length>0&&(c[e.textNodeName]=A):A!==void 0&&(c[e.textNodeName]=A),c}function L2(r){let e=Object.keys(r);for(let i=0;i<e.length;i++){let a=e[i];if(a!==":@")return a}}function P2(r,e,i,a){if(e){let A=Object.keys(e),c=A.length;for(let u=0;u<c;u++){let f=A[u],p=f.startsWith(a.attributeNamePrefix)?f.substring(a.attributeNamePrefix.length):f,g=a.jPath?i.toString()+"."+p:i;a.isArray(f,g,!0,!0)?r[f]=[e[f]]:r[f]=e[f]}}}function H2(r,e){let{textNodeName:i}=e,a=Object.keys(r).length;return!!(a===0||a===1&&(r[i]||typeof r[i]=="boolean"||r[i]===0))}var tn=class{constructor(e){this.externalEntities={},this.options=mg(e)}parse(e,i){if(typeof e!="string"&&e.toString)e instanceof Uint8Array&&!(typeof Buffer<"u"&&Buffer.isBuffer(e))?e=new TextDecoder("utf-8",{ignoreBOM:!0}).decode(e):e=e.toString();else if(typeof e!="string")throw new Error("XML data is accepted in String or Bytes[] form.");if(i){i===!0&&(i={});let c=fg(e,i);if(c!==!0)throw Error(`${c.err.msg}:${c.err.line}:${c.err.col}`)}let a=new jn(this.options,this.externalEntities),A=a.parseXml(e);return this.options.preserveOrder||A===void 0?A:ol(A,this.options,a.matcher,a.readonlyMatcher)}addEntity(e,i){if(i.indexOf("&")!==-1)throw new Error("Entity value can't have '&'");if(e.indexOf("&")!==-1||e.indexOf(";")!==-1)throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '&#xD;'");if(i==="&")throw new Error("An entity with value '&' is not permitted");this.externalEntities[e]=i}static getMetaDataSymbol(){return Pt.getMetaDataSymbol()}};import*as Jr from"node:path";import{mkdir as F0,writeFile as cT}from"node:fs/promises";import{cwd as uT,env as hT,exit as fT}from"node:process";function Sg(r,e,i){let a=r.indexOf(e);if(a===-1)return r;let A=e.length,c=0,u="";do u+=r.slice(c,a)+e+i,c=a+A,a=r.indexOf(e,c);while(a!==-1);return u+=r.slice(c),u}function Dg(r,e,i,a){let A=0,c="";do{let u=r[a-1]==="\r";c+=r.slice(A,u?a-1:a)+e+(u?`\r
1132
+ `;async function Ih(r,e){await r.write(".gitattributes",xh),await r.write(".gitignore",Vs),await r.write(".github/workflows/build.yml",js),await r.write("LICENSE",Qh),await r.write("README.md",Et(vh,e))}async function Sa(){let r=await Ms();return r.filter(e=>{let i=e.version;return i.startsWith("1.14")&&i!="1.14.4"?!1:e.stable?!0:r[0].version==i})}var Pi="Comic Relief";async function Fh(r){let e=await bb(r.config);await uh(r),await oh(r.writer,e),await bh(r.writer,r.canvas,e),await Ih(r.writer,e)}async function bb(r){let e=Ei(r.minecraftVersion);return{...r,splitSources:Hs(r.minecraftVersion)&&r.splitSources,dataGeneration:Ps(r.minecraftVersion)&&r.dataGeneration,loaderVersion:(await Us()).find(i=>i.stable).version,fabricVersion:await ks(r.minecraftVersion),yarnVersion:e?void 0:(await ku(r.minecraftVersion))[0].version,kotlin:await xb(r),unobfuscated:e}}async function xb(r){if(!r.useKotlin)return;let i=(await Yu()).pop(),o=i.split("+kotlin.")[1];return{fabricKotlinAdapterVersion:i,kotlinVersion:o}}var I0=bn(og(),1);var ag=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",Fv=ag+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",Tv="["+ag+"]["+Fv+"]*",Sv=new RegExp("^"+Tv+"$");function Ag(r,e){let i=[],o=e.exec(r);for(;o;){let A=[];A.startIndex=e.lastIndex-o[0].length;let c=o.length;for(let u=0;u<c;u++)A.push(o[u]);i.push(A),o=e.exec(r)}return i}var PA=function(r){let e=Sv.exec(r);return!(e===null||typeof e>"u")};function lg(r){return typeof r<"u"}var Gn=["hasOwnProperty","toString","valueOf","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__"],lo=["__proto__","constructor","prototype"];var Dv={allowBooleanAttributes:!1,unpairedTags:[]};function fg(r,e){e=Object.assign({},Dv,e);let i=[],o=!1,A=!1;r[0]==="\uFEFF"&&(r=r.substr(1));for(let c=0;c<r.length;c++)if(r[c]==="<"&&r[c+1]==="?"){if(c+=2,c=cg(r,c),c.err)return c}else if(r[c]==="<"){let u=c;if(c++,r[c]==="!"){c=ug(r,c);continue}else{let f=!1;r[c]==="/"&&(f=!0,c++);let p="";for(;c<r.length&&r[c]!==">"&&r[c]!==" "&&r[c]!==" "&&r[c]!==`
1133
+ `&&r[c]!=="\r";c++)p+=r[c];if(p=p.trim(),p[p.length-1]==="/"&&(p=p.substring(0,p.length-1),c--),!Gv(p)){let E;return p.trim().length===0?E="Invalid space after '<'.":E="Tag '"+p+"' is an invalid name.",mt("InvalidTag",E,Yt(r,c))}let g=kv(r,c);if(g===!1)return mt("InvalidAttr","Attributes for '"+p+"' have open quote.",Yt(r,c));let m=g.value;if(c=g.index,m[m.length-1]==="/"){let E=c-m.length;m=m.substring(0,m.length-1);let b=hg(m,e);if(b===!0)o=!0;else return mt(b.err.code,b.err.msg,Yt(r,E+b.err.line))}else if(f)if(g.tagClosed){if(m.trim().length>0)return mt("InvalidTag","Closing tag '"+p+"' can't have attributes or invalid starting.",Yt(r,u));if(i.length===0)return mt("InvalidTag","Closing tag '"+p+"' has not been opened.",Yt(r,u));{let E=i.pop();if(p!==E.tagName){let b=Yt(r,E.tagStartPos);return mt("InvalidTag","Expected closing tag '"+E.tagName+"' (opened in line "+b.line+", col "+b.col+") instead of closing tag '"+p+"'.",Yt(r,u))}i.length==0&&(A=!0)}}else return mt("InvalidTag","Closing tag '"+p+"' doesn't have proper closing.",Yt(r,c));else{let E=hg(m,e);if(E!==!0)return mt(E.err.code,E.err.msg,Yt(r,c-m.length+E.err.line));if(A===!0)return mt("InvalidXml","Multiple possible root nodes found.",Yt(r,c));e.unpairedTags.indexOf(p)!==-1||i.push({tagName:p,tagStartPos:u}),o=!0}for(c++;c<r.length;c++)if(r[c]==="<")if(r[c+1]==="!"){c++,c=ug(r,c);continue}else if(r[c+1]==="?"){if(c=cg(r,++c),c.err)return c}else break;else if(r[c]==="&"){let E=Nv(r,c);if(E==-1)return mt("InvalidChar","char '&' is not expected.",Yt(r,c));c=E}else if(A===!0&&!ji(r[c]))return mt("InvalidXml","Extra text at the end",Yt(r,c));r[c]==="<"&&c--}}else{if(ji(r[c]))continue;return mt("InvalidChar","char '"+r[c]+"' is not expected.",Yt(r,c))}if(o){if(i.length==1)return mt("InvalidTag","Unclosed tag '"+i[0].tagName+"'.",Yt(r,i[0].tagStartPos));if(i.length>0)return mt("InvalidXml","Invalid '"+JSON.stringify(i.map(c=>c.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1})}else return mt("InvalidXml","Start tag expected.",1);return!0}function ji(r){return r===" "||r===" "||r===`
1134
+ `||r==="\r"}function cg(r,e){let i=e;for(;e<r.length;e++)if(r[e]=="?"||r[e]==" "){let o=r.substr(i,e-i);if(e>5&&o==="xml")return mt("InvalidXml","XML declaration allowed only at the start of the document.",Yt(r,e));if(r[e]=="?"&&r[e+1]==">"){e++;break}else continue}return e}function ug(r,e){if(r.length>e+5&&r[e+1]==="-"&&r[e+2]==="-"){for(e+=3;e<r.length;e++)if(r[e]==="-"&&r[e+1]==="-"&&r[e+2]===">"){e+=2;break}}else if(r.length>e+8&&r[e+1]==="D"&&r[e+2]==="O"&&r[e+3]==="C"&&r[e+4]==="T"&&r[e+5]==="Y"&&r[e+6]==="P"&&r[e+7]==="E"){let i=1;for(e+=8;e<r.length;e++)if(r[e]==="<")i++;else if(r[e]===">"&&(i--,i===0))break}else if(r.length>e+9&&r[e+1]==="["&&r[e+2]==="C"&&r[e+3]==="D"&&r[e+4]==="A"&&r[e+5]==="T"&&r[e+6]==="A"&&r[e+7]==="["){for(e+=8;e<r.length;e++)if(r[e]==="]"&&r[e+1]==="]"&&r[e+2]===">"){e+=2;break}}return e}var Mv='"',Uv="'";function kv(r,e){let i="",o="",A=!1;for(;e<r.length;e++){if(r[e]===Mv||r[e]===Uv)o===""?o=r[e]:o!==r[e]||(o="");else if(r[e]===">"&&o===""){A=!0;break}i+=r[e]}return o!==""?!1:{value:i,index:e,tagClosed:A}}function Yv(r){let e=[],i=r.length,o=0;for(;o<i;){let A=o;for(;o<i&&ji(r[o]);)o++;if(o>=i)break;if(r[o]==="="){o=A+1;continue}let c=r.slice(A,o),u=o;for(;o<i&&!ji(r[o])&&r[o]!=="=";)o++;let f=r.slice(u,o),p,g=o;for(;g<i&&ji(r[g]);)g++;g<i&&r[g]==="="&&(p=r.slice(o,g+1),o=g+1);let m,E,b=o;for(;b<i&&ji(r[b]);)b++;if(b<i&&(r[b]==='"'||r[b]==="'")){let Q=b+1,v=r.indexOf(r[b],Q);v!==-1&&(m=r[b],E=r.slice(Q,v),o=v+1)}let y={startIndex:A};y[1]=c,y[2]=f,y[3]=p,y[4]=m!==void 0?!0:void 0,y[5]=m,y[6]=E,e.push(y)}return e}function hg(r,e){let i=Yv(r),o={};for(let A=0;A<i.length;A++){if(i[A][1].length===0)return mt("InvalidAttr","Attribute '"+i[A][2]+"' has no space in starting.",Ln(i[A]));if(i[A][3]!==void 0&&i[A][4]===void 0)return mt("InvalidAttr","Attribute '"+i[A][2]+"' is without value.",Ln(i[A]));if(i[A][3]===void 0&&!e.allowBooleanAttributes)return mt("InvalidAttr","boolean attribute '"+i[A][2]+"' is not allowed.",Ln(i[A]));let c=i[A][2];if(!Rv(c))return mt("InvalidAttr","Attribute '"+c+"' is an invalid name.",Ln(i[A]));if(!Object.prototype.hasOwnProperty.call(o,c))o[c]=1;else return mt("InvalidAttr","Attribute '"+c+"' is repeated.",Ln(i[A]))}return!0}function Ov(r,e){let i=/\d/;for(r[e]==="x"&&(e++,i=/[\da-fA-F]/);e<r.length;e++){if(r[e]===";")return e;if(!r[e].match(i))break}return-1}function Nv(r,e){if(e++,r[e]===";")return-1;if(r[e]==="#")return e++,Ov(r,e);let i=0;for(;e<r.length;e++,i++)if(!(r[e].match(/\w/)&&i<20)){if(r[e]===";")break;return-1}return e}function mt(r,e,i){return{err:{code:r,msg:e,line:i.line||i,col:i.col}}}function Rv(r){return PA(r)}function Gv(r){return PA(r)}function Yt(r,e){let i=r.substring(0,e).split(/\r?\n/);return{line:i.length,col:i[i.length-1].length+1}}function Ln(r){return r.startIndex+r[1].length}var HA={cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",euro:"\u20AC",dollar:"$",fnof:"\u0192",inr:"\u20B9",af:"\u060B",birr:"\u1265\u122D",peso:"\u20B1",rub:"\u20BD",won:"\u20A9",yuan:"\xA5",cedil:"\xB8"};var Pn={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'},WA={nbsp:"\xA0",copy:"\xA9",reg:"\xAE",trade:"\u2122",mdash:"\u2014",ndash:"\u2013",hellip:"\u2026",laquo:"\xAB",raquo:"\xBB",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",bull:"\u2022",para:"\xB6",sect:"\xA7",deg:"\xB0",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE"};var _i=Object.freeze({ALLOW:"allow",BLOCK:"block",THROW:"throw"}),Lv=new Set("!?\\\\/[]$%{}^&*()<>|+");function pg(r){if(r[0]==="#")throw new Error(`[EntityReplacer] Invalid character '#' in entity name: "${r}"`);for(let e of r)if(Lv.has(e))throw new Error(`[EntityReplacer] Invalid character '${e}' in entity name: "${r}"`);return r}function Hn(...r){let e=Object.create(null);for(let i of r)if(i)for(let o of Object.keys(i)){let A=i[o];if(typeof A=="string")e[o]=A;else if(A&&typeof A=="object"&&A.val!==void 0){let c=A.val;typeof c=="string"&&(e[o]=c)}}return e}var Ci="external",co="base",JA="all";function Pv(r){return!r||r===Ci?new Set([Ci]):r===JA?new Set([JA]):r===co?new Set([co]):Array.isArray(r)?new Set(r):new Set([Ci])}var Lt=Object.freeze({allow:0,leave:1,remove:2,throw:3}),Hv=new Set([9,10,13]);function Wv(r){if(!r)return{xmlVersion:1,onLevel:Lt.allow,nullLevel:Lt.remove};let e=r.xmlVersion===1.1?1.1:1,i=Lt[r.onNCR]??Lt.allow,o=Lt[r.nullNCR]??Lt.remove,A=Math.max(o,Lt.remove);return{xmlVersion:e,onLevel:i,nullLevel:A}}var Zi=class{constructor(e={}){this._limit=e.limit||{},this._maxTotalExpansions=this._limit.maxTotalExpansions||0,this._maxExpandedLength=this._limit.maxExpandedLength||0,this._postCheck=typeof e.postCheck=="function"?e.postCheck:o=>o,this._limitTiers=Pv(this._limit.applyLimitsTo??Ci),this._numericAllowed=e.numericAllowed??!0,this._baseMap=Hn(Pn,e.namedEntities||null),this._externalMap=Object.create(null),this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this._removeSet=new Set(e.remove&&Array.isArray(e.remove)?e.remove:[]),this._leaveSet=new Set(e.leave&&Array.isArray(e.leave)?e.leave:[]);let i=Wv(e.ncr);this._ncrXmlVersion=i.xmlVersion,this._ncrOnLevel=i.onLevel,this._ncrNullLevel=i.nullLevel,this._onExternalEntity=typeof e.onExternalEntity=="function"?e.onExternalEntity:null,this._onInputEntity=typeof e.onInputEntity=="function"?e.onInputEntity:null}_applyRegistrationHook(e,i,o,A){if(!e)return!0;let c=e(i,o);if(c===_i.BLOCK)return!1;if(c===_i.THROW)throw new Error(`[EntityDecoder] Registration of ${A} entity "&${i};" was rejected by hook`);return!0}setExternalEntities(e){if(e)for(let A of Object.keys(e))pg(A);if(!this._onExternalEntity){this._externalMap=Hn(e);return}let i=Hn(e),o=Object.create(null);for(let[A,c]of Object.entries(i))this._applyRegistrationHook(this._onExternalEntity,A,c,"external")&&(o[A]=c);this._externalMap=o}addExternalEntity(e,i){pg(e),typeof i=="string"&&i.indexOf("&")===-1&&this._applyRegistrationHook(this._onExternalEntity,e,i,"external")&&(this._externalMap[e]=i)}addInputEntities(e){if(this._totalExpansions=0,this._expandedLength=0,!this._onInputEntity){this._inputMap=Hn(e);return}let i=Hn(e),o=Object.create(null);for(let[A,c]of Object.entries(i))this._applyRegistrationHook(this._onInputEntity,A,c,"input")&&(o[A]=c);this._inputMap=o}reset(){return this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this}setXmlVersion(e){this._ncrXmlVersion=e===1.1?1.1:1}decode(e){if(typeof e!="string"||e.length===0||e.indexOf("&")===-1)return e;let i=e,o=[],A=e.length,c=0,u=0,f=this._maxTotalExpansions>0,p=this._maxExpandedLength>0,g=f||p;for(;u<A;){if(e.charCodeAt(u)!==38){u++;continue}let E=u+1;for(;E<A&&e.charCodeAt(E)!==59&&E-u<=32;)E++;if(E>=A||e.charCodeAt(E)!==59){u++;continue}let b=e.slice(u+1,E);if(b.length===0){u++;continue}let y,Q;if(this._removeSet.has(b))y="",Q===void 0&&(Q=Ci);else if(this._leaveSet.has(b)){u++;continue}else if(b.charCodeAt(0)===35){let v=this._resolveNCR(b);if(v===void 0){u++;continue}y=v,Q=co}else{let v=this._resolveName(b);y=v?.value,Q=v?.tier}if(y===void 0){u++;continue}if(u>c&&o.push(e.slice(c,u)),o.push(y),c=E+1,u=c,g&&this._tierCounts(Q)){if(f&&(this._totalExpansions++,this._totalExpansions>this._maxTotalExpansions))throw new Error(`[EntityReplacer] Entity expansion count limit exceeded: ${this._totalExpansions} > ${this._maxTotalExpansions}`);if(p){let v=y.length-(b.length+2);if(v>0&&(this._expandedLength+=v,this._expandedLength>this._maxExpandedLength))throw new Error(`[EntityReplacer] Expanded content length limit exceeded: ${this._expandedLength} > ${this._maxExpandedLength}`)}}}c<A&&o.push(e.slice(c));let m=o.length===0?e:o.join("");return this._postCheck(m,i)}_tierCounts(e){return this._limitTiers.has(JA)?!0:this._limitTiers.has(e)}_resolveName(e){if(e in this._inputMap)return{value:this._inputMap[e],tier:Ci};if(e in this._externalMap)return{value:this._externalMap[e],tier:Ci};if(e in this._baseMap)return{value:this._baseMap[e],tier:co}}_classifyNCR(e){return e===0?this._ncrNullLevel:e>=55296&&e<=57343||this._ncrXmlVersion===1&&e>=1&&e<=31&&!Hv.has(e)?Lt.remove:-1}_applyNCRAction(e,i,o){switch(e){case Lt.allow:return String.fromCodePoint(o);case Lt.remove:return"";case Lt.leave:return;case Lt.throw:throw new Error(`[EntityDecoder] Prohibited numeric character reference &${i}; (U+${o.toString(16).toUpperCase().padStart(4,"0")})`);default:return String.fromCodePoint(o)}}_resolveNCR(e){let i=e.charCodeAt(1),o;if(i===120||i===88?o=parseInt(e.slice(2),16):o=parseInt(e.slice(1),10),Number.isNaN(o)||o<0||o>1114111)return;let A=this._classifyNCR(o);if(!this._numericAllowed&&A<Lt.remove)return;let c=A===-1?this._ncrOnLevel:Math.max(this._ncrOnLevel,A);return this._applyNCRAction(c,e,o)}};var dg=r=>Gn.includes(r)?"__"+r:r,Jv={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0,unicode:!1},tagValueProcessor:function(r,e){return e},attributeValueProcessor:function(r,e){return e},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,entityDecoder:null,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(r,e,i){return r},captureMetaData:!1,maxNestedTags:100,strictReservedNames:!0,jPath:!0,onDangerousProperty:dg};function Vv(r,e){if(typeof r!="string")return;let i=r.toLowerCase();if(Gn.some(o=>i===o.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${r}" is a reserved JavaScript keyword that could cause prototype pollution`);if(lo.some(o=>i===o.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${r}" is a reserved JavaScript keyword that could cause prototype pollution`)}function gg(r,e){return typeof r=="boolean"?{enabled:r,maxEntitySize:1e4,maxExpansionDepth:1e4,maxTotalExpansions:1/0,maxExpandedLength:1e5,maxEntityCount:1e3,allowedTags:null,tagFilter:null,appliesTo:"all"}:typeof r=="object"&&r!==null?{enabled:r.enabled!==!1,maxEntitySize:Math.max(1,r.maxEntitySize??1e4),maxExpansionDepth:Math.max(1,r.maxExpansionDepth??1e4),maxTotalExpansions:Math.max(1,r.maxTotalExpansions??1/0),maxExpandedLength:Math.max(1,r.maxExpandedLength??1e5),maxEntityCount:Math.max(1,r.maxEntityCount??1e3),allowedTags:r.allowedTags??null,tagFilter:r.tagFilter??null,appliesTo:r.appliesTo??"all"}:gg(!0)}var mg=function(r){let e=Object.assign({},Jv,r),i=[{value:e.attributeNamePrefix,name:"attributeNamePrefix"},{value:e.attributesGroupName,name:"attributesGroupName"},{value:e.textNodeName,name:"textNodeName"},{value:e.cdataPropName,name:"cdataPropName"},{value:e.commentPropName,name:"commentPropName"}];for(let{value:o,name:A}of i)o&&Vv(o,A);return e.onDangerousProperty===null&&(e.onDangerousProperty=dg),e.processEntities=gg(e.processEntities,e.htmlEntities),e.unpairedTagsSet=new Set(e.unpairedTags),e.stopNodes&&Array.isArray(e.stopNodes)&&(e.stopNodes=e.stopNodes.map(o=>typeof o=="string"&&o.startsWith("*.")?".."+o.substring(2):o)),e};var bi;typeof Symbol!="function"?bi="@@xmlMetadata":bi=Symbol("XML Node Metadata");var Pt=class{constructor(e){this.tagname=e,this.child=[],this[":@"]=Object.create(null)}add(e,i){e==="__proto__"&&(e="#__proto__"),this.child.push({[e]:i})}addChild(e,i){e.tagname==="__proto__"&&(e.tagname="#__proto__"),e[":@"]&&Object.keys(e[":@"]).length>0?this.child.push({[e.tagname]:e.child,":@":e[":@"]}):this.child.push({[e.tagname]:e.child}),this.addStartIndex(i)}addStartIndex(e){e!==void 0&&(this.child[this.child.length-1][bi]={startIndex:e})}addEndIndex(e){let i=this.child[this.child.length-1];i!==void 0&&i[bi]!==void 0&&i[bi].endIndex===void 0&&(i[bi].endIndex=e)}static getMetaDataSymbol(){return bi}};var Bg=":A-Za-z_\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD",jv=Bg+"\\-\\.\\d\xB7\u0300-\u036F\u203F-\u2040",Eg=":A-Za-z_\xC0-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}",_v=Eg+"\\-\\.\\d\xB7\u0300-\u036F\u0487\u203F-\u2040",VA=(r,e,i="")=>{let o=r.replace(":",""),A=e.replace(":",""),c=`[${o}][${A}]*`;return{name:new RegExp(`^[${r}][${e}]*$`,i),ncName:new RegExp(`^${c}$`,i),qName:new RegExp(`^${c}(?::${c})?$`,i),nmToken:new RegExp(`^[${e}]+$`,i),nmTokens:new RegExp(`^[${e}]+(?:\\s+[${e}]+)*$`,i)}},Zv=VA(Bg,jv),Xv=VA(Eg,_v,"u"),wg=":A-Za-z_",zv=wg+"\\-\\.\\d",qv=VA(wg,zv),Kv=(r="1.0",e=!1)=>e?qv:r==="1.1"?Xv:Zv;var jA=(r,{xmlVersion:e="1.0",asciiOnly:i=!1}={})=>Kv(e,i).qName.test(r);var Jn=class{constructor(e,i){this.suppressValidationErr=!e,this.options=e,this.xmlVersion=i||1}setXmlVersion(e=1){this.xmlVersion=e}readDocType(e,i){let o=Object.create(null),A=0;if(e[i+3]==="O"&&e[i+4]==="C"&&e[i+5]==="T"&&e[i+6]==="Y"&&e[i+7]==="P"&&e[i+8]==="E"){i=i+9;let c=1,u=!1,f=!1,p=null,g="";for(;i<e.length;i++){if(p!==null){e[i]===p&&(p=null),g+=e[i];continue}if(!u&&!f&&(e[i]==='"'||e[i]==="'")){p=e[i],g+=e[i];continue}if(e[i]==="<"&&!f){if(u&&xi(e,"!ENTITY",i)){i+=7;let m,E;if([m,E,i]=this.readEntityExp(e,i+1,this.suppressValidationErr),E.indexOf("&")===-1){if(this.options.enabled!==!1&&this.options.maxEntityCount!=null&&A>=this.options.maxEntityCount)throw new Error(`Entity count (${A+1}) exceeds maximum allowed (${this.options.maxEntityCount})`);o[m]=E,A++}}else if(u&&xi(e,"!ELEMENT",i)){i+=8;let{index:m}=this.readElementExp(e,i+1);i=m}else if(u&&xi(e,"!ATTLIST",i))i+=8;else if(u&&xi(e,"!NOTATION",i)){i+=9;let{index:m}=this.readNotationExp(e,i+1,this.suppressValidationErr);i=m}else if(xi(e,"!--",i))f=!0;else throw new Error("Invalid DOCTYPE");c++,g=""}else if(e[i]===">"){if(f?e[i-1]==="-"&&e[i-2]==="-"&&(f=!1,c--):c--,c===0)break}else e[i]==="["?u=!0:g+=e[i]}if(p!==null||c!==0)throw new Error("Unclosed DOCTYPE")}else throw new Error("Invalid Tag instead of DOCTYPE");return{entities:o,i}}readEntityExp(e,i){i=Ht(e,i);let o=i;for(;i<e.length&&!/\s/.test(e[i])&&e[i]!=='"'&&e[i]!=="'";)i++;let A=e.substring(o,i);if(Wn(A,{xmlVersion:this.xmlVersion}),i=Ht(e,i),!this.suppressValidationErr){if(e.substring(i,i+6).toUpperCase()==="SYSTEM")throw new Error("External entities are not supported");if(e[i]==="%")throw new Error("Parameter entities are not supported")}let c="";if([i,c]=this.readIdentifierVal(e,i,"entity"),this.options.enabled!==!1&&this.options.maxEntitySize!=null&&c.length>this.options.maxEntitySize)throw new Error(`Entity "${A}" size (${c.length}) exceeds maximum allowed size (${this.options.maxEntitySize})`);return i--,[A,c,i]}readNotationExp(e,i){i=Ht(e,i);let o=i;for(;i<e.length&&!/\s/.test(e[i]);)i++;let A=e.substring(o,i);!this.suppressValidationErr&&Wn(A,{xmlVersion:this.xmlVersion}),i=Ht(e,i);let c=e.substring(i,i+6).toUpperCase();if(!this.suppressValidationErr&&c!=="SYSTEM"&&c!=="PUBLIC")throw new Error(`Expected SYSTEM or PUBLIC, found "${c}"`);i+=c.length,i=Ht(e,i);let u=null,f=null;if(c==="PUBLIC")[i,u]=this.readIdentifierVal(e,i,"publicIdentifier"),i=Ht(e,i),(e[i]==='"'||e[i]==="'")&&([i,f]=this.readIdentifierVal(e,i,"systemIdentifier"));else if(c==="SYSTEM"&&([i,f]=this.readIdentifierVal(e,i,"systemIdentifier"),!this.suppressValidationErr&&!f))throw new Error("Missing mandatory system identifier for SYSTEM notation");return{notationName:A,publicIdentifier:u,systemIdentifier:f,index:--i}}readIdentifierVal(e,i,o){let A="",c=e[i];if(c!=='"'&&c!=="'")throw new Error(`Expected quoted string, found "${c}"`);i++;let u=i;for(;i<e.length&&e[i]!==c;)i++;if(A=e.substring(u,i),e[i]!==c)throw new Error(`Unterminated ${o} value`);return i++,[i,A]}readElementExp(e,i){i=Ht(e,i);let o=i;for(;i<e.length&&!/\s/.test(e[i]);)i++;let A=e.substring(o,i);if(!this.suppressValidationErr&&!jA(A,{xmlVersion:this.xmlVersion}))throw new Error(`Invalid element name: "${A}"`);i=Ht(e,i);let c="";if(e[i]==="E"&&xi(e,"MPTY",i))i+=4;else if(e[i]==="A"&&xi(e,"NY",i))i+=2;else if(e[i]==="("){i++;let u=i;for(;i<e.length&&e[i]!==")";)i++;if(c=e.substring(u,i),e[i]!==")")throw new Error("Unterminated content model")}else if(!this.suppressValidationErr)throw new Error(`Invalid Element Expression, found "${e[i]}"`);return{elementName:A,contentModel:c.trim(),index:i}}readAttlistExp(e,i){i=Ht(e,i);let o=i;for(;i<e.length&&!/\s/.test(e[i]);)i++;let A=e.substring(o,i);for(Wn(A,{xmlVersion:this.xmlVersion}),i=Ht(e,i),o=i;i<e.length&&!/\s/.test(e[i]);)i++;let c=e.substring(o,i);if(!Wn(c,{xmlVersion:this.xmlVersion}))throw new Error(`Invalid attribute name: "${c}"`);i=Ht(e,i);let u="";if(e.substring(i,i+8).toUpperCase()==="NOTATION"){if(u="NOTATION",i+=8,i=Ht(e,i),e[i]!=="(")throw new Error(`Expected '(', found "${e[i]}"`);i++;let p=[];for(;i<e.length&&e[i]!==")";){let g=i;for(;i<e.length&&e[i]!=="|"&&e[i]!==")";)i++;let m=e.substring(g,i);if(m=m.trim(),!Wn(m,{xmlVersion:this.xmlVersion}))throw new Error(`Invalid notation name: "${m}"`);p.push(m),e[i]==="|"&&(i++,i=Ht(e,i))}if(e[i]!==")")throw new Error("Unterminated list of notations");i++,u+=" ("+p.join("|")+")"}else{let p=i;for(;i<e.length&&!/\s/.test(e[i]);)i++;u+=e.substring(p,i);let g=["CDATA","ID","IDREF","IDREFS","ENTITY","ENTITIES","NMTOKEN","NMTOKENS"];if(!this.suppressValidationErr&&!g.includes(u.toUpperCase()))throw new Error(`Invalid attribute type: "${u}"`)}i=Ht(e,i);let f="";return e.substring(i,i+8).toUpperCase()==="#REQUIRED"?(f="#REQUIRED",i+=8):e.substring(i,i+7).toUpperCase()==="#IMPLIED"?(f="#IMPLIED",i+=7):[i,f]=this.readIdentifierVal(e,i,"ATTLIST"),{elementName:A,attributeName:c,attributeType:u,defaultValue:f,index:i}}},Ht=(r,e)=>{for(;e<r.length&&/\s/.test(r[e]);)e++;return e};function xi(r,e,i){for(let o=0;o<e.length;o++)if(e[o]!==r[i+o+1])return!1;return!0}function Wn(r,e){if(jA(r,{xmlVersion:e}))return r;throw new Error(`Invalid entity name ${r}`)}var $v=[48,1632,1776,2406,2534,2662,2790,2918,3046,3174,3302,3430,3558,3664,3792,3872,4160,4240,6112,6160,6470,6608,6784,6800,6992,7088,7232,7248,65296,120782,120792,120802,120812,120822,66720,68912,69734,69872,69942,70096,70384,70736,70864,71248,71360,71472,71904,72016,72688,72784,73040,73120,73552,92768,92864,93008,123200,123632,124144,125264,130032],uo=255,ho=new Map,yg=65535,Cg=1632,Xi=Cg,e2=yg-Cg+1,fo=new Uint8Array(e2).fill(uo);for(let r of $v)for(let e=0;e<10;e++){let i=r+e;i<=yg?fo[i-Xi]=e:ho.set(i,e)}var bg=48,xg=57,Qg=45,po=new Set([8722,65293,65123]);function t2(r){if(typeof r!="string")return r;let e=r.length;if(e===0)return r;let i=-1;for(let A=0;A<e;A++){let c=r.charCodeAt(A);if(!(c>=bg&&c<=xg||c===Qg)){if(c<Xi){if(po.has(c)){i=A;break}continue}if(c>=55296&&c<=56319){if(A+1<e){let u=r.charCodeAt(A+1);if(u>=56320&&u<=57343){let f=65536+(c-55296<<10)+(u-56320);if(ho.has(f)){i=A;break}}}continue}if(fo[c-Xi]!==uo||po.has(c)){i=A;break}}}if(i===-1)return r;let o=[];i>0&&o.push(r.slice(0,i));for(let A=i;A<e;A++){let c=r.charCodeAt(A);if(c>=bg&&c<=xg||c===Qg){o.push(r[A]);continue}if(c<Xi){o.push(po.has(c)?"-":r[A]);continue}if(c>=55296&&c<=56319){if(A+1<e){let f=r.charCodeAt(A+1);if(f>=56320&&f<=57343){let p=65536+(c-55296<<10)+(f-56320),g=ho.get(p);if(g!==void 0){o.push(String.fromCharCode(g+48)),A++;continue}}}o.push(r[A]);continue}if(po.has(c)){o.push("-");continue}let u=fo[c-Xi];o.push(u!==uo?String.fromCharCode(u+48):r[A])}return o.join("")}var vg=t2;var r2=/^[-+]?0x[a-fA-F0-9]+$/,i2=/^0b[01]+$/,n2=/^0o[0-7]+$/,s2=/^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/,o2={hex:!0,binary:!1,octal:!1,leadingZeros:!0,decimalPoint:".",eNotation:!0,infinity:"original",unicode:!1};function ZA(r,e={}){if(e=Object.assign({},o2,e),!r||typeof r!="string")return r;let i=r.trim();if(i.length===0)return r;if(e.skipLike!==void 0&&e.skipLike.test(i))return r;if(i==="0"||e.unicode&&(i=vg(i),i==="0"))return 0;if(e.hex&&r2.test(i))return _A(i,16);if(e.binary&&i2.test(i))return _A(i,2);if(e.octal&&n2.test(i))return _A(i,8);if(isFinite(i)){if(i.includes("e")||i.includes("E"))return A2(r,i,e);{let o=s2.exec(i);if(o){let A=o[1]||"",c=o[2],u=l2(o[3]),f=A?r[c.length+1]===".":r[c.length]===".";if(!e.leadingZeros&&(c.length>1||c.length===1&&!f))return r;{let p=Number(i),g=String(p);if(p===0)return p;if(g.search(/[eE]/)!==-1)return e.eNotation?p:r;if(i.indexOf(".")!==-1)return g==="0"||g===u||g===`${A}${u}`?p:r;let m=c?u:i;return c?m===g||A+m===g?p:r:m===g||m===A+g?p:r}}else return r}}else return c2(r,Number(i),e)}var a2=/^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;function A2(r,e,i){if(!i.eNotation)return r;let o=e.match(a2);if(o){let A=o[1]||"",c=o[3].indexOf("e")===-1?"E":"e",u=o[2],f=A?r[u.length+1]===c:r[u.length]===c;return u.length>1&&f?r:u.length===1&&(o[3].startsWith(`.${c}`)||o[3][0]===c)?Number(e):u.length>0?i.leadingZeros&&!f?(e=(o[1]||"")+o[3],Number(e)):r:Number(e)}else return r}function l2(r){if(r&&r.indexOf(".")!==-1){let e=r.length;for(;e>0&&r.charCodeAt(e-1)===48;)e--;return r=r.slice(0,e),r==="."?r="0":r[0]==="."?r="0"+r:r[r.length-1]==="."&&(r=r.substring(0,r.length-1)),r}return r}function _A(r,e){let i=r.trim();if((e===2||e===8)&&(r=i.substring(2)),parseInt)return parseInt(r,e);if(Number.parseInt)return Number.parseInt(r,e);if(window&&window.parseInt)return window.parseInt(r,e);throw new Error("parseInt, Number.parseInt, window.parseInt are not supported")}function c2(r,e,i){let o=e===1/0;switch(i.infinity.toLowerCase()){case"null":return null;case"infinity":return e;case"string":return o?"Infinity":"-Infinity";default:return r}}function XA(r){return typeof r=="function"?r:Array.isArray(r)?e=>{for(let i of r)if(typeof i=="string"&&e===i||i instanceof RegExp&&i.test(e))return!0}:()=>!1}var Qi=class{constructor(e,i={},o){this.pattern=e,this.separator=i.separator||".",this.segments=this._parse(e),this.data=o,this._hasDeepWildcard=this.segments.some(A=>A.type==="deep-wildcard"),this._hasAttributeCondition=this.segments.some(A=>A.attrName!==void 0),this._hasPositionSelector=this.segments.some(A=>A.position!==void 0)}_parse(e){let i=[],o=0,A="";for(;o<e.length;)e[o]===this.separator?o+1<e.length&&e[o+1]===this.separator?(A.trim()&&(i.push(this._parseSegment(A.trim())),A=""),i.push({type:"deep-wildcard"}),o+=2):(A.trim()&&i.push(this._parseSegment(A.trim())),A="",o++):(A+=e[o],o++);return A.trim()&&i.push(this._parseSegment(A.trim())),i}_parseSegment(e){let i={type:"tag"},o=null,A=e,c=e.match(/^([^\[]+)(\[[^\]]*\])(.*)$/);if(c&&(A=c[1]+c[3],c[2])){let m=c[2].slice(1,-1);m&&(o=m)}let u,f=A;if(A.includes("::")){let m=A.indexOf("::");if(u=A.substring(0,m).trim(),f=A.substring(m+2).trim(),!u)throw new Error(`Invalid namespace in pattern: ${e}`)}let p,g=null;if(f.includes(":")){let m=f.lastIndexOf(":"),E=f.substring(0,m).trim(),b=f.substring(m+1).trim();["first","last","odd","even"].includes(b)||/^nth\(\d+\)$/.test(b)?(p=E,g=b):p=f}else p=f;if(!p)throw new Error(`Invalid segment pattern: ${e}`);if(i.tag=p,u&&(i.namespace=u),o)if(o.includes("=")){let m=o.indexOf("=");i.attrName=o.substring(0,m).trim(),i.attrValue=o.substring(m+1).trim()}else i.attrName=o.trim();if(g){let m=g.match(/^nth\((\d+)\)$/);m?(i.position="nth",i.positionValue=parseInt(m[1],10)):i.position=g}return i}get length(){return this.segments.length}hasDeepWildcard(){return this._hasDeepWildcard}hasAttributeCondition(){return this._hasAttributeCondition}hasPositionSelector(){return this._hasPositionSelector}toString(){return this.pattern}};var zi=class{constructor(){this._byDepthAndTag=new Map,this._wildcardByDepth=new Map,this._deepWildcards=[],this._deepByTerminalTag=new Map,this._patterns=new Set,this._sealed=!1}add(e){if(this._sealed)throw new TypeError("ExpressionSet is sealed. Create a new ExpressionSet to add more expressions.");if(this._patterns.has(e.pattern))return this;if(this._patterns.add(e.pattern),e.hasDeepWildcard()){let c=e.segments[e.segments.length-1];if(c&&c.type!=="deep-wildcard"&&c.tag!=="*"){let u=c.tag;this._deepByTerminalTag.has(u)||this._deepByTerminalTag.set(u,[]),this._deepByTerminalTag.get(u).push(e)}else this._deepWildcards.push(e);return this}let i=e.length,A=e.segments[e.segments.length-1]?.tag;if(!A||A==="*")this._wildcardByDepth.has(i)||this._wildcardByDepth.set(i,[]),this._wildcardByDepth.get(i).push(e);else{let c=`${i}:${A}`;this._byDepthAndTag.has(c)||this._byDepthAndTag.set(c,[]),this._byDepthAndTag.get(c).push(e)}return this}addAll(e){for(let i of e)this.add(i);return this}has(e){return this._patterns.has(e.pattern)}get size(){return this._patterns.size}seal(){return this._sealed=!0,this}get isSealed(){return this._sealed}matchesAny(e){return this.findMatch(e)!==null}findMatch(e){let i=e.getDepth(),o=e.getCurrentTag(),A=`${i}:${o}`,c=this._byDepthAndTag.get(A);if(c){for(let p=0;p<c.length;p++)if(e.matches(c[p]))return c[p]}let u=this._wildcardByDepth.get(i);if(u){for(let p=0;p<u.length;p++)if(e.matches(u[p]))return u[p]}let f=this._deepByTerminalTag.get(o);if(f){for(let p=0;p<f.length;p++)if(e.matches(f[p]))return f[p]}for(let p=0;p<this._deepWildcards.length;p++)if(e.matches(this._deepWildcards[p]))return this._deepWildcards[p];return null}};var zA=class{constructor(e){this._matcher=e}get separator(){return this._matcher.separator}getCurrentTag(){let e=this._matcher.path;return e.length>0?e[e.length-1].tag:void 0}getCurrentNamespace(){let e=this._matcher.path;return e.length>0?e[e.length-1].namespace:void 0}getAttrValue(e){let i=this._matcher.path;if(i.length!==0)return i[i.length-1].values?.[e]}hasAttr(e){let i=this._matcher.path;if(i.length===0)return!1;let o=i[i.length-1];return o.values!==void 0&&e in o.values}getAnyParentAttr(e){return this._matcher.getAnyParentAttr(e)}hasAnyParentAttr(e){return this._matcher.hasAnyParentAttr(e)}getPosition(){let e=this._matcher.path;return e.length===0?-1:e[e.length-1].position??0}getCounter(){let e=this._matcher.path;return e.length===0?-1:e[e.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this._matcher.path.length}toString(e,i=!0){return this._matcher.toString(e,i)}toArray(){return this._matcher.path.map(e=>e.tag)}matches(e){return this._matcher.matches(e)}matchesAny(e){return e.matchesAny(this._matcher)}},qi=class{constructor(e={}){this.separator=e.separator||".",this.path=[],this.siblingStacks=[],this._pathStringCache=null,this._view=new zA(this),this._keptAttrs=[]}push(e,i=null,o=null,A=null){this._pathStringCache=null,this.path.length>0&&(this.path[this.path.length-1].values=void 0);let c=this.path.length,u=this.siblingStacks[c];u||(u={counts:new Map,total:0},this.siblingStacks[c]=u);let f=o?`${o}:${e}`:e,p=u.counts.get(f)||0,g=u.total;u.counts.set(f,p+1),u.total++;let m={tag:e,position:g,counter:p};o!=null&&(m.namespace=o),i!=null&&(m.values=i),this.path.push(m);let E=this.path.length,b=A!==null?A.keep:null;if(b!=null&&b.length>0&&i)for(let y=0;y<b.length;y++){let Q=b[y];i[Q]!==void 0&&this._keptAttrs.push({depth:E,name:Q,value:i[Q]})}}pop(){if(this.path.length===0)return;this._pathStringCache=null;let e=this.path.pop();this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1);let i=this.path.length+1;for(;this._keptAttrs.length>0&&this._keptAttrs[this._keptAttrs.length-1].depth>=i;)this._keptAttrs.pop();return e}updateCurrent(e){if(this.path.length>0){let i=this.path[this.path.length-1];e!=null&&(i.values=e)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(e){if(this.path.length!==0)return this.path[this.path.length-1].values?.[e]}hasAttr(e){if(this.path.length===0)return!1;let i=this.path[this.path.length-1];return i.values!==void 0&&e in i.values}getAnyParentAttr(e){let i=this._keptAttrs;for(let o=i.length-1;o>=0;o--)if(i[o].name===e)return i[o].value}hasAnyParentAttr(e){let i=this._keptAttrs;for(let o=i.length-1;o>=0;o--)if(i[o].name===e)return!0;return!1}getPosition(){return this.path.length===0?-1:this.path[this.path.length-1].position??0}getCounter(){return this.path.length===0?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(e,i=!0){let o=e||this.separator;if(o===this.separator&&i===!0){if(this._pathStringCache!==null)return this._pathStringCache;let c=this.path.map(u=>u.namespace?`${u.namespace}:${u.tag}`:u.tag).join(o);return this._pathStringCache=c,c}return this.path.map(c=>i&&c.namespace?`${c.namespace}:${c.tag}`:c.tag).join(o)}toArray(){return this.path.map(e=>e.tag)}reset(){this._pathStringCache=null,this.path=[],this.siblingStacks=[],this._keptAttrs=[]}matches(e){let i=e.segments;return i.length===0?!1:e.hasDeepWildcard()?this._matchWithDeepWildcard(i):this._matchSimple(i)}_matchSimple(e){if(this.path.length!==e.length)return!1;for(let i=0;i<e.length;i++)if(!this._matchSegment(e[i],this.path[i],i===this.path.length-1))return!1;return!0}_matchWithDeepWildcard(e){let i=this.path.length-1,o=e.length-1;for(;o>=0&&i>=0;){let A=e[o];if(A.type==="deep-wildcard"){if(o--,o<0)return!0;let c=e[o],u=!1;for(let f=i;f>=0;f--)if(this._matchSegment(c,this.path[f],f===this.path.length-1)){i=f-1,o--,u=!0;break}if(!u)return!1}else{if(!this._matchSegment(A,this.path[i],i===this.path.length-1))return!1;i--,o--}}return o<0}_matchSegment(e,i,o){if(e.tag!=="*"&&e.tag!==i.tag||e.namespace!==void 0&&e.namespace!=="*"&&e.namespace!==i.namespace||e.attrName!==void 0&&(!o||!i.values||!(e.attrName in i.values)||e.attrValue!==void 0&&String(i.values[e.attrName])!==String(e.attrValue)))return!1;if(e.position!==void 0){if(!o)return!1;let A=i.counter??0;if(e.position==="first"&&A!==0)return!1;if(e.position==="odd"&&A%2!==1)return!1;if(e.position==="even"&&A%2!==0)return!1;if(e.position==="nth"&&A!==e.positionValue)return!1}return!0}matchesAny(e){return e.matchesAny(this)}snapshot(){return{path:this.path.map(e=>({...e})),siblingStacks:this.siblingStacks.map(e=>e&&{counts:new Map(e.counts),total:e.total}),keptAttrs:this._keptAttrs.map(e=>({...e}))}}restore(e){this._pathStringCache=null,this.path=e.path.map(i=>({...i})),this.siblingStacks=e.siblingStacks.map(i=>i&&{counts:new Map(i.counts),total:i.total}),this._keptAttrs=(e.keptAttrs||[]).map(i=>({...i}))}readOnly(){return this._view}};var u2=[{id:"html-script-open",description:"<script opening tag",pattern:/<script[\s>/]/i},{id:"html-script-close",description:"</script closing tag",pattern:/<\/script[\s>]/i},{id:"html-javascript-protocol",description:"javascript: URI scheme (with optional whitespace/encoding)",pattern:/j[\t\n\r ]*a[\t\n\r ]*v[\t\n\r ]*a[\t\n\r ]*s[\t\n\r ]*c[\t\n\r ]*r[\t\n\r ]*i[\t\n\r ]*p[\t\n\r ]*t[\t\n\r ]*:/i},{id:"html-vbscript-protocol",description:"vbscript: URI scheme",pattern:/vbscript[\t\n\r ]*:/i},{id:"html-data-html",description:"data:text/html URI \u2014 can execute scripts in browsers",pattern:/data[\t\n\r ]*:[\t\n\r ]*text\/html/i},{id:"html-data-xhtml",description:"data:application/xhtml+xml URI",pattern:/data[\t\n\r ]*:[\t\n\r ]*application\/xhtml/i},{id:"html-data-svg",description:"data:image/svg+xml URI \u2014 can execute scripts",pattern:/data[\t\n\r ]*:[\t\n\r ]*image\/svg\+xml/i},{id:"html-inline-event-handler",description:"Inline event handler attributes: onclick=, onerror=, onload=, etc.",pattern:/\bon\w{1,30}\s*=/i},{id:"html-entity-obfuscated-script",description:"HTML-entity-encoded <script (e.g. &#x3C;script or &lt;script)",pattern:/(?:&#x0*3[Cc];?|&#0*60;?|&lt;)\s*script/i},{id:"html-entity-obfuscated-javascript",description:'HTML-entity-encoded javascript: (partial \u2014 catches common &#106; or &#x6a; for "j")',pattern:/(?:&#x0*6[Aa];?|&#0*106;?)\s*(?:&#x0*61;?|a)[\s\S]{0,80}script\s*:/i},{id:"html-style-expression",description:"CSS expression() \u2014 IE-era code execution in style attributes",pattern:/style[\s\S]{0,20}expression\s*\(/i},{id:"html-object-embed",description:"<object or <embed tags that can load active content",pattern:/<(?:object|embed)[\s>/]/i},{id:"html-base-tag",description:"<base href= \u2014 can hijack all relative URLs on a page",pattern:/<base[\s>]/i},{id:"html-meta-refresh",description:'<meta http-equiv="refresh" \u2014 can redirect users',pattern:/<meta[\s\S]{0,40}http-equiv[\s\S]{0,20}refresh/i},{id:"html-srcdoc",description:"srcdoc= attribute on iframes \u2014 embeds HTML that can run scripts",pattern:/srcdoc\s*=/i},{id:"html-iframe",description:"<iframe tag",pattern:/<iframe[\s>/]/i},{id:"html-form",description:"<form tag \u2014 can be used for phishing / credential harvesting injection",pattern:/<form[\s>/]/i}],Ki=u2;var h2=[{id:"xml-cdata-injection",description:"CDATA section injection: <![CDATA[ breaks out of text node context",pattern:/<!\[CDATA\[/i},{id:"xml-cdata-close",description:"CDATA close sequence: ]]> can terminate an enclosing CDATA section",pattern:/\]\]>/},{id:"xml-processing-instruction",description:"XML processing instruction: <?xml-stylesheet or <?php etc.",pattern:/<\?(?:xml[\- ]|php|asp)/i},{id:"xml-doctype-injection",description:"DOCTYPE declaration embedded in content \u2014 can define entities",pattern:/<!DOCTYPE(?:[\s[]|$)/i},{id:"xml-entity-system",description:"SYSTEM keyword \u2014 used in external entity declarations (XXE)",pattern:/\bSYSTEM\s+["']/i},{id:"xml-entity-public",description:"PUBLIC keyword \u2014 used in external entity declarations (XXE)",pattern:/\bPUBLIC\s+["']/i},{id:"xml-entity-declaration",description:"<!ENTITY declaration \u2014 defines entities, potential XXE or entity expansion",pattern:/<!ENTITY[\s%]/i},{id:"xml-billion-laughs",description:"Entity reference chaining / billion laughs: repeated &eX; style references",pattern:/(?:&\w{1,20};){3,}/},{id:"xml-namespace-confusion",description:"xmlns: attribute injection \u2014 can redefine namespaces to confuse parsers",pattern:/\bxmlns(?::\w{1,40})?\s*=/i},{id:"xml-comment-injection",description:"<!-- comment injection \u2014 can hide content from some parsers",pattern:/<!--/},{id:"xml-comment-close",description:"--> closes an enclosing XML comment",pattern:/-->/},{id:"xml-pi-close",description:"?> closes an enclosing processing instruction",pattern:/\?>/}],$i=h2;var f2=[{id:"svg-script-element",description:"<script element inside SVG executes JavaScript",pattern:/<script[\s>/]/i},{id:"svg-xlink-href-javascript",description:"xlink:href with javascript: \u2014 classic SVG XSS via <a> or <use>",pattern:/xlink\s*:\s*href\s*=\s*["']?\s*javascript\s*:/i},{id:"svg-href-javascript",description:"href= with javascript: in SVG context (<a>, <animate>, etc.)",pattern:/href\s*=\s*["']?\s*javascript\s*:/i},{id:"svg-foreignobject",description:"<foreignObject embeds HTML inside SVG \u2014 can execute scripts",pattern:/<foreignObject[\s>/]/i},{id:"svg-use-external",description:"<use xlink:href or href pointing to external resource (non-fragment URL)",pattern:/<use[\s\S]{0,60}(?:xlink\s*:\s*)?href\s*=\s*(?:["'][^#]|[^"'#\s>])/i},{id:"svg-animate-href",description:'<animate attributeName="href" \u2014 can dynamically change href to javascript:',pattern:/<animate[\s\S]{0,80}attributeName\s*=\s*["'][\s]*href["']/i},{id:"svg-animate-xlinkhref",description:'<animate attributeName="xlink:href"',pattern:/<animate[\s\S]{0,80}attributeName\s*=\s*["'][\s]*xlink\s*:\s*href["']/i},{id:"svg-set-javascript",description:'<set to="javascript:..." \u2014 sets an attribute to a javascript: URI',pattern:/<set[\s\S]{0,80}to\s*=\s*["']?\s*javascript\s*:/i},{id:"svg-event-handler",description:"SVG-specific event handler attributes: onload=, onerror=, onactivate=, etc.",pattern:/\bon(?:load|error|activate|begin|end|repeat|focus|blur|click|mouse\w{1,20}|key\w{1,20})\s*=/i},{id:"svg-handler-generic",description:"Generic on* handler catch-all for SVG attributes",pattern:/\bon\w{1,30}\s*=/i},{id:"svg-filter-feimage",description:"<feImage href= \u2014 filter primitive that can load external resources",pattern:/<feImage[\s\S]{0,80}(?:xlink\s*:\s*)?href\s*=/i},{id:"svg-image-external",description:"<image xlink:href with http/https or javascript protocol",pattern:/<image[\s\S]{0,80}(?:xlink\s*:\s*)?href\s*=\s*["']?\s*(?:https?|javascript)\s*:/i},{id:"svg-style-javascript",description:"style= attribute containing javascript: (e.g. background:url(javascript:...))",pattern:/style\s*=[\s\S]{0,60}javascript\s*:/i}],qA=f2;var p2=[{id:"sql-block-comment-open",description:"SQL block comment open: /* ... */ \u2014 unusual in legitimate user text",pattern:/\/\*/},{id:"sql-union-select",description:"UNION SELECT \u2014 most common SQL injection aggregation attack",pattern:/\bUNION\s{1,20}(?:ALL\s{1,20})?SELECT\b/i},{id:"sql-drop-table",description:"DROP TABLE \u2014 destructive DDL injection",pattern:/\bDROP\s{1,20}TABLE\b/i},{id:"sql-drop-database",description:"DROP DATABASE \u2014 destructive DDL injection",pattern:/\bDROP\s{1,20}DATABASE\b/i},{id:"sql-insert-into",description:"INSERT INTO \u2014 data injection",pattern:/\bINSERT\s{1,20}INTO\b/i},{id:"sql-delete-from",description:"DELETE FROM \u2014 data deletion injection",pattern:/\bDELETE\s{1,20}FROM\b/i},{id:"sql-update-set",description:"UPDATE ... SET \u2014 data modification injection",pattern:/\bUPDATE\b[\s\S]{1,60}\bSET\b/i},{id:"sql-exec-xp",description:"EXEC xp_ \u2014 MSSQL extended stored procedure execution",pattern:/\bEXEC(?:UTE)?\s{1,20}xp_/i},{id:"sql-tautology-string",description:`Classic string tautology: ' OR '1'='1 or " OR "1"="1"`,pattern:/'\s{0,10}OR\s{0,10}'[^']{0,20}'\s*=\s*'[^']{0,20}/i},{id:"sql-tautology-numeric",description:"Numeric tautology: OR 1=1",pattern:/\bOR\s{1,10}1\s*=\s*1\b/i},{id:"sql-always-true-zero",description:"Numeric tautology: OR 0=0",pattern:/\bOR\s{1,10}0\s*=\s*0\b/i},{id:"sql-sleep-benchmark",description:"Time-based blind injection: SLEEP() or BENCHMARK()",pattern:/\b(?:SLEEP|BENCHMARK)\s*\(/i},{id:"sql-waitfor-delay",description:"MSSQL time-based blind injection: WAITFOR DELAY",pattern:/\bWAITFOR\s{1,20}DELAY\b/i},{id:"sql-char-function",description:"CHAR() function \u2014 used to obfuscate injected strings",pattern:/\bCHAR\s*\(\s*\d{1,3}/i},{id:"sql-information-schema",description:"INFORMATION_SCHEMA \u2014 reconnaissance query for table/column enumeration",pattern:/\bINFORMATION_SCHEMA\b/i}],Vn=p2;var d2=[{id:"shell-path-traversal-unix",description:"Unix path traversal: ../ \u2014 climbing the directory tree",pattern:/\.\.\//},{id:"shell-path-traversal-windows",description:"Windows path traversal: ..\\ \u2014 climbing the directory tree",pattern:/\.\.\\/},{id:"shell-path-traversal-encoded",description:"URL-encoded path traversal: %2e%2e or %2f variants",pattern:/%2e%2e|%2f\.\.|\.\.%2f/i},{id:"shell-null-byte",description:"Null byte injection: \\x00 or %00 \u2014 truncates strings in C-backed functions",pattern:/\x00|%00/},{id:"shell-semicolon",description:"Semicolon command separator: cmd1; cmd2",pattern:/;/},{id:"shell-pipe",description:"Pipe operator: cmd1 | cmd2",pattern:/\|/},{id:"shell-and-operator",description:"AND operator: cmd1 && cmd2",pattern:/&&/},{id:"shell-or-operator",description:"OR operator: cmd1 || cmd2",pattern:/\|\|/},{id:"shell-backtick",description:"Backtick command substitution: `cmd`",pattern:/`/},{id:"shell-dollar-paren",description:"Dollar-paren command substitution: $(cmd)",pattern:/\$\(/},{id:"shell-dollar-brace",description:"Dollar-brace variable expansion: ${var} \u2014 can be abused for injection",pattern:/\$\{/},{id:"shell-redirect-out",description:"Output redirection: cmd > file or cmd >> file",pattern:/>{1,2}/},{id:"shell-redirect-in",description:"Input redirection: cmd < file",pattern:/</},{id:"shell-newline-injection",description:"Newline injection: \\n or \\r \u2014 can inject new shell commands",pattern:/[\n\r]/},{id:"shell-glob-star",description:"Glob expansion: * or ? \u2014 can expand to unintended files",pattern:/[/\\][*?]/},{id:"shell-absolute-root",description:"Absolute root path injection: string starting with / or \\ (Windows UNC)",pattern:/^(?:\/|\\\\)/},{id:"shell-windows-drive",description:"Windows drive letter path injection: C:\\ or D:/",pattern:/^[a-zA-Z]:[/\\]/},{id:"shell-curl-wget",description:"curl/wget with URL or flags \u2014 can exfiltrate data or download payloads",pattern:/\b(?:curl|wget)\s+(?:https?:\/\/|ftp:\/\/|-)/i}],KA=d2;var g2=[{id:"redos-nested-quantifier-plus",description:"Nested + quantifier inside a group with outer quantifier: (a+)+, (.+b)*, etc.",pattern:/\([^)]*\+[^)]*\)[+*]/},{id:"redos-nested-quantifier-star",description:"Nested * quantifier: (a*)* or (a*)+ \u2014 catastrophic backtracking",pattern:/\([^)]*\*[^)]*\)[*+]/},{id:"redos-nested-groups",description:"Doubly nested quantified groups: ((a+)+) \u2014 guaranteed catastrophic",pattern:/\(\([^)]{0,40}\)[+*]\)[+*]/},{id:"redos-alternation-overlap",description:"Overlapping alternation under quantifier: (a|a)+ \u2014 ambiguous NFA paths",pattern:/\(([^|()]{1,20})\|(?:\1)(?:\|[^|()]{1,20}){0,5}\)[+*?]{1,2}/},{id:"redos-star-plus-concat",description:"(x*x)+ pattern \u2014 triggers super-linear backtracking",pattern:/\([^)]{0,10}\*[^)]{0,10}\)[+*]/},{id:"redos-dot-star-greedy",description:"(.*){n,} or (.+){n,} \u2014 repeated greedy dot quantifiers",pattern:/\(\.[*+]\)\{?\d/},{id:"redos-large-repetition",description:"Very large fixed or range repetition count {1000,} or {1000,n} \u2014 denial of service via backtracking",pattern:/\{\d{4,}(?:,\d*)?\}/},{id:"redos-catastrophic-alternation",description:"Long alternation with many similar branches \u2014 polynomial backtracking risk",pattern:/\([^)]{0,200}(?:\|[^|)]{0,50}){9,}\)/}],$A=g2;var _t=`["'\\s]*:`,m2=[{id:"nosql-where-operator",description:"$where \u2014 executes arbitrary JavaScript server-side in MongoDB",pattern:new RegExp(`\\$where${_t}`,"i")},{id:"nosql-ne-operator",description:'$ne \u2014 "not equal" operator used to bypass equality checks',pattern:new RegExp(`\\$ne${_t}`,"i")},{id:"nosql-gt-operator",description:'$gt \u2014 "greater than" used to bypass password/value checks',pattern:new RegExp(`\\$gte?${_t}`,"i")},{id:"nosql-lt-operator",description:'$lt / $lte \u2014 "less than" bypass variants',pattern:new RegExp(`\\$lte?${_t}`,"i")},{id:"nosql-regex-operator",description:"$regex \u2014 can be used to extract data character by character (blind injection)",pattern:new RegExp(`\\$regex${_t}`,"i")},{id:"nosql-or-operator",description:"$or \u2014 logical OR; used to create always-true conditions",pattern:new RegExp(`\\$or${_t}\\s*\\[`,"i")},{id:"nosql-and-operator",description:"$and \u2014 logical AND operator injection",pattern:new RegExp(`\\$and${_t}\\s*\\[`,"i")},{id:"nosql-nor-operator",description:"$nor \u2014 logical NOR operator injection",pattern:new RegExp(`\\$nor${_t}\\s*\\[`,"i")},{id:"nosql-exists-operator",description:"$exists \u2014 can enumerate fields to determine schema",pattern:new RegExp(`\\$exists${_t}`,"i")},{id:"nosql-in-operator",description:"$in \u2014 matches any value in a list; can enumerate values",pattern:new RegExp(`\\$in${_t}\\s*\\[`,"i")},{id:"nosql-expr-operator",description:"$expr \u2014 allows aggregation expressions in queries (MongoDB 3.6+)",pattern:new RegExp(`\\$expr${_t}`,"i")},{id:"nosql-function-operator",description:"$function \u2014 executes arbitrary JavaScript in MongoDB 4.4+",pattern:new RegExp(`\\$function${_t}`,"i")},{id:"nosql-accumulator-operator",description:"$accumulator \u2014 custom aggregation with arbitrary JS execution",pattern:new RegExp(`\\$accumulator${_t}`,"i")},{id:"nosql-proto-pollution",description:"__proto__ \u2014 prototype pollution via object key injection",pattern:/__proto__/},{id:"nosql-constructor-prototype",description:"constructor.prototype \u2014 alternative prototype pollution vector (dot notation or JSON key)",pattern:/constructor[\s"':.,{\[]*prototype/i},{id:"nosql-proto-bracket",description:'["__proto__"] \u2014 bracket-notation prototype pollution',pattern:/\[["']__proto__["']\]/}],el=m2;var B2=[{id:"log-crlf-injection",description:"CRLF injection: literal \\r or \\n embeds fake log lines",pattern:/[\r\n]/},{id:"log-url-encoded-crlf",description:"URL-encoded CRLF: %0d, %0a, %0D, %0A \u2014 decoded by some log parsers",pattern:/%0[dDaA]/},{id:"log-unicode-newline",description:"Unicode newline variants: U+2028 (line separator), U+2029 (paragraph separator)",pattern:/[\u2028\u2029]/},{id:"log-log4shell-jndi",description:"Log4Shell: ${jndi:...} triggers remote code execution in Apache Log4j",pattern:/\$\{jndi\s*:/i},{id:"log-log4shell-obfuscated",description:"Obfuscated Log4Shell: ${::-j}... lookup-bypass prefix used to evade WAF detection",pattern:/\$\{::-/},{id:"log-log4j-lookup",description:"Log4j lookup syntax: ${env:...}, ${sys:...}, ${ctx:...} \u2014 data exfiltration",pattern:/\$\{(?:env|sys|ctx|main|map|sd|web|docker|k8s|spring)\s*:/i},{id:"log-ssti-double-brace",description:"SSTI double-brace: {{expression}} \u2014 Jinja2, Twig, Handlebars, etc.",pattern:/\{\{[\s\S]{0,80}\}\}/},{id:"log-ssti-hash-brace",description:"SSTI hash-brace: #{expression} \u2014 Thymeleaf, Velocity, Ruby ERB",pattern:/#\{[\s\S]{0,80}\}/},{id:"log-ssti-dollar-brace",description:"SSTI/EL injection: ${expression with operators or method calls} \u2014 JSP EL, Freemarker, SpEL",pattern:/\$\{[^}]*(?:\.|\(|\*|\+|\bclass\b|\bruntime\b|\bprocess\b|\bexec\b)[^}]{0,80}\}/i},{id:"log-ssti-percent-tag",description:"SSTI ERB/ASP tag: <%= expression %> \u2014 Ruby ERB, ASP",pattern:/<%=[\s\S]{0,80}%>/},{id:"log-null-byte",description:"Null byte: \\x00 or %00 \u2014 can truncate log entries in C-backed loggers",pattern:/\x00|%00/},{id:"log-ansi-escape",description:"ANSI escape sequence: ESC[ \u2014 can manipulate terminal output when logs are tailed",pattern:/\x1b\[/}],tl=B2;var E2=[{id:"sql-line-comment",description:"SQL line comment: -- followed by whitespace or end of string",pattern:/--(?:\s|$)/},{id:"sql-stacked-query",description:"Stacked queries: semicolon immediately followed by a SQL keyword",pattern:/;\s{0,10}(?:SELECT|INSERT|UPDATE|DELETE|DROP|CREATE|ALTER|EXEC)\b/i},{id:"sql-hex-encoding",description:"Hex-encoded string injection: 0x41414141 style (MySQL)",pattern:/\b0x[0-9a-f]{4,}/i}],w2=[...Vn,...E2],rl=w2;Ki.label="HTML";$i.label="XML";qA.label="SVG";Vn.label="SQL";rl.label="SQL-STRICT";KA.label="SHELL";$A.label="REDOS";el.label="NOSQL";tl.label="LOG";var ak=Object.freeze({HTML:Ki,XML:$i,SVG:qA,SQL:Vn,"SQL-STRICT":rl,SHELL:KA,REDOS:$A,NOSQL:el,LOG:tl});function y2(r){if(typeof r!="string")throw new TypeError(`is-unsafe: first argument must be a string, got ${typeof r}`)}function C2(r){if(!(r instanceof RegExp)){if(Array.isArray(r)){if(r.length===0)throw new TypeError("is-unsafe: context must not be an empty array");if(Array.isArray(r[0])){for(let e of r)if(!Array.isArray(e)||e.length===0)throw new TypeError("is-unsafe: each context in the array must be a non-empty pattern array (PatternList)")}return}throw new TypeError(`is-unsafe: second argument must be a PatternList (e.g. HTML), an array of PatternLists (e.g. [HTML, XML]), or a RegExp. Got: ${typeof r}`)}}function b2(r){return r instanceof RegExp?{lists:null,regex:r}:Array.isArray(r[0])?{lists:r,regex:null}:{lists:[r],regex:null}}function x2(r,e){let i=e.label??"CUSTOM";for(let o of e)if(o.pattern.test(r))return{context:i,id:o.id,description:o.description,pattern:o.pattern};return null}function Ig(r,e){y2(r),C2(e);let{lists:i,regex:o}=b2(e);if(o)return o.test(r);for(let A of i)if(x2(r,A)!==null)return!0;return!1}function Q2(r,e){if(!r)return{};let i=e.attributesGroupName?r[e.attributesGroupName]:r;if(!i)return{};let o={};for(let A in i)if(A.startsWith(e.attributeNamePrefix)){let c=A.substring(e.attributeNamePrefix.length);o[c]=i[A]}else o[A]=i[A];return o}function v2(r){if(!r||typeof r!="string")return;let e=r.indexOf(":");if(e!==-1&&e>0){let i=r.substring(0,e);if(i!=="xmlns")return i}}var jn=class{constructor(e,i){this.options=e,this.currentNode=null,this.tagsNodeStack=[],this.parseXml=D2,this.parseTextData=I2,this.resolveNameSpace=F2,this.buildAttributesMap=S2,this.isItStopNode=Y2,this.replaceEntitiesValue=U2,this.readStopNodeData=R2,this.saveTextToParentTag=k2,this.addChild=M2,this.ignoreAttributesFn=XA(this.options.ignoreAttributes),this.entityExpansionCount=0,this.currentExpandedLength=0,this.doctypefound=!1;let o={...Pn};this.options.entityDecoder?this.entityDecoder=this.options.entityDecoder:(typeof this.options.htmlEntities=="object"?o=this.options.htmlEntities:this.options.htmlEntities===!0&&(o={...WA,...HA}),this.entityDecoder=new Zi({namedEntities:{...o,...i},numericAllowed:this.options.htmlEntities,limit:{maxTotalExpansions:this.options.processEntities.maxTotalExpansions,maxExpandedLength:this.options.processEntities.maxExpandedLength,applyLimitsTo:this.options.processEntities.appliesTo},onInputEntity:(c,u)=>Ig(u,[Ki,$i])?_i.BLOCK:_i.ALLOW})),this.matcher=new qi,this.readonlyMatcher=this.matcher.readOnly(),this.isCurrentNodeStopNode=!1,this.stopNodeExpressionsSet=new zi;let A=this.options.stopNodes;if(A&&A.length>0){for(let c=0;c<A.length;c++){let u=A[c];typeof u=="string"?this.stopNodeExpressionsSet.add(new Qi(u)):u instanceof Qi&&this.stopNodeExpressionsSet.add(u)}this.stopNodeExpressionsSet.seal()}}};function I2(r,e,i,o,A,c,u){let f=this.options;if(r!==void 0&&(f.trimValues&&!o&&(r=r.trim()),r.length>0)){u||(r=this.replaceEntitiesValue(r,e,i));let p=f.jPath?i.toString():i,g=f.tagValueProcessor(e,r,p,A,c);return g==null?r:typeof g!=typeof r||g!==r?g:f.trimValues||r.trim()===r?sl(r,f.parseTagValue,f.numberParseOptions):r}}function F2(r){if(this.options.removeNSPrefix){let e=r.split(":"),i=r.charAt(0)==="/"?"/":"";if(e[0]==="xmlns")return"";e.length===2&&(r=i+e[1])}return r}var T2=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function S2(r,e,i,o=!1){let A=this.options;if(o===!0||A.ignoreAttributes!==!0&&typeof r=="string"){let c=Ag(r,T2),u=c.length,f={},p=new Array(u),g=!1,m={};for(let y=0;y<u;y++){let Q=this.resolveNameSpace(c[y][1]),v=c[y][4];if(Q.length&&v!==void 0){let I=v;A.trimValues&&(I=I.trim()),I=this.replaceEntitiesValue(I,i,this.readonlyMatcher),p[y]=I,m[Q]=I,g=!0}}g&&typeof e=="object"&&e.updateCurrent&&e.updateCurrent(m);let E=A.jPath?e.toString():this.readonlyMatcher,b=!1;for(let y=0;y<u;y++){let Q=this.resolveNameSpace(c[y][1]);if(this.ignoreAttributesFn(Q,E))continue;let v=A.attributeNamePrefix+Q;if(Q.length)if(A.transformAttributeName&&(v=A.transformAttributeName(v)),v=Fg(v,A),c[y][4]!==void 0){let I=p[y],F=A.attributeValueProcessor(Q,I,E);F==null?f[v]=I:typeof F!=typeof I||F!==I?f[v]=F:f[v]=sl(I,A.parseAttributeValue,A.numberParseOptions),b=!0}else A.allowBooleanAttributes&&(f[v]=!0,b=!0)}if(!b)return;if(A.attributesGroupName&&!A.preserveOrder){let y={};return y[A.attributesGroupName]=f,y}return f}}var D2=function(r){r=r.replace(/\r\n?/g,`
1135
+ `);let e=new Pt("!xml"),i=e,o="";this.matcher.reset(),this.entityDecoder.reset(),this.entityExpansionCount=0,this.currentExpandedLength=0,this.doctypefound=!1;let A=this.options,c=new Jn(A.processEntities),u=r.length;for(let f=0;f<u;f++)if(r[f]==="<"){let g=r.charCodeAt(f+1);if(g===47){let m=en(r,">",f,"Closing Tag is not closed."),E=r.substring(f+2,m).trim();if(A.removeNSPrefix){let y=E.indexOf(":");y!==-1&&(E=E.substr(y+1))}E=il(A.transformTagName,E,"",A).tagName,i&&(o=this.saveTextToParentTag(o,i,this.readonlyMatcher));let b=this.matcher.getCurrentTag();if(E&&A.unpairedTagsSet.has(E))throw new Error(`Unpaired tag can not be used as closing tag: </${E}>`);b&&A.unpairedTagsSet.has(b)&&(this.matcher.pop(),this.tagsNodeStack.pop()),this.matcher.pop(),this.isCurrentNodeStopNode=!1,i=this.tagsNodeStack.pop()||e,A.captureMetaData&&i&&i.addEndIndex(m+1),o="",f=m}else if(g===63){let m=nl(r,f,!1,"?>");if(!m)throw new Error("Pi Tag is not closed.");o=this.saveTextToParentTag(o,i,this.readonlyMatcher);let E=this.buildAttributesMap(m.tagExp,this.matcher,m.tagName,!0);if(E){let b=E[this.options.attributeNamePrefix+"version"];this.entityDecoder.setXmlVersion(Number(b)||1),c.setXmlVersion(Number(b)||1)}if(!(A.ignoreDeclaration&&m.tagName==="?xml"||A.ignorePiTags)){let b=new Pt(m.tagName);b.add(A.textNodeName,""),m.tagName!==m.tagExp&&m.attrExpPresent&&A.ignoreAttributes!==!0&&(b[":@"]=E),this.addChild(i,b,this.readonlyMatcher,f),A.captureMetaData&&i.addEndIndex(m.closeIndex+2)}f=m.closeIndex+1}else if(g===33&&r.charCodeAt(f+2)===45&&r.charCodeAt(f+3)===45){let m=en(r,"-->",f+4,"Comment is not closed.");if(A.commentPropName){let E=r.substring(f+4,m-2);o=this.saveTextToParentTag(o,i,this.readonlyMatcher),i.add(A.commentPropName,[{[A.textNodeName]:E}])}f=m}else if(g===33&&r.charCodeAt(f+2)===68){if(this.doctypefound)throw new Error("Multiple DOCTYPE declarations found.");this.doctypefound=!0;let m=c.readDocType(r,f);this.entityDecoder.addInputEntities(m.entities),f=m.i}else if(g===33&&r.charCodeAt(f+2)===91){let m=en(r,"]]>",f,"CDATA is not closed.")-2,E=r.substring(f+9,m);o=this.saveTextToParentTag(o,i,this.readonlyMatcher);let b=this.parseTextData(E,i.tagname,this.readonlyMatcher,!0,!1,!0,!0);b==null&&(b=""),A.cdataPropName?i.add(A.cdataPropName,[{[A.textNodeName]:E}]):i.add(A.textNodeName,b),f=m+2}else{let m=nl(r,f,A.removeNSPrefix);if(!m){let P=r.substring(Math.max(0,f-50),Math.min(u,f+50));throw new Error(`readTagExp returned undefined at position ${f}. Context: "${P}"`)}let E=m.tagName,b=m.rawTagName,y=m.tagExp,Q=m.attrExpPresent,v=m.closeIndex;if({tagName:E,tagExp:y}=il(A.transformTagName,E,y,A),A.strictReservedNames&&(E===A.commentPropName||E===A.cdataPropName||E===A.textNodeName||E===A.attributesGroupName))throw new Error(`Invalid tag name: ${E}`);i&&o&&i.tagname!=="!xml"&&(o=this.saveTextToParentTag(o,i,this.readonlyMatcher,!1));let I=i;I&&A.unpairedTagsSet.has(I.tagname)&&(i=this.tagsNodeStack.pop(),this.matcher.pop());let F=!1;y.length>0&&y.lastIndexOf("/")===y.length-1&&(F=!0,E[E.length-1]==="/"?(E=E.substr(0,E.length-1),y=E):y=y.substr(0,y.length-1),Q=E!==y);let k=null,_={},M;M=v2(b),E!==e.tagname&&this.matcher.push(E,{},M),E!==y&&Q&&(k=this.buildAttributesMap(y,this.matcher,E),k&&(_=Q2(k,A))),E!==e.tagname&&(this.isCurrentNodeStopNode=this.isItStopNode());let O=f;if(this.isCurrentNodeStopNode){let P="";if(F)f=m.closeIndex;else if(A.unpairedTagsSet.has(E))f=m.closeIndex;else{let re=this.readStopNodeData(r,b,v+1);if(!re)throw new Error(`Unexpected end of ${b}`);f=re.i,P=re.tagContent}let R=new Pt(E);k&&(R[":@"]=k),R.add(A.textNodeName,P),this.matcher.pop(),this.isCurrentNodeStopNode=!1,this.addChild(i,R,this.readonlyMatcher,O),A.captureMetaData&&i.addEndIndex(f+1)}else{if(F){({tagName:E,tagExp:y}=il(A.transformTagName,E,y,A));let P=new Pt(E);k&&(P[":@"]=k),this.addChild(i,P,this.readonlyMatcher,O),A.captureMetaData&&i.addEndIndex(v+1),this.matcher.pop(),this.isCurrentNodeStopNode=!1}else if(A.unpairedTagsSet.has(E)){let P=new Pt(E);k&&(P[":@"]=k),this.addChild(i,P,this.readonlyMatcher,O),A.captureMetaData&&i.addEndIndex(m.closeIndex+1),this.matcher.pop(),this.isCurrentNodeStopNode=!1,f=m.closeIndex;continue}else{let P=new Pt(E);if(this.tagsNodeStack.length>A.maxNestedTags)throw new Error("Maximum nested tags exceeded");this.tagsNodeStack.push(i),k&&(P[":@"]=k),this.addChild(i,P,this.readonlyMatcher,O),i=P}o="",f=v}}}else o+=r[f];return e.child};function M2(r,e,i,o){this.options.captureMetaData||(o=void 0);let A=this.options.jPath?i.toString():i,c=this.options.updateTag(e.tagname,A,e[":@"]);c===!1||(typeof c=="string"&&(e.tagname=c),r.addChild(e,o))}function U2(r,e,i){let o=this.options.processEntities;if(!o||!o.enabled)return r;if(o.allowedTags){let A=this.options.jPath?i.toString():i;if(!(Array.isArray(o.allowedTags)?o.allowedTags.includes(e):o.allowedTags(e,A)))return r}if(o.tagFilter){let A=this.options.jPath?i.toString():i;if(!o.tagFilter(e,A))return r}return this.entityDecoder.decode(r)}function k2(r,e,i,o){return r&&(o===void 0&&(o=e.child.length===0),r=this.parseTextData(r,e.tagname,i,!1,e[":@"]?Object.keys(e[":@"]).length!==0:!1,o),r!==void 0&&r!==""&&e.add(this.options.textNodeName,r),r=""),r}function Y2(){return this.stopNodeExpressionsSet.size===0?!1:this.matcher.matchesAny(this.stopNodeExpressionsSet)}function O2(r,e,i=">"){let o=0,A=r.length,c=i.charCodeAt(0),u=i.length>1?i.charCodeAt(1):-1,f="",p=e;for(let g=e;g<A;g++){let m=r.charCodeAt(g);if(o)m===o&&(o=0);else if(m===34||m===39)o=m;else if(m===c)if(u!==-1){if(r.charCodeAt(g+1)===u)return f+=r.substring(p,g),{data:f,index:g}}else return f+=r.substring(p,g),{data:f,index:g};else m===9&&!o&&(f+=r.substring(p,g)+" ",p=g+1)}}function en(r,e,i,o){let A=r.indexOf(e,i);if(A===-1)throw new Error(o);return A+e.length-1}function N2(r,e,i,o){let A=r.indexOf(e,i);if(A===-1)throw new Error(o);return A}function nl(r,e,i,o=">"){let A=O2(r,e+1,o);if(!A)return;let c=A.data,u=A.index,f=c.search(/\s/),p=c,g=!0;f!==-1&&(p=c.substring(0,f),c=c.substring(f+1).trimStart());let m=p;if(i){let E=p.indexOf(":");E!==-1&&(p=p.substr(E+1),g=p!==A.data.substr(E+1))}return{tagName:p,tagExp:c,closeIndex:u,attrExpPresent:g,rawTagName:m}}function R2(r,e,i){let o=i,A=1,c=r.length;for(;i<c;i++)if(r[i]==="<"){let u=r.charCodeAt(i+1);if(u===47){let f=N2(r,">",i,`${e} is not closed`);if(r.substring(i+2,f).trim()===e&&(A--,A===0))return{tagContent:r.substring(o,i),i:f};i=f}else if(u===63)i=en(r,"?>",i+1,"StopNode is not closed.");else if(u===33&&r.charCodeAt(i+2)===45&&r.charCodeAt(i+3)===45)i=en(r,"-->",i+3,"StopNode is not closed.");else if(u===33&&r.charCodeAt(i+2)===91)i=en(r,"]]>",i,"StopNode is not closed.")-2;else{let f=nl(r,i,!1);f&&((f&&f.tagName)===e&&f.tagExp[f.tagExp.length-1]!=="/"&&A++,i=f.closeIndex)}}}function sl(r,e,i){if(e&&typeof r=="string"){let o=r.trim();return o==="true"?!0:o==="false"?!1:ZA(r,i)}else return lg(r)?r:""}function il(r,e,i,o){if(r){let A=r(e);i===e&&(i=A),e=A}return e=Fg(e,o),{tagName:e,tagExp:i}}function Fg(r,e){if(lo.includes(r))throw new Error(`[SECURITY] Invalid name: "${r}" is a reserved JavaScript keyword that could cause prototype pollution`);return Gn.includes(r)?e.onDangerousProperty(r):r}var ol=Pt.getMetaDataSymbol();function G2(r,e){if(!r||typeof r!="object")return{};if(!e)return r;let i={};for(let o in r)if(o.startsWith(e)){let A=o.substring(e.length);i[A]=r[o]}else i[o]=r[o];return i}function al(r,e,i,o){return Tg(r,e,i,o)}function Tg(r,e,i,o){let A,c={};for(let u=0;u<r.length;u++){let f=r[u],p=L2(f);if(p!==void 0&&p!==e.textNodeName){let g=G2(f[":@"]||{},e.attributeNamePrefix);i.push(p,g)}if(p===e.textNodeName)A===void 0?A=f[p]:A+=""+f[p];else{if(p===void 0)continue;if(f[p]){let g=Tg(f[p],e,i,o),m=H2(g,e);if(Object.keys(g).length===0&&e.alwaysCreateTextNode&&(g[e.textNodeName]=""),f[":@"]?P2(g,f[":@"],o,e):Object.keys(g).length===1&&g[e.textNodeName]!==void 0&&!e.alwaysCreateTextNode?g=g[e.textNodeName]:Object.keys(g).length===0&&(e.alwaysCreateTextNode?g[e.textNodeName]="":g=""),f[ol]!==void 0&&typeof g=="object"&&g!==null&&(g[ol]=f[ol]),c[p]!==void 0&&Object.prototype.hasOwnProperty.call(c,p))Array.isArray(c[p])||(c[p]=[c[p]]),c[p].push(g);else{let E=e.jPath?o.toString():o;e.isArray(p,E,m)?c[p]=[g]:c[p]=g}p!==void 0&&p!==e.textNodeName&&i.pop()}}}return typeof A=="string"?A.length>0&&(c[e.textNodeName]=A):A!==void 0&&(c[e.textNodeName]=A),c}function L2(r){let e=Object.keys(r);for(let i=0;i<e.length;i++){let o=e[i];if(o!==":@")return o}}function P2(r,e,i,o){if(e){let A=Object.keys(e),c=A.length;for(let u=0;u<c;u++){let f=A[u],p=f.startsWith(o.attributeNamePrefix)?f.substring(o.attributeNamePrefix.length):f,g=o.jPath?i.toString()+"."+p:i;o.isArray(f,g,!0,!0)?r[f]=[e[f]]:r[f]=e[f]}}}function H2(r,e){let{textNodeName:i}=e,o=Object.keys(r).length;return!!(o===0||o===1&&(r[i]||typeof r[i]=="boolean"||r[i]===0))}var tn=class{constructor(e){this.externalEntities={},this.options=mg(e)}parse(e,i){if(typeof e!="string"&&e.toString)e instanceof Uint8Array&&!(typeof Buffer<"u"&&Buffer.isBuffer(e))?e=new TextDecoder("utf-8",{ignoreBOM:!0}).decode(e):e=e.toString();else if(typeof e!="string")throw new Error("XML data is accepted in String or Bytes[] form.");if(i){i===!0&&(i={});let c=fg(e,i);if(c!==!0)throw Error(`${c.err.msg}:${c.err.line}:${c.err.col}`)}let o=new jn(this.options,this.externalEntities),A=o.parseXml(e);return this.options.preserveOrder||A===void 0?A:al(A,this.options,o.matcher,o.readonlyMatcher)}addEntity(e,i){if(i.indexOf("&")!==-1)throw new Error("Entity value can't have '&'");if(e.indexOf("&")!==-1||e.indexOf(";")!==-1)throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '&#xD;'");if(i==="&")throw new Error("An entity with value '&' is not permitted");this.externalEntities[e]=i}static getMetaDataSymbol(){return Pt.getMetaDataSymbol()}};import*as Jr from"node:path";import{mkdir as F0,writeFile as cT}from"node:fs/promises";import{cwd as uT,env as hT,exit as fT}from"node:process";function Sg(r,e,i){let o=r.indexOf(e);if(o===-1)return r;let A=e.length,c=0,u="";do u+=r.slice(c,o)+e+i,c=o+A,o=r.indexOf(e,c);while(o!==-1);return u+=r.slice(c),u}function Dg(r,e,i,o){let A=0,c="";do{let u=r[o-1]==="\r";c+=r.slice(A,u?o-1:o)+e+(u?`\r
1136
1136
  `:`
1137
- `)+i,A=a+1,a=r.indexOf(`
1138
- `,A)}while(a!==-1);return c+=r.slice(A),c}var Mg=(r=0)=>e=>`\x1B[${e+r}m`,Al=(r=0)=>e=>`\x1B[${38+r};5;${e}m`,ll=(r=0)=>(e,i,a)=>`\x1B[${38+r};2;${e};${i};${a}m`,W2=r=>`\x1B[58;5;${r<90?r-30:r-90+8}m`,rt={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],underlineDouble:["4:2",24],underlineCurly:["4:3",24],underlineDotted:["4:4",24],underlineDashed:["4:5",24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]},underlineColor:{underlineBlack:["58;5;0",59],underlineRed:["58;5;1",59],underlineGreen:["58;5;2",59],underlineYellow:["58;5;3",59],underlineBlue:["58;5;4",59],underlineMagenta:["58;5;5",59],underlineCyan:["58;5;6",59],underlineWhite:["58;5;7",59],underlineBlackBright:["58;5;8",59],underlineGray:["58;5;8",59],underlineGrey:["58;5;8",59],underlineRedBright:["58;5;9",59],underlineGreenBright:["58;5;10",59],underlineYellowBright:["58;5;11",59],underlineBlueBright:["58;5;12",59],underlineMagentaBright:["58;5;13",59],underlineCyanBright:["58;5;14",59],underlineWhiteBright:["58;5;15",59]}},Mk=Object.keys(rt.modifier),J2=Object.keys(rt.color),V2=Object.keys(rt.bgColor),Uk=Object.keys(rt.underlineColor),kk=[...J2,...V2];function j2(){let r=new Map;for(let[e,i]of Object.entries(rt)){for(let[a,A]of Object.entries(i))rt[a]={open:`\x1B[${A[0]}m`,close:`\x1B[${A[1]}m`},i[a]=rt[a],r.set(Number.parseInt(A[0],10),A[1]);Object.defineProperty(rt,e,{value:i,enumerable:!1})}return Object.defineProperty(rt,"codes",{value:r,enumerable:!1}),rt.color.close="\x1B[39m",rt.bgColor.close="\x1B[49m",rt.underlineColor.close="\x1B[59m",rt.color.ansi=Mg(),rt.color.ansi256=Al(),rt.color.ansi16m=ll(),rt.bgColor.ansi=Mg(10),rt.bgColor.ansi256=Al(10),rt.bgColor.ansi16m=ll(10),rt.underlineColor.ansi=W2,rt.underlineColor.ansi256=Al(20),rt.underlineColor.ansi16m=ll(20),Object.defineProperties(rt,{rgbToAnsi256:{value(e,i,a){return e===i&&i===a?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(i/255*5)+Math.round(a/255*5)},enumerable:!1},hexToRgb:{value(e){let i=/[\da-f]{6}|[\da-f]{3}/i.exec(e.toString(16));if(!i)return[0,0,0];let[a]=i;a.length===3&&(a=[...a].map(c=>c+c).join(""));let A=Number.parseInt(a,16);return[A>>16&255,A>>8&255,A&255]},enumerable:!1},hexToAnsi256:{value:e=>rt.rgbToAnsi256(...rt.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let i,a,A;if(e>=232)i=((e-232)*10+8)/255,a=i,A=i;else{e-=16;let f=e%36;i=Math.floor(e/36)/5,a=Math.floor(f/6)/5,A=f%6/5}let c=Math.max(i,a,A)*2;if(c===0)return 30;let u=30+(Math.round(A)<<2|Math.round(a)<<1|Math.round(i));return c===2&&(u+=60),u},enumerable:!1},rgbToAnsi:{value:(e,i,a)=>rt.ansi256ToAnsi(rt.rgbToAnsi256(e,i,a)),enumerable:!1},hexToAnsi:{value:e=>rt.ansi256ToAnsi(rt.hexToAnsi256(e)),enumerable:!1}}),rt}var _2=j2(),Qr=_2;import cl from"node:process";import Z2 from"node:os";import Ug from"node:tty";function $t(r,e=globalThis.Deno?globalThis.Deno.args:cl.argv){let i=r.startsWith("-")?"":r.length===1?"-":"--",a=e.indexOf(i+r),A=e.indexOf("--");return a!==-1&&(A===-1||a<A)}var{env:ct}=cl,da;$t("no-color")||$t("no-colors")||$t("color=false")||$t("color=never")?da=0:($t("color")||$t("colors")||$t("color=true")||$t("color=always"))&&(da=1);function Yg(){return/^\d+$/.test(ct.FORCE_COLOR)}function X2(){if("FORCE_COLOR"in ct){if(ct.FORCE_COLOR==="false")return 0;if(ct.FORCE_COLOR==="true"||ct.FORCE_COLOR.length===0)return 1;if(Yg())return Math.min(Number.parseInt(ct.FORCE_COLOR,10),3)}}function z2(r){return r===0?!1:{level:r,hasBasic:!0,has256:r>=2,has16m:r>=3}}function q2(r,{streamIsTTY:e,sniffFlags:i=!0}={}){let a=X2();a!==void 0&&(da=a);let A=i?da:a;if(A===0)return 0;if(i){if($t("color=16m")||$t("color=full")||$t("color=truecolor"))return 3;if($t("color=256"))return 2}if(A!==void 0&&Yg())return A;if("TF_BUILD"in ct&&"AGENT_NAME"in ct)return 1;if(r&&!e&&A===void 0)return 0;let c=A||0;if(ct.TERM==="dumb")return c;if(cl.platform==="win32"){let u=Z2.release().split(".");return Number(u[0])>=10&&Number(u[2])>=10586?Number(u[2])>=14931?3:2:1}if("CI"in ct)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(u=>u in ct)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(u=>u in ct)||ct.CI_NAME==="codeship"?1:c;if("TEAMCITY_VERSION"in ct)return/^(?:9\.0*[1-9]\d*\.|\d{2,}\.)/.test(ct.TEAMCITY_VERSION)?1:0;if(ct.COLORTERM==="truecolor"||ct.TERM==="xterm-kitty"||ct.TERM==="xterm-ghostty"||ct.TERM==="wezterm")return 3;if("TERM_PROGRAM"in ct){let u=Number.parseInt((ct.TERM_PROGRAM_VERSION||"").split(".",1)[0],10);switch(ct.TERM_PROGRAM){case"iTerm.app":return u>=3?3:2;case"Apple_Terminal":return 2}}return/-256(?:color)?$/i.test(ct.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ct.TERM)||"COLORTERM"in ct?1:c}function kg(r,e={}){let i=q2(r,{streamIsTTY:r&&r.isTTY,...e});return z2(i)}var K2={stdout:kg({isTTY:Ug.isatty(1)}),stderr:kg({isTTY:Ug.isatty(2)})},Og=K2;var{stdout:Ng,stderr:Rg}=Og,_n=Symbol("GENERATOR"),Zn=Symbol("STYLER"),ma=Symbol("IS_EMPTY"),ga=Symbol("LEVEL"),Xn=Object.create(null),Gg=r=>{if(!Number.isSafeInteger(r)||r<0||r>3)throw new Error("The `level` should be an integer from 0 to 3")},$2={enumerable:!0,get(){return this[ga]},set(r){Gg(r),this[ga]=r}},eI=(r,e={})=>{e.level!==void 0&&Gg(e.level);let i=Ng?Ng.level:0;r[ga]=e.level===void 0?i:e.level};var tI=r=>{let e=(...i)=>i.join(" ");return eI(e,r),Object.setPrototypeOf(e,zn.prototype),e};function zn(r){return tI(r)}Object.setPrototypeOf(zn.prototype,Function.prototype);for(let[r,e]of Object.entries(Qr))Xn[r]={get(){let i=hl(this,Lg(e.open,e.close,this[Zn]),this[ma]);return Object.defineProperty(this,r,{value:i}),i}};Xn.visible={get(){let r=hl(this,this[Zn],!0);return Object.defineProperty(this,"visible",{value:r}),r}};var rI=(r,e)=>{let i=Qr[e];if(r==="rgb"){let A=(u,f,p)=>i.ansi(Qr.rgbToAnsi(u,f,p));return[A,A,(u,f,p)=>i.ansi256(Qr.rgbToAnsi256(u,f,p)),i.ansi16m]}if(r==="hex"){let A=u=>i.ansi(Qr.hexToAnsi(u));return[A,A,u=>i.ansi256(Qr.hexToAnsi256(u)),u=>i.ansi16m(...Qr.hexToRgb(u))]}let a=A=>i.ansi(Qr.ansi256ToAnsi(A));return[a,a,i.ansi256,i.ansi256]},iI=["rgb","hex","ansi256"];for(let r of iI){let e=r[0].toUpperCase()+r.slice(1);for(let[i,a]of[[r,"color"],["bg"+e,"bgColor"],["underline"+e,"underlineColor"]]){let{close:A}=Qr[a],c=rI(r,a);Xn[i]={get(){let u=function(f,p,g){let m=c[this.level](f,p,g);return hl(this,Lg(m,A,this[Zn]),this[ma])};return Object.defineProperty(this,i,{value:u}),u}}}}var nI=Object.defineProperties(()=>{},{...Xn,level:{enumerable:!0,get(){return this[_n].level},set(r){this[_n].level=r}}}),Lg=(r,e,i)=>{let a,A;return i===void 0?(a=r,A=e):(a=i.openAll+r,A=e+i.closeAll),{open:r,close:e,openAll:a,closeAll:A,parent:i}},hl=(r,e,i)=>{let a=(...A)=>A.length===1?ul(a,""+A[0]):A.length===2?ul(a,`${A[0]??""} ${A[1]??""}`):ul(a,A.join(" "));return Object.setPrototypeOf(a,nI),a[_n]=r[_n]??r,a[Zn]=e,a[ma]=i,a},ul=(r,e)=>{if(r[_n][ga]<=0||!e)return r[ma]?"":e;let i=r[Zn];if(i===void 0)return e;let{openAll:a,closeAll:A}=i;if(e.includes("\x1B"))for(;i!==void 0;)e=Sg(e,i.close,i.open),i=i.parent;let c=e.indexOf(`
1139
- `);return c!==-1&&(e=Dg(e,A,a,c)),a+e+A};Object.defineProperties(zn.prototype,{...Xn,level:$2});var sI=zn(),Wk=zn({level:Rg?Rg.level:0});var Ba=sI;import{readdir as aI,stat as jk}from"node:fs/promises";async function Pg(r){return(await aI(r)).length===0}var Hg="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BxAAVAZgAH8GYwBzBCoAXAcDAJgFBwCABYwAjAVwAHUF5f21BTMAYQhRAFsFygA/BRX//QWMAFwDAwCuBGYAawMDALIEpgCyBQT/3QRzAHAEGAAxBL8AiAQcAF8EswBaBGIAWQQRAFUEP//dBJ8AkQI+ALUDOv+nBFIAogIxAKwGNwBwBDAAggQ1AFIERwB6BCkAQgPYAIID5QAmA8UAPwQpAGgD5AAiBXkAPgS5ACcEKv/YBE4AegLuAAADXwFiAu4ABgTIAFQCZAAAAecAYAT8AH0GWQAnBOUAOQUWAHADPAFOBRQAcgRzAN4GXQBjBDcAgwSfABQD2AAwA1UAcAZdAGMFBP/dA0YARAPYAEcFNQFVBTUBmgRzAMEEKQAABY0AQAH+AI8EcwFoBTUBdwQ1AC8En//7BTUAoAU1AKAFNQCgBDEATgXaAGgF2gBoBdoAaAXaAGgF2gBoBdoAaAiyAAkE0gBMBP8AogT/AKIE/wCiBP8AogRfAEMEXwBDBF8AQwRfAEMFxv/RBmAAfwZjAHMGYwBzBmMAcwZjAHMGYwBzA9gAMQZjACkF5f21BeX9tQXl/bUF5f21BRX//QQqAGADjAAuBBgAMQQYADEEGAAxBBgAMQQYADEEGAAxB0sAPwQcAF8EYgBZBGIAWQRiAFkEYgBZAj7/6AI+AGcCPv+CAj7/wAQSAFYEMAB4BDUAUgQ1AFIENQBSBDUAUgQ1AFID2AAyBDUAFgQpAGgEKQBoBCkAaAQpAGgEKv/YBEcAkgQq/9gF2gBoBBgAMQXaAGgEGAAxBdoAaAQYADEE0gBMBBwAXwTSAEwEHABfBNIATAQcAF8E0gBMBBwAXwXGALUGogBaBcb/0QTSAFoE/wCiBGIAWQT/AKIEYgBZBP8AogRiAFkE/wCiBGIAWQT/AKIEYgBZBXAATAQ//90FcABMBD//3QVwAEwEP//dBXAATAQ//90GJQCcBJ8AkQYl/9wEn//+BF8AQwI+/1wEXwBDAj7/2wRfAEMCPv9kBF8AQwI+/9QEXwBDAj4AtQkDAEMEPgCkBVIARQM6/7kE4wDSBFIAogRSAIAEaABmAjEArARoAGYCMQBjBGgAZgO3AKwEaABmAykArARo/14B0f+GBmAAfwQwAIIGYAB/BDAAggZgAH8EMACCBPgATgZgAH8EMACCBmMAcwQ1AFIGYwBzBDUAUgZjAHMENQBSCY0AgwctAFIFBwCAA9gAggUHAIAD2AA/BQcAgAPYAIIFjACMA+UAJgWMAIwD5QAmBYwAjAPlACYFjACMA+UAJgVwAHUDxQA/BXAAdQUdAD8FcAAkA8UAPwXl/bUEKQBNBeX9tQQpAGgF5f21BCkAVQXl/bUEKQBoBeX9tQQpAGgF5f21BCkAaAhRAFsFeQA+BRX//QQq/9gFFf/9BYwAXAROAHoFjABcBE4AegWMAFwETgB6BBEBPgNq/4cF2gBnBBgAPwiyAAkHSwA/BmMAKQQ1ABYFjACMA+UAJgVwAHUDxQA/Azr/uQSmALIEcwDzBHMBGARzAKoEcwE3BHMA+gRzAQcEcwCkBHMAtARzAdIEcwB8BdoAaAH+AI4GUACPB90AwwYNAEkHAwBkBs0AMQeuAEUCPv9nBdoAaAULAMEE7gC4BlsAQwT/AKIFjABcBiUAnAZjAHMEXwBDBOMA0gWE//MHEABUBmAAfwXDAFwGYwBzB0QAaQQqAFwF+gCGBXAAdQUV//0FGwBeBcoAPwVkACUHrgA/BF8AQwUV//0EQwAxA+8AlAQwAIICPgC0BCkATgRDADEEsQBtA+QAIgQ1AFID7wCUBBwAAAQwAIIE4gBBAj4AtQRSAHoD5AAnBCkAbwPkACIEHP/1BDUAUgUGABAENQAfBBwAAgQ1AFIDxQBCBCkATgTsAFUEuQAnBK8AKwYVACwCPv/ABCkATgQ1AFIEKQBOBhUALAT/AKIGzQAqBO4AuATSAE0FjACMBF8AQwRfAEMFUgBFCAAAEgfRACwGxgAqBREAqAUV//oF1gBwBdoAaATWALAFCwDBBO4AuAYlAF4E/wCiBuD/+gTPADwF+wCEBfsAhAURAKgF6QAKBxAAVAYlAJwGYwBzB0QAaQQqAFwE0gBMBXAAdQUV//oFGwBeBcoAPwYwAHAE8ABwB0AAcAeoAHAGFAAmCJoAsATWALAFPABzCQsAnAUHAEYEGAAxBDUAOwQIAIADwwCGBL4AIgRiAFkFdgAiA4QAPgUYAGIFGABiA/AAlAUtAAoF4AASBHoATwS7AFIFLQDaBEcAegQcAF8DxQA/BCr/2AZ7AEgEuQAnBPMArwRFAEwGLQB0BlgAdAT4ABQGUwCHA+8AhwQbAF4HOABLBAv/8ARiAFkEe/+4A8MAhgQbAE8D5QAmAj4AtQI+/8ADOv+nBx4ADAYxAFsEn/+4A/AAlAQq/9gE8wCKBO4AuAPDAIYIUQBbBXkAPghRAFsFeQA+CFEAWwV5AD4FFf/9BCr/2AOIAC0HEABEBxAARAUE/90BcQA2AXEANgJkADYDJgBPAyYAfwNLADYExgA3BMYAOwMZALoFZwCqCe4AnQFxACQCpgAkAw0AFAMNAFUDmQBsBOL/ZAZ9//kENwDOB+oAqgZZAGwJgwBcBOL/2AaQAFID6f/yCUIAfwlQACYHEABOB64APwRlADsFNQCgBTUAoAU1AKAFNQCgBBIAcQZbAEMHRABpBfoAhgPYADIE3AAMBrIAjwWZADgE9QB0BBUAWgMNABQDDQAhBav/6QWrAoIFqwJ+Bav/6wWrAn4Fq//oBeABbAUkAYIFJAFyBccAOAUkAXoFJAFlBAAAHAVFAEwFPwBMBAAAgANVAHAB/gCNAxsBEAMbAU0DGwFNAj4AtQU1APYCZABKBTUBcAABAAACTwDEAAcAcgAFAAIAHgBFAI0AAACKDgwABAABAAAAJgHOAAMAAQQDAAIADAAAAAMAAQQFAAIAEAAMAAMAAQQGAAIADAAcAAMAAQQHAAIAEAAoAAMAAQQIAAIAEAA4AAMAAQQJAAAA1ABIAAMAAQQJAAEAGAEcAAMAAQQJAAIADgE0AAMAAQQJAAMAOAFCAAMAAQQJAAQAKAF6AAMAAQQJAAUAcAGiAAMAAQQJAAYAJgISAAMAAQQJAAgAEgI4AAMAAQQJAAkAFAJKAAMAAQQJAAoBOAJeAAMAAQQJAAsAUgOWAAMAAQQJAAwAUgOWAAMAAQQJAA0BIgPoAAMAAQQJAA4ANgUKAAMAAQQKAAIADAAAAAMAAQQLAAIAEAVAAAMAAQQMAAIADAAAAAMAAQQOAAIADAVQAAMAAQQQAAIADgVcAAMAAQQTAAIAEgVqAAMAAQQUAAIADAAAAAMAAQQVAAIAEAV8AAMAAQQWAAIADAAAAAMAAQQZAAIADgWMAAMAAQQbAAIAEAWaAAMAAQQdAAIADAAAAAMAAQQfAAIADAAAAAMAAQQkAAIADgWqAAMAAQQtAAIADgW4AAMAAQgKAAIADAAAAAMAAQgWAAIADAAAAAMAAQwKAAIADAAAAAMAAQwMAAIADAAAAE4AbwByAG0AYQBsAG8AYgB5AQ0AZQBqAG4A6QBuAG8AcgBtAGEAbABTAHQAYQBuAGQAYQByAGQDmgOxA70DvwO9A7kDugOsAEMAbwBwAHkAcgBpAGcAaAB0ACAAMgAwADEAMwAgAEoAZQBmAGYAIABEAGEAdgBpAHMAIAAoAGgAdAB0AHAAcwA6AC8ALwBnAGkAdABoAHUAYgAuAGMAbwBtAC8AbABvAHUAZABpAGYAaQBlAHIALwBDAG8AbQBpAGMALQBSAGUAbABpAGUAZgApACAAdwBpAHQAaAAgAFIAZQBzAGUAcgB2AGUAZAAgAEYAbwBuAHQAIABOAGEAbQBlACAAQwBvAG0AaQBjACAAUgBlAGwAaQBlAGYAQwBvAG0AaQBjACAAUgBlAGwAaQBlAGYAUgBlAGcAdQBsAGEAcgAxAC4AMQA7AEwATwBVAEQAOwBDAG8AbQBpAGMAUgBlAGwAaQBlAGYALQBSAGUAZwB1AGwAYQByAEMAbwBtAGkAYwAgAFIAZQBsAGkAZQBmACAAUgBlAGcAdQBsAGEAcgBWAGUAcgBzAGkAbwBuACAAMQAuADEAOwAgAHQAdABmAGEAdQB0AG8AaABpAG4AdAAgACgAdgAxAC4AOAAuADQALgA3AC0ANQBkADUAYgApADsAZwBmAHQAbwBvAGwAcwBbADAALgA5AC4AMwAyAF0AQwBvAG0AaQBjAFIAZQBsAGkAZQBmAC0AUgBlAGcAdQBsAGEAcgBMAG8AdQBkAGkAZgBpAGUAcgBKAGUAZgBmACAARABhAHYAaQBzAEMAbwBtAGkAYwAgAFIAZQBsAGkAZQBmACAAaQBzACAAYQAgAHQAeQBwAGUAZgBhAGMAZQAgAGQAZQBzAGkAZwBuAGUAZAAgAHQAbwAgAGIAZQAgAG0AZQB0AHIAaQBjAGEAbABsAHkAIABlAHEAdQBpAHYAYQBsAGUAbgB0ACAAdABvACAAdABoAGUAIABwAG8AcAB1AGwAYQByACAAQwBvAG0AaQBjACAAUwBhAG4AcwAgAE0AUwAuACAARwBvACAAdABvACAAaAB0AHQAcABzADoALwAvAGcAaQB0AGgAdQBiAC4AYwBvAG0ALwBsAG8AdQBkAGkAZgBpAGUAcgAvAEMAbwBtAGkAYwAtAFIAZQBsAGkAZQBmACAAZgBvAHIAIABtAG8AcgBlACAAaQBuAGYAbwAuAGgAdAB0AHAAcwA6AC8ALwBnAGkAdABoAHUAYgAuAGMAbwBtAC8AbABvAHUAZABpAGYAaQBlAHIALwBDAG8AbQBpAGMALQBSAGUAbABpAGUAZgBUAGgAaQBzACAARgBvAG4AdAAgAFMAbwBmAHQAdwBhAHIAZQAgAGkAcwAgAGwAaQBjAGUAbgBzAGUAZAAgAHUAbgBkAGUAcgAgAHQAaABlACAAUwBJAEwAIABPAHAAZQBuACAARgBvAG4AdAAgAEwAaQBjAGUAbgBzAGUALAAgAFYAZQByAHMAaQBvAG4AIAAxAC4AMQAuACAAVABoAGkAcwAgAGwAaQBjAGUAbgBzAGUAIABpAHMAIABhAHYAYQBpAGwAYQBiAGwAZQAgAHcAaQB0AGgAIABhACAARgBBAFEAIABhAHQAOgAgAGgAdAB0AHAAcwA6AC8ALwBzAGMAcgBpAHAAdABzAC4AcwBpAGwALgBvAHIAZwAvAE8ARgBMAGgAdAB0AHAAcwA6AC8ALwBzAGMAcgBpAHAAdABzAC4AcwBpAGwALgBvAHIAZwAvAE8ARgBMAE4AbwByAG0AYQBhAGwAaQBOAG8AcgBtAOEAbABOAG8AcgBtAGEAbABlAFMAdABhAG4AZABhAGEAcgBkAE4AbwByAG0AYQBsAG4AeQQeBDEESwRHBD0ESwQ5AE4AbwByAG0A4QBsAG4AZQBOAGEAdgBhAGQAbgBvAEEAcgByAHUAbgB0AGEAAgAAAAAAAP+fAK8AAAAAAAAAAAAAAAAAAAAAAAAAAAJPAAABAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgAKQAqACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/AEAAQQBCAEMARABFAEYARwBIAEkASgBLAEwATQBOAE8AUABRAFIAUwBUAFUAVgBXAFgAWQBaAFsAXABdAF4AXwBgAGEArACjAIQAhQC9AJYA6ACGAI4AiwCdAKkApAEDAIoBBACDAJMA8gDzAI0BBQCIAMMA3gDxAJ4AqgD1APQA9gCiAK0AyQDHAK4AYgBjAJAAZADLAGUAyADKAM8AzADNAM4A6QBmANMA0ADRAK8AZwDwAJEA1gDUANUAaADrAO0AiQBqAGkAawBtAGwAbgCgAG8AcQBwAHIAcwB1AHQAdgB3AOoAeAB6AHkAewB9AHwAuAChAH8AfgCAAIEA7ADuALoBBgEHAQgBCQEKAQsA/QD+AQwBDQEOAQ8A/wEAARABEQESAQEBEwEUARUBFgEXARgBGQEaARsBHAEdAR4A+AD5AR8BIAEhASIBIwEkASUBJgEnASgBKQEqASsBLAEtAS4A+gDXAS8BMAExATIBMwE0ATUBNgE3ATgBOQE6ATsBPAE9AOIA4wE+AT8BQAFBAUIBQwFEAUUBRgFHAUgBSQFKAUsBTACwALEBTQFOAU8BUAFRAVIBUwFUAVUBVgD7APwA5ADlAVcBWAFZAVoBWwFcAV0BXgFfAWABYQFiAWMBZAFlAWYBZwFoAWkBagFrAWwAuwFtAW4BbwFwAOYA5wFxAKYBcgFzAXQBdQF2AXcBeAF5AXoBewF8ANgA4QDaANsA3ADdAOAA2QDfAX0BfgF/AYABgQGCAYMBhAGFAYYBhwGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4AnwGfAaABoQGiAaMBpAGlAaYBpwGoAakBqgGrAawBrQGuAa8BsACXAbEBsgGzAJsBtAG1AbYBtwG4AbkBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgHHAcgByQHKAcsBzAHNAc4BzwHQAdEB0gHTAdQB1QHWAdcB2AHZAdoB2wHcAd0B3gHfAeAB4QHiAeMB5AHlAeYB5wHoAekB6gHrAewB7QHuAe8B8AHxAfIB8wH0AfUB9gH3AfgB+QH6AfsB/AH9Af4B/wIAAgECAgIDAgQCBQIGAgcCCAIJAgoCCwIMAg0CDgIPAhACEQISAhMCFAIVAhYCFwIYAhkCGgIbAhwCHQIeAh8CIAIhAiICIwIkAiUCJgInALIAswIoAikAtgC3AMQAtAC1AMUAggDCAIcAqwDGAioCKwC+AL8CLAItALwCLgD3Ai8CMAIxAjICMwI0AjUAjAI2AjcCOAI5AjoCOwCYAKgAmgCZAO8ApQCSAJwApwCPAJQAlQI8Aj0CPgI/AkACQQJCAkMCRAC5AkUCRgJHAMAAwQJIAkkCSgJLAkwCTQJOAk8CUAJRBmdseXBoMgtoeXBoZW5taW51cwlvdmVyc2NvcmUDbXUxB0FtYWNyb24HYW1hY3JvbgZBYnJldmUGYWJyZXZlB0FvZ29uZWsHYW9nb25lawtDY2lyY3VtZmxleAtjY2lyY3VtZmxleARDZG90BGNkb3QGRGNhcm9uBmRjYXJvbgZEc2xhc2gHRW1hY3JvbgdlbWFjcm9uBkVicmV2ZQZlYnJldmUERWRvdARlZG90B0VvZ29uZWsHZW9nb25lawZFY2Fyb24GZWNhcm9uC0djaXJjdW1mbGV4C2djaXJjdW1mbGV4BEdkb3QEZ2RvdAhHY2VkaWxsYQhnY2VkaWxsYQtIY2lyY3VtZmxleAtoY2lyY3VtZmxleARIYmFyBGhiYXIGSXRpbGRlBml0aWxkZQdJbWFjcm9uB2ltYWNyb24GSWJyZXZlBmlicmV2ZQdJb2dvbmVrB2lvZ29uZWsCSUoCaWoLSmNpcmN1bWZsZXgLamNpcmN1bWZsZXgIS2NlZGlsbGEIa2NlZGlsbGEMa2dyZWVubGFuZGljBkxhY3V0ZQZsYWN1dGUITGNlZGlsbGEIbGNlZGlsbGEGTGNhcm9uBmxjYXJvbgRMZG90BGxkb3QGTmFjdXRlBm5hY3V0ZQhOY2VkaWxsYQhuY2VkaWxsYQZOY2Fyb24GbmNhcm9uC25hcG9zdHJvcGhlA0VuZwNlbmcHT21hY3JvbgdvbWFjcm9uBk9icmV2ZQZvYnJldmUJT2RibGFjdXRlCW9kYmxhY3V0ZQZSYWN1dGUGcmFjdXRlCFJjZWRpbGxhCHJjZWRpbGxhBlJjYXJvbgZyY2Fyb24GU2FjdXRlBnNhY3V0ZQtTY2lyY3VtZmxleAtzY2lyY3VtZmxleAhUY2VkaWxsYQh0Y2VkaWxsYQZUY2Fyb24GdGNhcm9uBFRiYXIEdGJhcgZVdGlsZGUGdXRpbGRlB1VtYWNyb24HdW1hY3JvbgZVYnJldmUGdWJyZXZlBVVyaW5nBXVyaW5nCVVkYmxhY3V0ZQl1ZGJsYWN1dGUHVW9nb25lawd1b2dvbmVrC1djaXJjdW1mbGV4C3djaXJjdW1mbGV4C1ljaXJjdW1mbGV4C3ljaXJjdW1mbGV4BlphY3V0ZQZ6YWN1dGUEWmRvdAR6ZG90BWxvbmdzCkFyaW5nYWN1dGUKYXJpbmdhY3V0ZQdBRWFjdXRlB2FlYWN1dGULT3NsYXNoYWN1dGULb3NsYXNoYWN1dGUMU2NvbW1hYWNjZW50DHNjb21tYWFjY2VudAxUY29tbWFhY2NlbnQMdGNvbW1hYWNjZW50B3VuaTAyMzcFdG9ub3MNZGllcmVzaXN0b25vcwpBbHBoYXRvbm9zCWFub3RlbGVpYQxFcHNpbG9udG9ub3MIRXRhdG9ub3MJSW90YXRvbm9zDE9taWNyb250b25vcwxVcHNpbG9udG9ub3MKT21lZ2F0b25vcxFpb3RhZGllcmVzaXN0b25vcwVBbHBoYQRCZXRhBUdhbW1hB3VuaTAzOTQHRXBzaWxvbgRaZXRhA0V0YQVUaGV0YQRJb3RhBUthcHBhBkxhbWJkYQJNdQJOdQJYaQdPbWljcm9uAlBpA1JobwVTaWdtYQNUYXUHVXBzaWxvbgNQaGkDQ2hpA1BzaQxJb3RhZGllcmVzaXMPVXBzaWxvbmRpZXJlc2lzCmFscGhhdG9ub3MMZXBzaWxvbnRvbm9zCGV0YXRvbm9zCWlvdGF0b25vcxR1cHNpbG9uZGllcmVzaXN0b25vcwVhbHBoYQRiZXRhBWdhbW1hBWRlbHRhB2Vwc2lsb24EemV0YQNldGEFdGhldGEEaW90YQVrYXBwYQZsYW1iZGECbnUCeGkHb21pY3JvbgNyaG8Gc2lnbWExBXNpZ21hA3RhdQd1cHNpbG9uA3BoaQNjaGkDcHNpBW9tZWdhDGlvdGFkaWVyZXNpcw91cHNpbG9uZGllcmVzaXMMb21pY3JvbnRvbm9zDHVwc2lsb250b25vcwpvbWVnYXRvbm9zCWFmaWkxMDAyMwlhZmlpMTAwNTEJYWZpaTEwMDUyCWFmaWkxMDA1MwlhZmlpMTAwNTQJYWZpaTEwMDU1CWFmaWkxMDA1NglhZmlpMTAwNTcJYWZpaTEwMDU4CWFmaWkxMDA1OQlhZmlpMTAwNjAJYWZpaTEwMDYxCWFmaWkxMDA2MglhZmlpMTAxNDUJYWZpaTEwMDE3CWFmaWkxMDAxOAlhZmlpMTAwMTkJYWZpaTEwMDIwCWFmaWkxMDAyMQlhZmlpMTAwMjIJYWZpaTEwMDI0CWFmaWkxMDAyNQlhZmlpMTAwMjYJYWZpaTEwMDI3CWFmaWkxMDAyOAlhZmlpMTAwMjkJYWZpaTEwMDMwCWFmaWkxMDAzMQlhZmlpMTAwMzIJYWZpaTEwMDMzCWFmaWkxMDAzNAlhZmlpMTAwMzUJYWZpaTEwMDM2CWFmaWkxMDAzNwlhZmlpMTAwMzgJYWZpaTEwMDM5CWFmaWkxMDA0MAlhZmlpMTAwNDEJYWZpaTEwMDQyCWFmaWkxMDA0MwlhZmlpMTAwNDQJYWZpaTEwMDQ1CWFmaWkxMDA0NglhZmlpMTAwNDcJYWZpaTEwMDQ4CWFmaWkxMDA0OQlhZmlpMTAwNjUJYWZpaTEwMDY2CWFmaWkxMDA2NwlhZmlpMTAwNjgJYWZpaTEwMDY5CWFmaWkxMDA3MAlhZmlpMTAwNzIJYWZpaTEwMDczCWFmaWkxMDA3NAlhZmlpMTAwNzUJYWZpaTEwMDc2CWFmaWkxMDA3NwlhZmlpMTAwNzgJYWZpaTEwMDc5CWFmaWkxMDA4MAlhZmlpMTAwODEJYWZpaTEwMDgyCWFmaWkxMDA4MwlhZmlpMTAwODQJYWZpaTEwMDg1CWFmaWkxMDA4NglhZmlpMTAwODcJYWZpaTEwMDg4CWFmaWkxMDA4OQlhZmlpMTAwOTAJYWZpaTEwMDkxCWFmaWkxMDA5MglhZmlpMTAwOTMJYWZpaTEwMDk0CWFmaWkxMDA5NQlhZmlpMTAwOTYJYWZpaTEwMDk3CWFmaWkxMDA3MQlhZmlpMTAwOTkJYWZpaTEwMTAwCWFmaWkxMDEwMQlhZmlpMTAxMDIJYWZpaTEwMTAzCWFmaWkxMDEwNAlhZmlpMTAxMDUJYWZpaTEwMTA2CWFmaWkxMDEwNwlhZmlpMTAxMDgJYWZpaTEwMTA5CWFmaWkxMDExMAlhZmlpMTAxOTMJYWZpaTEwMDUwCWFmaWkxMDA5OAZXZ3JhdmUGd2dyYXZlBldhY3V0ZQZ3YWN1dGUJV2RpZXJlc2lzCXdkaWVyZXNpcwZZZ3JhdmUGeWdyYXZlCWFmaWkwMDIwOA11bmRlcnNjb3JlZGJsBm1pbnV0ZQZzZWNvbmQJZXhjbGFtZGJsCXJhZGljYWxleAluc3VwZXJpb3IJYWZpaTA4OTQxBnBlc2V0YQRFdXJvCWFmaWk2MTI0OAlhZmlpNjEyODkJYWZpaTYxMzUyB3VuaTIxMjADT2htCWVzdGltYXRlZAlvbmVlaWdodGgMdGhyZWVlaWdodGhzC2ZpdmVlaWdodGhzDHNldmVuZWlnaHRocwd1bmkyNTAwB3VuaTI1MDIHdW5pMjUwQwd1bmkyNTEwB3VuaTI1MTQHdW5pMjUxOAZIMjIwNzMGSDE4NTQzBkgxODU1MQZIMTg1MzMKb3BlbmJ1bGxldAd1bmkyNjZBBmdseXBoMAlzZnRoeXBoZW4GbWlkZG90BXVGMDAzBXVGMDA0BXVGMDA1DGRvdHRlZGlhY3V0ZQpOYW1lTWUuNTkxCk5hbWVNZS4zMzkKTmFtZU1lLjU1OQBLuADIUlixAQGOWbABuQgACABjcLEAB0K1AD4uHgQAKrEAB0JACkMEMwgjCBUHBAoqsQAHQkAKRwI7BisGHAUECiqxAAtCvREADQAJAAWAAAQACyqxAA9CvQBAAEAAQABAAAQACyq5AAMAAESxJAGIUViwQIhYuQADAGREsSgBiFFYuAgAiFi5AAMAAERZG7EnAYhRWLoIgAABBECIY1RYuQADAABEWVlZWVlACkUCNQYlBhcFBA4quAH/hbAEjbECAESzBWQGAEREAA==";var Ll=bn(Nm(),1),Ma=bn(C0(),1),S0=bn(Q0(),1);import{Buffer as T0}from"node:buffer";var pT=Ba.bold.red,dT=Ba.bold.yellow,gT=Ba.bold.green,Ia="Mojang Mappings",Pl="Generate Unique Mod Icon",Fa="Kotlin Programming Language",Ta="Data Generation",Sa="Split client and common sources",Da="Gradle Kotlin DSL",va=new Map([["kotlin",Fa],["datagen",Ta],["splitSources",Sa],["mojangMappings",Ia],["gradleKotlin",Da]]);function D0(){return new Gi().name("init").description("Generate a new fabric project").option("-y, --defaultOptions","Use defaults for options that are not specified").option("--allow-non-empty-dir","Allow generating into a directory that already contains files. Existing files with the same path will be overwritten").addOption(new Li("-n, --name <name>","The name of the mod")).addOption(new Li("-m, --modid <modid>","The modid of the mod")).addOption(new Li("-p, --packageName <packageName>","The package name of the mod")).addOption(new Li("-v, --version <version>","The minecraft version")).addOption(new Li("-o, --option <advancedOption>","Specify an advanced option, one of: "+Array.from(va.keys()).join(", ")).argParser((r,e=[])=>[...e,r]).hideHelp()).argument("[dir]","The output directory").action(async(r,e)=>{await ET(e,r)})}Nu(r=>new tn({parseTagValue:!1,isArray:i=>i==="version"}).parse(r).metadata.versioning.versions.version);var Hl=Ma.registerFont("",Pi),mT=Uint8Array.from(T0.from(Hg,"base64"));Hl.font=S0.parse(mT.buffer);Hl.loaded=!0;function BT(r,e){return{config:e,writer:{write:async(i,a,A)=>{await bT(r,i,a,A)}},canvas:{create(i,a){let A=Ma.make(i,a);return{getContext:c=>A.getContext(c),getPng:()=>{let c=new Ll.PNG({width:A.width,height:A.height});return c.data=T0.from(A.data),Uint8Array.from(Ll.PNG.sync.write(c)).buffer},measureText(c,u){let f=Hl.font,p=c._font.size,g=0,m=0,E=0,b=f.stringToGlyphs(u);for(let y of b){let Q=y.getMetrics();g+=y.advanceWidth,m=Math.max(m,Q.yMax),E=Math.min(E,Q.yMin)}return{width:g/f.unitsPerEm*p,ascent:Math.abs(m/f.unitsPerEm*p),descent:Math.abs(E/f.unitsPerEm*p)}}}}}}}async function ET(r,e){let i=await wT(e);r.allowNonEmptyDir||await Pg(i)||cn("The target directory must be empty (use --allow-non-empty-dir to generate into it anyway)");let a=await yT(Jr.basename(i),r);console.log(dT("Generating mod template...")),await Fh(BT(i,a)),console.log(gT("Done!"))}async function wT(r){if(r==null)return Jr.resolve(uT());let e=Jr.resolve(r);return await F0(e,{recursive:!0}),e}async function yT(r,e){let i=So();CT(e);let a=e.name??(e.defaultOptions?r:await ts({type:"text",message:"Choose a name",initial:r,validate:E=>E.length>=2||"The name must have at least 2 characters"})),A=e.modid??(e.defaultOptions?Fo(a):await ts({type:"text",message:"Choose a unique modid",initial:Fo(a),validate:E=>{if(E.length<2||E.length>64)return"The modid must have between 2 and 64 characters";let b=Io(E);return b==null?!0:b.join(", ")}})),c=e.packageName??(e.defaultOptions?vn(A):await ts({type:"text",message:"Choose a package name",initial:eh((hT.FABRIC_MOD_GENERATOR_GLOBAL_PACKAGE_PREFIX??"")+A),format:E=>vn(E),validate:E=>{let b=vn(E),y=Js(b);return y.length==0?!0:y.join(", ")}})),u=await i,f;e.version!=null?(f=e.version,u.map(E=>E.version).includes(f)||cn(`The minecraft version ${f} does not exist.`)):e.defaultOptions?f=u.find(E=>E.stable).version:f=await ts({type:"select",message:"Select the minecraft version",choices:u.map(E=>({title:E.version,value:E.version})),initial:Math.max(0,u.findIndex(E=>E.stable))});let p=e.option?.map(E=>(va.has(E)||cn(`Unknown option ${E} must be one of: ${Array.from(va.keys()).join(", ")}`),va.get(E))),g=v0(f).filter(E=>E.selected).map(E=>E.value),m=p??(e.defaultOptions?g:await ts({type:"multiselect",message:"Advanced options",choices:v0(f)}));return{modid:A,minecraftVersion:f,projectName:a,packageName:c,mojmap:Ei(f)||m.includes(Ia),useKotlin:m.includes(Fa),dataGeneration:m.includes(Ta),splitSources:m.includes(Sa),gradleKotlin:m.includes(Da),uniqueModIcon:m.includes(Pl)}}function CT(r){if(r.modid!=null){let e=Io(r.modid);e!=null&&cn(e.join(", "))}if(r.packageName!=null){let e=Js(r.packageName);e.length>0&&cn(e.join(", "))}}async function ts(r){return(await(0,I0.default)({...r,name:"value"},{onCancel:()=>cn("Project generation cancelled")})).value}function v0(r){let e=[];return e.push({title:Pl,value:Pl,selected:!0}),e.push({title:Fa,value:Fa}),Ei(r)||e.push({title:Ia,value:Ia,selected:!0}),Ps(r)&&e.push({title:Ta,value:Ta}),Hs(r)&&e.push({title:Sa,value:Sa,selected:!0}),e.push({title:Da,value:Da}),e}async function bT(r,e,i,a){let A=Jr.join(r,e);await F0(Jr.dirname(A),{recursive:!0}),await cT(A,typeof i=="string"?i:new Uint8Array(i),{mode:a?.executable?484:void 0})}function cn(r){console.error(pT(r)),fT(1)}var xT="1.18-SNAPSHOT",QT={getGameVersions:Ms,getLoaderVersions:Us,getYarnVersions:Uu,getApiVersionForMinecraft:ks,minecraftIsUnobfuscated:Ei};function M0(){return new Gi().name("versions").description("Show the recommended Fabric versions for a Minecraft version").option("--json","Print the recommended versions as JSON").argument("[minecraftVersion]","The Minecraft version").action(async(r,e)=>{let i=await vT(r);console.log(e.json?FT(i):IT(i))})}async function vT(r,e=QT){let[i,a,A]=await Promise.all([e.getGameVersions(),e.getLoaderVersions(),e.getYarnVersions()]),c=i.find(E=>E.stable);if(!c)throw new Error("Could not find a stable Minecraft version.");let u=i[0]?.stable?void 0:i[0],f=r??c.version;TT(f,i,u?.version);let p=a.find(E=>E.stable);if(!p)throw new Error("Could not find a stable Fabric Loader version.");let g=e.minecraftIsUnobfuscated(f),m={minecraft_version:f,loader_version:p.version,loom_version:xT,fabric_api_version:await e.getApiVersionForMinecraft(f)};return g||(m.yarn_mappings=A.find(E=>E.gameVersion===f)?.version??"unknown"),m}function IT(r){let e=[`minecraft_version=${r.minecraft_version}`];return r.yarn_mappings&&e.push(`yarn_mappings=${r.yarn_mappings}`),e.push(`loader_version=${r.loader_version}`),e.push(`loom_version=${r.loom_version}`),e.push(`fabric_api_version=${r.fabric_api_version}`),e.join(`
1140
- `)}function FT(r){return JSON.stringify(r,null,2)}function TT(r,e,i){let a=e.find(A=>A.version===r);if(!a)throw new Error(`Unknown Minecraft version: ${r}`);if(!a.stable&&a.version!==i)throw new Error(`Minecraft version ${r} is not supported. Only stable versions and the latest snapshot are supported.`)}var ST="0.1.488",Ua=new Gi().name("fabric").version(ST).description("A set of command line tools to aid Fabric mod development").action(()=>{Ua.outputHelp()});Ua.addCommand(D0());Ua.addCommand(M0());await Ua.parseAsync();
1137
+ `)+i,A=o+1,o=r.indexOf(`
1138
+ `,A)}while(o!==-1);return c+=r.slice(A),c}var Mg=(r=0)=>e=>`\x1B[${e+r}m`,Al=(r=0)=>e=>`\x1B[${38+r};5;${e}m`,ll=(r=0)=>(e,i,o)=>`\x1B[${38+r};2;${e};${i};${o}m`,W2=r=>`\x1B[58;5;${r<90?r-30:r-90+8}m`,rt={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],underlineDouble:["4:2",24],underlineCurly:["4:3",24],underlineDotted:["4:4",24],underlineDashed:["4:5",24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]},underlineColor:{underlineBlack:["58;5;0",59],underlineRed:["58;5;1",59],underlineGreen:["58;5;2",59],underlineYellow:["58;5;3",59],underlineBlue:["58;5;4",59],underlineMagenta:["58;5;5",59],underlineCyan:["58;5;6",59],underlineWhite:["58;5;7",59],underlineBlackBright:["58;5;8",59],underlineGray:["58;5;8",59],underlineGrey:["58;5;8",59],underlineRedBright:["58;5;9",59],underlineGreenBright:["58;5;10",59],underlineYellowBright:["58;5;11",59],underlineBlueBright:["58;5;12",59],underlineMagentaBright:["58;5;13",59],underlineCyanBright:["58;5;14",59],underlineWhiteBright:["58;5;15",59]}},Mk=Object.keys(rt.modifier),J2=Object.keys(rt.color),V2=Object.keys(rt.bgColor),Uk=Object.keys(rt.underlineColor),kk=[...J2,...V2];function j2(){let r=new Map;for(let[e,i]of Object.entries(rt)){for(let[o,A]of Object.entries(i))rt[o]={open:`\x1B[${A[0]}m`,close:`\x1B[${A[1]}m`},i[o]=rt[o],r.set(Number.parseInt(A[0],10),A[1]);Object.defineProperty(rt,e,{value:i,enumerable:!1})}return Object.defineProperty(rt,"codes",{value:r,enumerable:!1}),rt.color.close="\x1B[39m",rt.bgColor.close="\x1B[49m",rt.underlineColor.close="\x1B[59m",rt.color.ansi=Mg(),rt.color.ansi256=Al(),rt.color.ansi16m=ll(),rt.bgColor.ansi=Mg(10),rt.bgColor.ansi256=Al(10),rt.bgColor.ansi16m=ll(10),rt.underlineColor.ansi=W2,rt.underlineColor.ansi256=Al(20),rt.underlineColor.ansi16m=ll(20),Object.defineProperties(rt,{rgbToAnsi256:{value(e,i,o){return e===i&&i===o?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(i/255*5)+Math.round(o/255*5)},enumerable:!1},hexToRgb:{value(e){let i=/[\da-f]{6}|[\da-f]{3}/i.exec(e.toString(16));if(!i)return[0,0,0];let[o]=i;o.length===3&&(o=[...o].map(c=>c+c).join(""));let A=Number.parseInt(o,16);return[A>>16&255,A>>8&255,A&255]},enumerable:!1},hexToAnsi256:{value:e=>rt.rgbToAnsi256(...rt.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let i,o,A;if(e>=232)i=((e-232)*10+8)/255,o=i,A=i;else{e-=16;let f=e%36;i=Math.floor(e/36)/5,o=Math.floor(f/6)/5,A=f%6/5}let c=Math.max(i,o,A)*2;if(c===0)return 30;let u=30+(Math.round(A)<<2|Math.round(o)<<1|Math.round(i));return c===2&&(u+=60),u},enumerable:!1},rgbToAnsi:{value:(e,i,o)=>rt.ansi256ToAnsi(rt.rgbToAnsi256(e,i,o)),enumerable:!1},hexToAnsi:{value:e=>rt.ansi256ToAnsi(rt.hexToAnsi256(e)),enumerable:!1}}),rt}var _2=j2(),Qr=_2;import cl from"node:process";import Z2 from"node:os";import Ug from"node:tty";function $t(r,e=globalThis.Deno?globalThis.Deno.args:cl.argv){let i=r.startsWith("-")?"":r.length===1?"-":"--",o=e.indexOf(i+r),A=e.indexOf("--");return o!==-1&&(A===-1||o<A)}var{env:ct}=cl,go;$t("no-color")||$t("no-colors")||$t("color=false")||$t("color=never")?go=0:($t("color")||$t("colors")||$t("color=true")||$t("color=always"))&&(go=1);function Yg(){return/^\d+$/.test(ct.FORCE_COLOR)}function X2(){if("FORCE_COLOR"in ct){if(ct.FORCE_COLOR==="false")return 0;if(ct.FORCE_COLOR==="true"||ct.FORCE_COLOR.length===0)return 1;if(Yg())return Math.min(Number.parseInt(ct.FORCE_COLOR,10),3)}}function z2(r){return r===0?!1:{level:r,hasBasic:!0,has256:r>=2,has16m:r>=3}}function q2(r,{streamIsTTY:e,sniffFlags:i=!0}={}){let o=X2();o!==void 0&&(go=o);let A=i?go:o;if(A===0)return 0;if(i){if($t("color=16m")||$t("color=full")||$t("color=truecolor"))return 3;if($t("color=256"))return 2}if(A!==void 0&&Yg())return A;if("TF_BUILD"in ct&&"AGENT_NAME"in ct)return 1;if(r&&!e&&A===void 0)return 0;let c=A||0;if(ct.TERM==="dumb")return c;if(cl.platform==="win32"){let u=Z2.release().split(".");return Number(u[0])>=10&&Number(u[2])>=10586?Number(u[2])>=14931?3:2:1}if("CI"in ct)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(u=>u in ct)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(u=>u in ct)||ct.CI_NAME==="codeship"?1:c;if("TEAMCITY_VERSION"in ct)return/^(?:9\.0*[1-9]\d*\.|\d{2,}\.)/.test(ct.TEAMCITY_VERSION)?1:0;if(ct.COLORTERM==="truecolor"||ct.TERM==="xterm-kitty"||ct.TERM==="xterm-ghostty"||ct.TERM==="wezterm")return 3;if("TERM_PROGRAM"in ct){let u=Number.parseInt((ct.TERM_PROGRAM_VERSION||"").split(".",1)[0],10);switch(ct.TERM_PROGRAM){case"iTerm.app":return u>=3?3:2;case"Apple_Terminal":return 2}}return/-256(?:color)?$/i.test(ct.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ct.TERM)||"COLORTERM"in ct?1:c}function kg(r,e={}){let i=q2(r,{streamIsTTY:r&&r.isTTY,...e});return z2(i)}var K2={stdout:kg({isTTY:Ug.isatty(1)}),stderr:kg({isTTY:Ug.isatty(2)})},Og=K2;var{stdout:Ng,stderr:Rg}=Og,_n=Symbol("GENERATOR"),Zn=Symbol("STYLER"),Bo=Symbol("IS_EMPTY"),mo=Symbol("LEVEL"),Xn=Object.create(null),Gg=r=>{if(!Number.isSafeInteger(r)||r<0||r>3)throw new Error("The `level` should be an integer from 0 to 3")},$2={enumerable:!0,get(){return this[mo]},set(r){Gg(r),this[mo]=r}},eI=(r,e={})=>{e.level!==void 0&&Gg(e.level);let i=Ng?Ng.level:0;r[mo]=e.level===void 0?i:e.level};var tI=r=>{let e=(...i)=>i.join(" ");return eI(e,r),Object.setPrototypeOf(e,zn.prototype),e};function zn(r){return tI(r)}Object.setPrototypeOf(zn.prototype,Function.prototype);for(let[r,e]of Object.entries(Qr))Xn[r]={get(){let i=hl(this,Lg(e.open,e.close,this[Zn]),this[Bo]);return Object.defineProperty(this,r,{value:i}),i}};Xn.visible={get(){let r=hl(this,this[Zn],!0);return Object.defineProperty(this,"visible",{value:r}),r}};var rI=(r,e)=>{let i=Qr[e];if(r==="rgb"){let A=(u,f,p)=>i.ansi(Qr.rgbToAnsi(u,f,p));return[A,A,(u,f,p)=>i.ansi256(Qr.rgbToAnsi256(u,f,p)),i.ansi16m]}if(r==="hex"){let A=u=>i.ansi(Qr.hexToAnsi(u));return[A,A,u=>i.ansi256(Qr.hexToAnsi256(u)),u=>i.ansi16m(...Qr.hexToRgb(u))]}let o=A=>i.ansi(Qr.ansi256ToAnsi(A));return[o,o,i.ansi256,i.ansi256]},iI=["rgb","hex","ansi256"];for(let r of iI){let e=r[0].toUpperCase()+r.slice(1);for(let[i,o]of[[r,"color"],["bg"+e,"bgColor"],["underline"+e,"underlineColor"]]){let{close:A}=Qr[o],c=rI(r,o);Xn[i]={get(){let u=function(f,p,g){let m=c[this.level](f,p,g);return hl(this,Lg(m,A,this[Zn]),this[Bo])};return Object.defineProperty(this,i,{value:u}),u}}}}var nI=Object.defineProperties(()=>{},{...Xn,level:{enumerable:!0,get(){return this[_n].level},set(r){this[_n].level=r}}}),Lg=(r,e,i)=>{let o,A;return i===void 0?(o=r,A=e):(o=i.openAll+r,A=e+i.closeAll),{open:r,close:e,openAll:o,closeAll:A,parent:i}},hl=(r,e,i)=>{let o=(...A)=>A.length===1?ul(o,""+A[0]):A.length===2?ul(o,`${A[0]??""} ${A[1]??""}`):ul(o,A.join(" "));return Object.setPrototypeOf(o,nI),o[_n]=r[_n]??r,o[Zn]=e,o[Bo]=i,o},ul=(r,e)=>{if(r[_n][mo]<=0||!e)return r[Bo]?"":e;let i=r[Zn];if(i===void 0)return e;let{openAll:o,closeAll:A}=i;if(e.includes("\x1B"))for(;i!==void 0;)e=Sg(e,i.close,i.open),i=i.parent;let c=e.indexOf(`
1139
+ `);return c!==-1&&(e=Dg(e,A,o,c)),o+e+A};Object.defineProperties(zn.prototype,{...Xn,level:$2});var sI=zn(),Wk=zn({level:Rg?Rg.level:0});var Eo=sI;import{readdir as oI,stat as jk}from"node:fs/promises";async function Pg(r){return(await oI(r)).length===0}var Hg="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BxAAVAZgAH8GYwBzBCoAXAcDAJgFBwCABYwAjAVwAHUF5f21BTMAYQhRAFsFygA/BRX//QWMAFwDAwCuBGYAawMDALIEpgCyBQT/3QRzAHAEGAAxBL8AiAQcAF8EswBaBGIAWQQRAFUEP//dBJ8AkQI+ALUDOv+nBFIAogIxAKwGNwBwBDAAggQ1AFIERwB6BCkAQgPYAIID5QAmA8UAPwQpAGgD5AAiBXkAPgS5ACcEKv/YBE4AegLuAAADXwFiAu4ABgTIAFQCZAAAAecAYAT8AH0GWQAnBOUAOQUWAHADPAFOBRQAcgRzAN4GXQBjBDcAgwSfABQD2AAwA1UAcAZdAGMFBP/dA0YARAPYAEcFNQFVBTUBmgRzAMEEKQAABY0AQAH+AI8EcwFoBTUBdwQ1AC8En//7BTUAoAU1AKAFNQCgBDEATgXaAGgF2gBoBdoAaAXaAGgF2gBoBdoAaAiyAAkE0gBMBP8AogT/AKIE/wCiBP8AogRfAEMEXwBDBF8AQwRfAEMFxv/RBmAAfwZjAHMGYwBzBmMAcwZjAHMGYwBzA9gAMQZjACkF5f21BeX9tQXl/bUF5f21BRX//QQqAGADjAAuBBgAMQQYADEEGAAxBBgAMQQYADEEGAAxB0sAPwQcAF8EYgBZBGIAWQRiAFkEYgBZAj7/6AI+AGcCPv+CAj7/wAQSAFYEMAB4BDUAUgQ1AFIENQBSBDUAUgQ1AFID2AAyBDUAFgQpAGgEKQBoBCkAaAQpAGgEKv/YBEcAkgQq/9gF2gBoBBgAMQXaAGgEGAAxBdoAaAQYADEE0gBMBBwAXwTSAEwEHABfBNIATAQcAF8E0gBMBBwAXwXGALUGogBaBcb/0QTSAFoE/wCiBGIAWQT/AKIEYgBZBP8AogRiAFkE/wCiBGIAWQT/AKIEYgBZBXAATAQ//90FcABMBD//3QVwAEwEP//dBXAATAQ//90GJQCcBJ8AkQYl/9wEn//+BF8AQwI+/1wEXwBDAj7/2wRfAEMCPv9kBF8AQwI+/9QEXwBDAj4AtQkDAEMEPgCkBVIARQM6/7kE4wDSBFIAogRSAIAEaABmAjEArARoAGYCMQBjBGgAZgO3AKwEaABmAykArARo/14B0f+GBmAAfwQwAIIGYAB/BDAAggZgAH8EMACCBPgATgZgAH8EMACCBmMAcwQ1AFIGYwBzBDUAUgZjAHMENQBSCY0AgwctAFIFBwCAA9gAggUHAIAD2AA/BQcAgAPYAIIFjACMA+UAJgWMAIwD5QAmBYwAjAPlACYFjACMA+UAJgVwAHUDxQA/BXAAdQUdAD8FcAAkA8UAPwXl/bUEKQBNBeX9tQQpAGgF5f21BCkAVQXl/bUEKQBoBeX9tQQpAGgF5f21BCkAaAhRAFsFeQA+BRX//QQq/9gFFf/9BYwAXAROAHoFjABcBE4AegWMAFwETgB6BBEBPgNq/4cF2gBnBBgAPwiyAAkHSwA/BmMAKQQ1ABYFjACMA+UAJgVwAHUDxQA/Azr/uQSmALIEcwDzBHMBGARzAKoEcwE3BHMA+gRzAQcEcwCkBHMAtARzAdIEcwB8BdoAaAH+AI4GUACPB90AwwYNAEkHAwBkBs0AMQeuAEUCPv9nBdoAaAULAMEE7gC4BlsAQwT/AKIFjABcBiUAnAZjAHMEXwBDBOMA0gWE//MHEABUBmAAfwXDAFwGYwBzB0QAaQQqAFwF+gCGBXAAdQUV//0FGwBeBcoAPwVkACUHrgA/BF8AQwUV//0EQwAxA+8AlAQwAIICPgC0BCkATgRDADEEsQBtA+QAIgQ1AFID7wCUBBwAAAQwAIIE4gBBAj4AtQRSAHoD5AAnBCkAbwPkACIEHP/1BDUAUgUGABAENQAfBBwAAgQ1AFIDxQBCBCkATgTsAFUEuQAnBK8AKwYVACwCPv/ABCkATgQ1AFIEKQBOBhUALAT/AKIGzQAqBO4AuATSAE0FjACMBF8AQwRfAEMFUgBFCAAAEgfRACwGxgAqBREAqAUV//oF1gBwBdoAaATWALAFCwDBBO4AuAYlAF4E/wCiBuD/+gTPADwF+wCEBfsAhAURAKgF6QAKBxAAVAYlAJwGYwBzB0QAaQQqAFwE0gBMBXAAdQUV//oFGwBeBcoAPwYwAHAE8ABwB0AAcAeoAHAGFAAmCJoAsATWALAFPABzCQsAnAUHAEYEGAAxBDUAOwQIAIADwwCGBL4AIgRiAFkFdgAiA4QAPgUYAGIFGABiA/AAlAUtAAoF4AASBHoATwS7AFIFLQDaBEcAegQcAF8DxQA/BCr/2AZ7AEgEuQAnBPMArwRFAEwGLQB0BlgAdAT4ABQGUwCHA+8AhwQbAF4HOABLBAv/8ARiAFkEe/+4A8MAhgQbAE8D5QAmAj4AtQI+/8ADOv+nBx4ADAYxAFsEn/+4A/AAlAQq/9gE8wCKBO4AuAPDAIYIUQBbBXkAPghRAFsFeQA+CFEAWwV5AD4FFf/9BCr/2AOIAC0HEABEBxAARAUE/90BcQA2AXEANgJkADYDJgBPAyYAfwNLADYExgA3BMYAOwMZALoFZwCqCe4AnQFxACQCpgAkAw0AFAMNAFUDmQBsBOL/ZAZ9//kENwDOB+oAqgZZAGwJgwBcBOL/2AaQAFID6f/yCUIAfwlQACYHEABOB64APwRlADsFNQCgBTUAoAU1AKAFNQCgBBIAcQZbAEMHRABpBfoAhgPYADIE3AAMBrIAjwWZADgE9QB0BBUAWgMNABQDDQAhBav/6QWrAoIFqwJ+Bav/6wWrAn4Fq//oBeABbAUkAYIFJAFyBccAOAUkAXoFJAFlBAAAHAVFAEwFPwBMBAAAgANVAHAB/gCNAxsBEAMbAU0DGwFNAj4AtQU1APYCZABKBTUBcAABAAACTwDEAAcAcgAFAAIAHgBFAI0AAACKDgwABAABAAAAJgHOAAMAAQQDAAIADAAAAAMAAQQFAAIAEAAMAAMAAQQGAAIADAAcAAMAAQQHAAIAEAAoAAMAAQQIAAIAEAA4AAMAAQQJAAAA1ABIAAMAAQQJAAEAGAEcAAMAAQQJAAIADgE0AAMAAQQJAAMAOAFCAAMAAQQJAAQAKAF6AAMAAQQJAAUAcAGiAAMAAQQJAAYAJgISAAMAAQQJAAgAEgI4AAMAAQQJAAkAFAJKAAMAAQQJAAoBOAJeAAMAAQQJAAsAUgOWAAMAAQQJAAwAUgOWAAMAAQQJAA0BIgPoAAMAAQQJAA4ANgUKAAMAAQQKAAIADAAAAAMAAQQLAAIAEAVAAAMAAQQMAAIADAAAAAMAAQQOAAIADAVQAAMAAQQQAAIADgVcAAMAAQQTAAIAEgVqAAMAAQQUAAIADAAAAAMAAQQVAAIAEAV8AAMAAQQWAAIADAAAAAMAAQQZAAIADgWMAAMAAQQbAAIAEAWaAAMAAQQdAAIADAAAAAMAAQQfAAIADAAAAAMAAQQkAAIADgWqAAMAAQQtAAIADgW4AAMAAQgKAAIADAAAAAMAAQgWAAIADAAAAAMAAQwKAAIADAAAAAMAAQwMAAIADAAAAE4AbwByAG0AYQBsAG8AYgB5AQ0AZQBqAG4A6QBuAG8AcgBtAGEAbABTAHQAYQBuAGQAYQByAGQDmgOxA70DvwO9A7kDugOsAEMAbwBwAHkAcgBpAGcAaAB0ACAAMgAwADEAMwAgAEoAZQBmAGYAIABEAGEAdgBpAHMAIAAoAGgAdAB0AHAAcwA6AC8ALwBnAGkAdABoAHUAYgAuAGMAbwBtAC8AbABvAHUAZABpAGYAaQBlAHIALwBDAG8AbQBpAGMALQBSAGUAbABpAGUAZgApACAAdwBpAHQAaAAgAFIAZQBzAGUAcgB2AGUAZAAgAEYAbwBuAHQAIABOAGEAbQBlACAAQwBvAG0AaQBjACAAUgBlAGwAaQBlAGYAQwBvAG0AaQBjACAAUgBlAGwAaQBlAGYAUgBlAGcAdQBsAGEAcgAxAC4AMQA7AEwATwBVAEQAOwBDAG8AbQBpAGMAUgBlAGwAaQBlAGYALQBSAGUAZwB1AGwAYQByAEMAbwBtAGkAYwAgAFIAZQBsAGkAZQBmACAAUgBlAGcAdQBsAGEAcgBWAGUAcgBzAGkAbwBuACAAMQAuADEAOwAgAHQAdABmAGEAdQB0AG8AaABpAG4AdAAgACgAdgAxAC4AOAAuADQALgA3AC0ANQBkADUAYgApADsAZwBmAHQAbwBvAGwAcwBbADAALgA5AC4AMwAyAF0AQwBvAG0AaQBjAFIAZQBsAGkAZQBmAC0AUgBlAGcAdQBsAGEAcgBMAG8AdQBkAGkAZgBpAGUAcgBKAGUAZgBmACAARABhAHYAaQBzAEMAbwBtAGkAYwAgAFIAZQBsAGkAZQBmACAAaQBzACAAYQAgAHQAeQBwAGUAZgBhAGMAZQAgAGQAZQBzAGkAZwBuAGUAZAAgAHQAbwAgAGIAZQAgAG0AZQB0AHIAaQBjAGEAbABsAHkAIABlAHEAdQBpAHYAYQBsAGUAbgB0ACAAdABvACAAdABoAGUAIABwAG8AcAB1AGwAYQByACAAQwBvAG0AaQBjACAAUwBhAG4AcwAgAE0AUwAuACAARwBvACAAdABvACAAaAB0AHQAcABzADoALwAvAGcAaQB0AGgAdQBiAC4AYwBvAG0ALwBsAG8AdQBkAGkAZgBpAGUAcgAvAEMAbwBtAGkAYwAtAFIAZQBsAGkAZQBmACAAZgBvAHIAIABtAG8AcgBlACAAaQBuAGYAbwAuAGgAdAB0AHAAcwA6AC8ALwBnAGkAdABoAHUAYgAuAGMAbwBtAC8AbABvAHUAZABpAGYAaQBlAHIALwBDAG8AbQBpAGMALQBSAGUAbABpAGUAZgBUAGgAaQBzACAARgBvAG4AdAAgAFMAbwBmAHQAdwBhAHIAZQAgAGkAcwAgAGwAaQBjAGUAbgBzAGUAZAAgAHUAbgBkAGUAcgAgAHQAaABlACAAUwBJAEwAIABPAHAAZQBuACAARgBvAG4AdAAgAEwAaQBjAGUAbgBzAGUALAAgAFYAZQByAHMAaQBvAG4AIAAxAC4AMQAuACAAVABoAGkAcwAgAGwAaQBjAGUAbgBzAGUAIABpAHMAIABhAHYAYQBpAGwAYQBiAGwAZQAgAHcAaQB0AGgAIABhACAARgBBAFEAIABhAHQAOgAgAGgAdAB0AHAAcwA6AC8ALwBzAGMAcgBpAHAAdABzAC4AcwBpAGwALgBvAHIAZwAvAE8ARgBMAGgAdAB0AHAAcwA6AC8ALwBzAGMAcgBpAHAAdABzAC4AcwBpAGwALgBvAHIAZwAvAE8ARgBMAE4AbwByAG0AYQBhAGwAaQBOAG8AcgBtAOEAbABOAG8AcgBtAGEAbABlAFMAdABhAG4AZABhAGEAcgBkAE4AbwByAG0AYQBsAG4AeQQeBDEESwRHBD0ESwQ5AE4AbwByAG0A4QBsAG4AZQBOAGEAdgBhAGQAbgBvAEEAcgByAHUAbgB0AGEAAgAAAAAAAP+fAK8AAAAAAAAAAAAAAAAAAAAAAAAAAAJPAAABAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgAKQAqACsALAAtAC4ALwAwADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/AEAAQQBCAEMARABFAEYARwBIAEkASgBLAEwATQBOAE8AUABRAFIAUwBUAFUAVgBXAFgAWQBaAFsAXABdAF4AXwBgAGEArACjAIQAhQC9AJYA6ACGAI4AiwCdAKkApAEDAIoBBACDAJMA8gDzAI0BBQCIAMMA3gDxAJ4AqgD1APQA9gCiAK0AyQDHAK4AYgBjAJAAZADLAGUAyADKAM8AzADNAM4A6QBmANMA0ADRAK8AZwDwAJEA1gDUANUAaADrAO0AiQBqAGkAawBtAGwAbgCgAG8AcQBwAHIAcwB1AHQAdgB3AOoAeAB6AHkAewB9AHwAuAChAH8AfgCAAIEA7ADuALoBBgEHAQgBCQEKAQsA/QD+AQwBDQEOAQ8A/wEAARABEQESAQEBEwEUARUBFgEXARgBGQEaARsBHAEdAR4A+AD5AR8BIAEhASIBIwEkASUBJgEnASgBKQEqASsBLAEtAS4A+gDXAS8BMAExATIBMwE0ATUBNgE3ATgBOQE6ATsBPAE9AOIA4wE+AT8BQAFBAUIBQwFEAUUBRgFHAUgBSQFKAUsBTACwALEBTQFOAU8BUAFRAVIBUwFUAVUBVgD7APwA5ADlAVcBWAFZAVoBWwFcAV0BXgFfAWABYQFiAWMBZAFlAWYBZwFoAWkBagFrAWwAuwFtAW4BbwFwAOYA5wFxAKYBcgFzAXQBdQF2AXcBeAF5AXoBewF8ANgA4QDaANsA3ADdAOAA2QDfAX0BfgF/AYABgQGCAYMBhAGFAYYBhwGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4AnwGfAaABoQGiAaMBpAGlAaYBpwGoAakBqgGrAawBrQGuAa8BsACXAbEBsgGzAJsBtAG1AbYBtwG4AbkBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgHHAcgByQHKAcsBzAHNAc4BzwHQAdEB0gHTAdQB1QHWAdcB2AHZAdoB2wHcAd0B3gHfAeAB4QHiAeMB5AHlAeYB5wHoAekB6gHrAewB7QHuAe8B8AHxAfIB8wH0AfUB9gH3AfgB+QH6AfsB/AH9Af4B/wIAAgECAgIDAgQCBQIGAgcCCAIJAgoCCwIMAg0CDgIPAhACEQISAhMCFAIVAhYCFwIYAhkCGgIbAhwCHQIeAh8CIAIhAiICIwIkAiUCJgInALIAswIoAikAtgC3AMQAtAC1AMUAggDCAIcAqwDGAioCKwC+AL8CLAItALwCLgD3Ai8CMAIxAjICMwI0AjUAjAI2AjcCOAI5AjoCOwCYAKgAmgCZAO8ApQCSAJwApwCPAJQAlQI8Aj0CPgI/AkACQQJCAkMCRAC5AkUCRgJHAMAAwQJIAkkCSgJLAkwCTQJOAk8CUAJRBmdseXBoMgtoeXBoZW5taW51cwlvdmVyc2NvcmUDbXUxB0FtYWNyb24HYW1hY3JvbgZBYnJldmUGYWJyZXZlB0FvZ29uZWsHYW9nb25lawtDY2lyY3VtZmxleAtjY2lyY3VtZmxleARDZG90BGNkb3QGRGNhcm9uBmRjYXJvbgZEc2xhc2gHRW1hY3JvbgdlbWFjcm9uBkVicmV2ZQZlYnJldmUERWRvdARlZG90B0VvZ29uZWsHZW9nb25lawZFY2Fyb24GZWNhcm9uC0djaXJjdW1mbGV4C2djaXJjdW1mbGV4BEdkb3QEZ2RvdAhHY2VkaWxsYQhnY2VkaWxsYQtIY2lyY3VtZmxleAtoY2lyY3VtZmxleARIYmFyBGhiYXIGSXRpbGRlBml0aWxkZQdJbWFjcm9uB2ltYWNyb24GSWJyZXZlBmlicmV2ZQdJb2dvbmVrB2lvZ29uZWsCSUoCaWoLSmNpcmN1bWZsZXgLamNpcmN1bWZsZXgIS2NlZGlsbGEIa2NlZGlsbGEMa2dyZWVubGFuZGljBkxhY3V0ZQZsYWN1dGUITGNlZGlsbGEIbGNlZGlsbGEGTGNhcm9uBmxjYXJvbgRMZG90BGxkb3QGTmFjdXRlBm5hY3V0ZQhOY2VkaWxsYQhuY2VkaWxsYQZOY2Fyb24GbmNhcm9uC25hcG9zdHJvcGhlA0VuZwNlbmcHT21hY3JvbgdvbWFjcm9uBk9icmV2ZQZvYnJldmUJT2RibGFjdXRlCW9kYmxhY3V0ZQZSYWN1dGUGcmFjdXRlCFJjZWRpbGxhCHJjZWRpbGxhBlJjYXJvbgZyY2Fyb24GU2FjdXRlBnNhY3V0ZQtTY2lyY3VtZmxleAtzY2lyY3VtZmxleAhUY2VkaWxsYQh0Y2VkaWxsYQZUY2Fyb24GdGNhcm9uBFRiYXIEdGJhcgZVdGlsZGUGdXRpbGRlB1VtYWNyb24HdW1hY3JvbgZVYnJldmUGdWJyZXZlBVVyaW5nBXVyaW5nCVVkYmxhY3V0ZQl1ZGJsYWN1dGUHVW9nb25lawd1b2dvbmVrC1djaXJjdW1mbGV4C3djaXJjdW1mbGV4C1ljaXJjdW1mbGV4C3ljaXJjdW1mbGV4BlphY3V0ZQZ6YWN1dGUEWmRvdAR6ZG90BWxvbmdzCkFyaW5nYWN1dGUKYXJpbmdhY3V0ZQdBRWFjdXRlB2FlYWN1dGULT3NsYXNoYWN1dGULb3NsYXNoYWN1dGUMU2NvbW1hYWNjZW50DHNjb21tYWFjY2VudAxUY29tbWFhY2NlbnQMdGNvbW1hYWNjZW50B3VuaTAyMzcFdG9ub3MNZGllcmVzaXN0b25vcwpBbHBoYXRvbm9zCWFub3RlbGVpYQxFcHNpbG9udG9ub3MIRXRhdG9ub3MJSW90YXRvbm9zDE9taWNyb250b25vcwxVcHNpbG9udG9ub3MKT21lZ2F0b25vcxFpb3RhZGllcmVzaXN0b25vcwVBbHBoYQRCZXRhBUdhbW1hB3VuaTAzOTQHRXBzaWxvbgRaZXRhA0V0YQVUaGV0YQRJb3RhBUthcHBhBkxhbWJkYQJNdQJOdQJYaQdPbWljcm9uAlBpA1JobwVTaWdtYQNUYXUHVXBzaWxvbgNQaGkDQ2hpA1BzaQxJb3RhZGllcmVzaXMPVXBzaWxvbmRpZXJlc2lzCmFscGhhdG9ub3MMZXBzaWxvbnRvbm9zCGV0YXRvbm9zCWlvdGF0b25vcxR1cHNpbG9uZGllcmVzaXN0b25vcwVhbHBoYQRiZXRhBWdhbW1hBWRlbHRhB2Vwc2lsb24EemV0YQNldGEFdGhldGEEaW90YQVrYXBwYQZsYW1iZGECbnUCeGkHb21pY3JvbgNyaG8Gc2lnbWExBXNpZ21hA3RhdQd1cHNpbG9uA3BoaQNjaGkDcHNpBW9tZWdhDGlvdGFkaWVyZXNpcw91cHNpbG9uZGllcmVzaXMMb21pY3JvbnRvbm9zDHVwc2lsb250b25vcwpvbWVnYXRvbm9zCWFmaWkxMDAyMwlhZmlpMTAwNTEJYWZpaTEwMDUyCWFmaWkxMDA1MwlhZmlpMTAwNTQJYWZpaTEwMDU1CWFmaWkxMDA1NglhZmlpMTAwNTcJYWZpaTEwMDU4CWFmaWkxMDA1OQlhZmlpMTAwNjAJYWZpaTEwMDYxCWFmaWkxMDA2MglhZmlpMTAxNDUJYWZpaTEwMDE3CWFmaWkxMDAxOAlhZmlpMTAwMTkJYWZpaTEwMDIwCWFmaWkxMDAyMQlhZmlpMTAwMjIJYWZpaTEwMDI0CWFmaWkxMDAyNQlhZmlpMTAwMjYJYWZpaTEwMDI3CWFmaWkxMDAyOAlhZmlpMTAwMjkJYWZpaTEwMDMwCWFmaWkxMDAzMQlhZmlpMTAwMzIJYWZpaTEwMDMzCWFmaWkxMDAzNAlhZmlpMTAwMzUJYWZpaTEwMDM2CWFmaWkxMDAzNwlhZmlpMTAwMzgJYWZpaTEwMDM5CWFmaWkxMDA0MAlhZmlpMTAwNDEJYWZpaTEwMDQyCWFmaWkxMDA0MwlhZmlpMTAwNDQJYWZpaTEwMDQ1CWFmaWkxMDA0NglhZmlpMTAwNDcJYWZpaTEwMDQ4CWFmaWkxMDA0OQlhZmlpMTAwNjUJYWZpaTEwMDY2CWFmaWkxMDA2NwlhZmlpMTAwNjgJYWZpaTEwMDY5CWFmaWkxMDA3MAlhZmlpMTAwNzIJYWZpaTEwMDczCWFmaWkxMDA3NAlhZmlpMTAwNzUJYWZpaTEwMDc2CWFmaWkxMDA3NwlhZmlpMTAwNzgJYWZpaTEwMDc5CWFmaWkxMDA4MAlhZmlpMTAwODEJYWZpaTEwMDgyCWFmaWkxMDA4MwlhZmlpMTAwODQJYWZpaTEwMDg1CWFmaWkxMDA4NglhZmlpMTAwODcJYWZpaTEwMDg4CWFmaWkxMDA4OQlhZmlpMTAwOTAJYWZpaTEwMDkxCWFmaWkxMDA5MglhZmlpMTAwOTMJYWZpaTEwMDk0CWFmaWkxMDA5NQlhZmlpMTAwOTYJYWZpaTEwMDk3CWFmaWkxMDA3MQlhZmlpMTAwOTkJYWZpaTEwMTAwCWFmaWkxMDEwMQlhZmlpMTAxMDIJYWZpaTEwMTAzCWFmaWkxMDEwNAlhZmlpMTAxMDUJYWZpaTEwMTA2CWFmaWkxMDEwNwlhZmlpMTAxMDgJYWZpaTEwMTA5CWFmaWkxMDExMAlhZmlpMTAxOTMJYWZpaTEwMDUwCWFmaWkxMDA5OAZXZ3JhdmUGd2dyYXZlBldhY3V0ZQZ3YWN1dGUJV2RpZXJlc2lzCXdkaWVyZXNpcwZZZ3JhdmUGeWdyYXZlCWFmaWkwMDIwOA11bmRlcnNjb3JlZGJsBm1pbnV0ZQZzZWNvbmQJZXhjbGFtZGJsCXJhZGljYWxleAluc3VwZXJpb3IJYWZpaTA4OTQxBnBlc2V0YQRFdXJvCWFmaWk2MTI0OAlhZmlpNjEyODkJYWZpaTYxMzUyB3VuaTIxMjADT2htCWVzdGltYXRlZAlvbmVlaWdodGgMdGhyZWVlaWdodGhzC2ZpdmVlaWdodGhzDHNldmVuZWlnaHRocwd1bmkyNTAwB3VuaTI1MDIHdW5pMjUwQwd1bmkyNTEwB3VuaTI1MTQHdW5pMjUxOAZIMjIwNzMGSDE4NTQzBkgxODU1MQZIMTg1MzMKb3BlbmJ1bGxldAd1bmkyNjZBBmdseXBoMAlzZnRoeXBoZW4GbWlkZG90BXVGMDAzBXVGMDA0BXVGMDA1DGRvdHRlZGlhY3V0ZQpOYW1lTWUuNTkxCk5hbWVNZS4zMzkKTmFtZU1lLjU1OQBLuADIUlixAQGOWbABuQgACABjcLEAB0K1AD4uHgQAKrEAB0JACkMEMwgjCBUHBAoqsQAHQkAKRwI7BisGHAUECiqxAAtCvREADQAJAAWAAAQACyqxAA9CvQBAAEAAQABAAAQACyq5AAMAAESxJAGIUViwQIhYuQADAGREsSgBiFFYuAgAiFi5AAMAAERZG7EnAYhRWLoIgAABBECIY1RYuQADAABEWVlZWVlACkUCNQYlBhcFBA4quAH/hbAEjbECAESzBWQGAEREAA==";var Ll=bn(Nm(),1),Uo=bn(C0(),1),S0=bn(Q0(),1);import{Buffer as T0}from"node:buffer";var pT=Eo.bold.red,dT=Eo.bold.yellow,gT=Eo.bold.green,Fo="Mojang Mappings",Pl="Generate Unique Mod Icon",To="Kotlin Programming Language",So="Data Generation",Do="Split client and common sources",Mo="Gradle Kotlin DSL",Io=new Map([["kotlin",To],["datagen",So],["splitSources",Do],["mojangMappings",Fo],["gradleKotlin",Mo]]);function D0(){return new Gi().name("init").description("Generate a new fabric project").option("-y, --defaultOptions","Use defaults for options that are not specified").option("--allow-non-empty-dir","Allow generating into a directory that already contains files. Existing files with the same path will be overwritten").addOption(new Li("-n, --name <name>","The name of the mod")).addOption(new Li("-m, --modid <modid>","The modid of the mod")).addOption(new Li("-p, --packageName <packageName>","The package name of the mod")).addOption(new Li("-v, --version <version>","The minecraft version")).addOption(new Li("-o, --option <advancedOption>","Specify an advanced option, one of: "+Array.from(Io.keys()).join(", ")).argParser((r,e=[])=>[...e,r]).hideHelp()).argument("[dir]","The output directory").action(async(r,e)=>{await ET(e,r)})}Nu(r=>new tn({parseTagValue:!1,isArray:i=>i==="version"}).parse(r).metadata.versioning.versions.version);var Hl=Uo.registerFont("",Pi),mT=Uint8Array.from(T0.from(Hg,"base64"));Hl.font=S0.parse(mT.buffer);Hl.loaded=!0;function BT(r,e){return{config:e,writer:{write:async(i,o,A)=>{await bT(r,i,o,A)}},canvas:{create(i,o){let A=Uo.make(i,o);return{getContext:c=>A.getContext(c),getPng:()=>{let c=new Ll.PNG({width:A.width,height:A.height});return c.data=T0.from(A.data),Uint8Array.from(Ll.PNG.sync.write(c)).buffer},measureText(c,u){let f=Hl.font,p=c._font.size,g=0,m=0,E=0,b=f.stringToGlyphs(u);for(let y of b){let Q=y.getMetrics();g+=y.advanceWidth,m=Math.max(m,Q.yMax),E=Math.min(E,Q.yMin)}return{width:g/f.unitsPerEm*p,ascent:Math.abs(m/f.unitsPerEm*p),descent:Math.abs(E/f.unitsPerEm*p)}}}}}}}async function ET(r,e){let i=await wT(e);r.allowNonEmptyDir||await Pg(i)||cn("The target directory must be empty (use --allow-non-empty-dir to generate into it anyway)");let o=await yT(Jr.basename(i),r);console.log(dT("Generating mod template...")),await Fh(BT(i,o)),console.log(gT("Done!"))}async function wT(r){if(r==null)return Jr.resolve(uT());let e=Jr.resolve(r);return await F0(e,{recursive:!0}),e}async function yT(r,e){let i=Sa();CT(e);let o=e.name??(e.defaultOptions?r:await ts({type:"text",message:"Choose a name",initial:r,validate:E=>E.length>=2||"The name must have at least 2 characters"})),A=e.modid??(e.defaultOptions?Fa(o):await ts({type:"text",message:"Choose a unique modid",initial:Fa(o),validate:E=>{if(E.length<2||E.length>64)return"The modid must have between 2 and 64 characters";let b=Ia(E);return b==null?!0:b.join(", ")}})),c=e.packageName??(e.defaultOptions?vn(A):await ts({type:"text",message:"Choose a package name",initial:eh((hT.FABRIC_MOD_GENERATOR_GLOBAL_PACKAGE_PREFIX??"")+A),format:E=>vn(E),validate:E=>{let b=vn(E),y=Js(b);return y.length==0?!0:y.join(", ")}})),u=await i,f;e.version!=null?(f=e.version,u.map(E=>E.version).includes(f)||cn(`The minecraft version ${f} does not exist.`)):e.defaultOptions?f=u.find(E=>E.stable).version:f=await ts({type:"select",message:"Select the minecraft version",choices:u.map(E=>({title:E.version,value:E.version})),initial:Math.max(0,u.findIndex(E=>E.stable))});let p=e.option?.map(E=>(Io.has(E)||cn(`Unknown option ${E} must be one of: ${Array.from(Io.keys()).join(", ")}`),Io.get(E))),g=v0(f).filter(E=>E.selected).map(E=>E.value),m=e.defaultOptions?[...g,...p??[]]:p??await ts({type:"multiselect",message:"Advanced options",choices:v0(f)});return{modid:A,minecraftVersion:f,projectName:o,packageName:c,mojmap:Ei(f)||m.includes(Fo),useKotlin:m.includes(To),dataGeneration:m.includes(So),splitSources:m.includes(Do),gradleKotlin:m.includes(Mo),uniqueModIcon:m.includes(Pl)}}function CT(r){if(r.modid!=null){let e=Ia(r.modid);e!=null&&cn(e.join(", "))}if(r.packageName!=null){let e=Js(r.packageName);e.length>0&&cn(e.join(", "))}}async function ts(r){return(await(0,I0.default)({...r,name:"value"},{onCancel:()=>cn("Project generation cancelled")})).value}function v0(r){let e=[];return e.push({title:Pl,value:Pl,selected:!0}),e.push({title:To,value:To}),Ei(r)||e.push({title:Fo,value:Fo,selected:!0}),Ps(r)&&e.push({title:So,value:So}),Hs(r)&&e.push({title:Do,value:Do,selected:!0}),e.push({title:Mo,value:Mo}),e}async function bT(r,e,i,o){let A=Jr.join(r,e);await F0(Jr.dirname(A),{recursive:!0}),await cT(A,typeof i=="string"?i:new Uint8Array(i),{mode:o?.executable?484:void 0})}function cn(r){console.error(pT(r)),fT(1)}var xT="1.18-SNAPSHOT",QT={getGameVersions:Ms,getLoaderVersions:Us,getYarnVersions:Uu,getApiVersionForMinecraft:ks,minecraftIsUnobfuscated:Ei};function M0(){return new Gi().name("versions").description("Show the recommended Fabric versions for a Minecraft version").option("--json","Print the recommended versions as JSON").argument("[minecraftVersion]","The Minecraft version").action(async(r,e)=>{let i=await vT(r);console.log(e.json?FT(i):IT(i))})}async function vT(r,e=QT){let[i,o,A]=await Promise.all([e.getGameVersions(),e.getLoaderVersions(),e.getYarnVersions()]),c=i.find(E=>E.stable);if(!c)throw new Error("Could not find a stable Minecraft version.");let u=i[0]?.stable?void 0:i[0],f=r??c.version;TT(f,i,u?.version);let p=o.find(E=>E.stable);if(!p)throw new Error("Could not find a stable Fabric Loader version.");let g=e.minecraftIsUnobfuscated(f),m={minecraft_version:f,loader_version:p.version,loom_version:xT,fabric_api_version:await e.getApiVersionForMinecraft(f)};return g||(m.yarn_mappings=A.find(E=>E.gameVersion===f)?.version??"unknown"),m}function IT(r){let e=[`minecraft_version=${r.minecraft_version}`];return r.yarn_mappings&&e.push(`yarn_mappings=${r.yarn_mappings}`),e.push(`loader_version=${r.loader_version}`),e.push(`loom_version=${r.loom_version}`),e.push(`fabric_api_version=${r.fabric_api_version}`),e.join(`
1140
+ `)}function FT(r){return JSON.stringify(r,null,2)}function TT(r,e,i){let o=e.find(A=>A.version===r);if(!o)throw new Error(`Unknown Minecraft version: ${r}`);if(!o.stable&&o.version!==i)throw new Error(`Minecraft version ${r} is not supported. Only stable versions and the latest snapshot are supported.`)}var ST="0.1.491",ko=new Gi().name("fabric").version(ST).description("A set of command line tools to aid Fabric mod development").action(()=>{ko.outputHelp()});ko.addCommand(D0());ko.addCommand(M0());await ko.parseAsync();